对话系统
对话
- 任务型对话(限定域对话)
- 问答型
- 基于知识图谱的对话
- 检索式多轮对话【27,28】
- 闲聊型
- 基于检索的方法
- 基于生成的方法【3,4,5】
生成式对话
对话生成问题是一个条件非常非常多的条件生成问题。对话生成控制的paper【23,24,25,26】
难点:评估 & 控制
检索式对话
主要用户解决闲聊型对话或者FAQ问答型对话问题。
“粗排”+“精排”
粗排: 轻量级。BM25,AngQ[6]
精排:比如Multi-view[7]、DAM[8]以及DGU[9]。最新的DGU刷爆了去年的DAM
检索式对话与生成式对话系统可以为每个query找到合适的回复,但是这些模型是在纯文本语料上训练的,无力建模对话过程中的意图或者发出一个结构化的动作
任务完成型对话
每一轮的决策都很重要。
- NLU/SLU:将用户动作从用户的自然语言文本甚至语音信号中解析出来。
难点:槽位是不可枚举的,槽位有冲突,槽位之间有嵌套等 [13]
当对话系统cover的领域很多时,可能意图会多达成百上千,这时候意图识别模型的决策空间变得过大,且各个意图共享同一个模型,每增加一个新意图就要重训模型,导致其他意图也受影响了。不仅导致意图识别模型难训,而且会导致系统变得难以维护。因此一种更好的办法是在意图识别之前再加一级领域分类(domain classification)。
小样本学习的工作[38,39]
paper 15
如今的意图识别与槽位解析的SOTA方法应该就是百度对话团队的DGU[9]了,基于ERNIE2.0+处理多轮对话的精巧tricks刷爆了绝大多数对话任务,包括前面提到的对话匹配问题和后面将要讲的DST和DP问题。
-
DST(对话状态追踪)
负责记录整个对话全过程积累下来的重要信息。 -
DP(对画策略模块)
-
NLG

浙公网安备 33010602011771号