
任务机器人实现原理

首先,通过自然语言理解(NLU)分析用户的输入,进行分词,实体识别,语义分析,意图分类,指代消解,省略恢复等操作;然后,进入对话管理(DM)环节,维护对话的历史状态和当前状态,根据语义理解反馈的信息,决定下一步的对话走向。根据DM产生的信息,通过自然语言生成(NLG)自动生成回复语句,通常的做法是设定回复的模板,替换模板中的变量。

输入:用户语句
输出:机器人应答
处理过程:
- 结合上下文进行意图识别
- 抽取用户语句中的实体slot
- 根据状态机流程返回应答

一个基于状态机的对话管理系统,并采用xml做为流程描述语言。

通常有condition、choice、collect、action四个对话组件

利用状态机,可以实现多轮会话中的上下文状态记忆,还可以实现多任务并行处理而互不影响,比如在订机票的时候,问一句“查天气”,2个任务可以自由切换。


意图识别检索方案

意图识别-分类方案
参考谷歌基于Attention的Transformer模型,摒弃了固有的定式,并没有用任何CNN或者RNN的结构,训练效率和泛化能力很大提升。
智能订票业务场景
任务型对话机器人是目前用的较多且较为成熟的领域,通过语音方式与机器人实现对话交互,完成差旅过程中的提单、审批等多种场景应用。
目标明确:对话的过程,就是为了获取完成特定任务所需要的信息,即信息采集和获取的过程;
多轮交互:通过多轮对话,获取多个参数信息,符合实际情况;
其主要业务流程如下:
(1)参数信息获取:始发地、目的地、出发时间、车次;实现用户在差旅申请的提单语义分析,获取关键提单要素后同步触发差旅管理系统的提单接口
(2)查询结果展示和订单确认:执行订单;触发APP对应的消息通知应用,通过语音方式进行审批动作

意图:订机票
出发地:北京
目的地:上海
时间:明天下午(2017/01/2013:00-18:00)
数量:1



(未完待续),以上是对任务型机器人原理和典型应用的一个实现总结,更多详细资料和商业应用可具体咨询容联AI文本和语音交互机器人团队:
