A Survey on Dialogue Systems:Recent Advances and New Frontiers
摘要
从两个方面介绍对话系统:传统的有监督模型和现在的非监督模型(或者说是源于任务或者非源于任务的学习)由于深度学习的加入,对话系统的研究进入了一个新的阶段。
Introduction
人机交互成为现实,数据驱动、开放领域的会话系统成为热点。工业界的分类为面向任务的系统和非面向任务的系统(聊天机器人)。
主要的问题:手工计算的规则集,效率太低。
解决方案:深度学习模型的高维度分布式学习解决这些问题。
基于任务的会话系统:
不基于任务的会话系统:(应用更加广泛)
- 序列到序列的模型;(生成正确的回答)
- 基于搜索的模型;(在语料库中搜索正确的回复)
TASK-ORIENTED DIALOGUE SYSTEMS
Pipeline Methods
流水线模型分成四个阶段:语言的理解、会话状态追踪、会话策略的学习、自然语言的生成;
语言的理解过程:
两种方法,基于句子的分析和基于单词的分析。
- 句子:
- 单词:
- 插槽填充,每个单词附加一个语义标签
- 常使用深度学习的模DBSN模型,然后实现监督结果和CRF基准线进行比较。
会话状态追踪:
通常的形式为slot filling和semantic frame;(插槽填充或者语义框架)
插槽填充模式:
以每个槽上的概率分布函数作为出现概率(手工规则、条件随机场、最大熵模型和web风格排名)。深度学习的方法使得任意区间上的概率获取成为可能。
Natural Language Generation
将一个抽象的对话动作转化为自然语言的表面话语;
传统NLG方法;
基于LSTM的神经网络算法
End-to-End Methods
解决传统模型的缺点:不能及时根据用户反馈进行更正语料库,模型不具有通用性(规则集的手工性太强)
NON-TASK-ORIENTED DIALOGUE SYSTEMS
典型:聊天机器人(检索、生成)
实现方式:一般为基于短语(to translation)的翻译方式。
序列-序列转换:
RNN将X序列转化成上下文向量,
(46条消息) RNN详解(Recurrent Neural Network)_bestrivern的博客-CSDN博客_rnn详解
softmax函数
如果有两个函数a和b,并且a>b。如果取max值那么直接选取a没有第二种可能,这样会造成分值小的一方饥饿。希望值大的一方经常取到但是分值较小的那一项也可以偶尔取到。
同样a和b,并且a>b。如果按照softmax值计算a和b的概率,由于a的softmax值>b的softmax值,则a会经常被取到而b也会偶尔被取到,概率跟他们本身的大小有关。
Response Diversity
背景:对于训练集中的高频词汇,使用逆文档频率进行测试,获得更好的结果。
主要方向:降低高频率无用句子的出现频率、结合情景给出同一问题的不同答案。
可能的入手点:
- 某个领域的对话框状态跟踪RNN对话模型进行验证,找寻创新点。(48)
- NBT神经信念跟踪器的检测;(49)
- 常见的端到端模型84 4 (结合对话历史的学习响应)映射关系的创新点;
- 传统模型的通用性研究?
- 项目:聊天机器人的相关
- 聊天机器人翻译的基本形式(除了基本的四阶段模式,基于检测的会简单一点?)
- RNN语言模型激活函数中的改良?
- 验证:分层rnn通常优于非分层rnn。
- 全局特性重新排序(30 67 62)
- 变分自动编码器(VAE)选择过程中随机函数的选择。
- 收件人信息、情感回复、根据已生成的话分割训练形成下一次对话的回答;(8 109 51 31)
- 最喜欢的多模态(75 CNN和RNN的同时嵌套,综合分析情感问题?)
- 混合模型(基于检索+基于nn)(66 52 60)
- 主要研究方向:热启动、利用web获取语料、隐私保护方面(50)
总结
- 项目:简单:基于检索的聊天机器人。
- 其他:综合检索机制和nn训练的机器人;
- 最喜欢的多模态(75 CNN和RNN的同时嵌套,综合分析情感问题?),然后结合基于检索的机器人
- 创新点:
- 检索语料库来源;
- 程序的热启动方式;
- 避免敏感问题的策略?
- 全局特性重排序的策略?
- ……(8 109 51 31)
(30 67 62)(66 52 60)(50)