论文部分内容阅读
任务型多轮对话系统构建方法主要有基于管道(pipeline)方法的和基于端到端(end2end)方法的。传统的基于pipeline方法的模块数量过多,模块之间存在误差传播,难以全局优化。基于end2end的方法则是将模块之间的信息表征为特征向量,解决了误差传播的问题,但是由于缺少对话管理模块的独立控制,导致模型缺少鲁棒性。针对上述两种对话系统存在的问题,本论文提出了一种新的基于pipeline方法的任务型多轮对话系统。通过联合训练部分模块以减少模块数量,减少误差累积与传播。进一步的,本论文改进对话状态追踪器,有效利用预定义的本体知识,增强了命名实体识别能力。并提出了一种基于深度学习方法的对话决策与对话生成end2end模型,提升对话决策能力。具体包含如下三点工作:(1)提出了一种基于预定义本体知识库的命名实体识别增强的对话状态追踪方法。该方法通过联合训练两个模块,减少了模块之间的误差传播。通过命名实体识别指针充分利用预定义本体知识库的命名实体知识,提升对话状态追踪器的命名实体识别能力与语义理解能力。并通过参数共享方法联合训练多个相似领域的对话状态推理指针,提升对话状态推理能力。本论文在任务型多轮对话系统的公开数据集MultiWOZ 2.1上进行实验,结果显示,本论文提出的方法相比现有模型在对话状态追踪能力上提升了 1.2%。(2)提出了一种基于深度学习方法的对话决策与对话生成的end2end方法。该方法将对话决策与对话生成模块构建为一个end2end模块,减少了模块之间的误差传播。通过表示学习与注意力机制,替代传统构建MYSQL查询语句来查询数据库信息,减少了标准化流程,提高了模型的鲁棒性。本论文在MultiWOZ 2.1的数据集上进行实验,实验结果显示在一定阈值情况下,本论文的数据库查询准确率在98.4%左右。并且实验结果显示对话决策能力显著提升,对话流畅度有所提升,在测试集上,基于Greddy搜索策略的实验实体匹配率达到87.6%,提升了 10.1%,槽提及成功率提升了 7.9%,而Beam策略下,实体匹配率提升了 6.9%,槽提及成功率提升了5.3%。(3)基于上述两种任务型多轮对话系统模块的研究,本论文基于Flask的Web框架搭建了多领域的任务型多轮对话系统的演示平台,用户可以通过平台的智能客服进行饭店查询、旅馆预定、火车票预定等完成多个领域的不同任务。