主要模块
任务型机器人核心模块主要包括三个模块:
- 自然语言理解模块(NLU)
- 对话管理模块
- 自然语言生成模块(NLG)

自然语言理解模块
该模块一般包含以下三个模块:
- 领域识别:即识别该语句是不是属于这个任务场景,一般有多个机器人集成时,如闲聊机器人,问答机器人等,领域识别应当在进入任务型机器人之前做判断与分发
- 意图识别:即识别用户意图,细分该任务型场景下的子场景、
- 语义槽填充:用于对话管理模块的输入
举例
假设Text=“人民币对美元的汇率是多少”;经过自然语言理解模块会解析为 act ( slot1 = value1, slot2 = value2 ……) 的形式,即意图,槽位,槽位信息三元组形式,即 Text会解析为“查询(槽位1=人民币,槽位2=美元)”这样的形式。
方法
基于规则理解方法
【优点】
- 不需要大量训练数据
【缺点】
- 容易出错
- 调整规则费时费力,难以维护
统计方法(对齐)
基于词对齐数据的自然语言理解通常被看做一个序列标注问题。主要有以下两类方法:
- 基于生成式模型
- 随机有限状态机(FST)
- 统计机器翻译(SMT)
- 动态贝叶斯网络(DBN)
- 基于判别式模型

本文介绍了任务型多轮对话系统的核心模块,包括自然语言理解(NLU)、对话管理和自然语言生成(NLG)。NLU涉及领域识别、意图识别和语义槽填充,常用方法有基于规则、统计和深度学习。对话管理模块由状态追踪和对话策略组成,负责决定最优动作以辅助用户完成任务。NLG模块则将系统行为转化为自然语言反馈给用户。

1万+

被折叠的 条评论
为什么被折叠?



