任务型对话(Task)
主要指机器人为满足用户某一需求而产生的多轮对话,机器人通过理解、澄清等方式确定用户意图,继而通过答复、调用API等方式完成该任务。
机器人需要理解上下文信息并作出下一步动作。
任务型对话通常也称为多轮对话系统,目前工业界有两种实现方式:
- 基于规则的实现方式
- 基于End-to-End的实现方式
试图训练一个从用户端自然语言输入到机器端自然语言输出的整体映射关系,从而提高系统的灵活性与可拓展性,但该模型对数据的质量和数量要求非常高,并且存在不可解释性。因此,目前工业界大多采用基于规则的实现方式。
下面就看一下基于规则实现方式的任务型对话系统叭~
任务型对话系统结构图
(1)自然语言理解模块(Language Understanding)
-
语音识别(ASR)
将语音信号转换为文本信息 -
自然语言理解(NLU)
对文本信息进行识别解析,装换成计算机可理解的结构化语义表示
(2)对话管理模块(Dialog Management)
-
对话状态跟踪(DST)
根据对话历史和NLU模块输出的语义表示,维护并更新当前的对话状态 -
对话策略(Policy)
根据当前的对话状态执行下一步系统动作
(3)自然语言生成模块(Natural Language Generation)
-
自然语言生成(NLG)
将对话策略输出的语义表示转换成自然语言文本 -
语音合成(TTS)
将文本信息转换为语音并输出给用户
网友评论