您的位置:首页 > 其它

论文“Teaching Machines to Converse”阅读笔记

2017-11-28 16:48 495 查看

李纪为博士论文阅读笔记

这是李纪为大神的博士毕业论文,趁热赶紧读一读,为自己科研道路指明方向。论文的下载地址是他的github

1.1 背景知识介绍

对话系统的分类及方法:

Chit-Chat-oriented Dialogue Systems: 闲聊型对话机器人,产生有意义且丰富的响应。

Rule-based system:对话经过预定义的规则(关键词、if-else、机器学习方法等)处理,然后执行相应的操作,产生回复。(ELIZA系统,如果输入语句中没有发现预定义规则,则生成generic的响应)。缺点是规则的定义,系统越复杂规则也越多,而且其无法理解人类语言,也无法生成有意义的自然语言对话。处在比较浅层的阶段;

IR-based Systems:信息检索或者最近邻方法,要求生成的响应与对话存在语义相关性(VSM、TF-IDF、page-Rank、推荐等排序方法)。有点是比生成模型简单,直接从训练集中选择答案,且可以添加自定义规则干预排序函数较为灵活;缺点是无法应对自然语言的多变性、语境解构、连贯性等,对语义的细微差别也无法识别;

Generation-based Systems:将对话视为input-output mapping问题,提出了MT-based方法(SMT统计机器翻译、IBM-model、phrase-based MT等),这种方法复杂且无法很好的解决输入输出的对应关系(尤其是当句子较复杂的时候,只适合单词级别)。但是最近的NN、seq-to-seq等方法很好地解决了这些问题,可以生成更加丰富、有意义、特别的对话响应。但是还存在许多问题,比如沉闷的回应、agent没有一个固定的风格、多轮对话等等

Frame-based Dialogue Systems:定义一个对话的框架,及其中所涉及的重要元素。优点是目标明确框架对对话指导意义明显,适用于飞机票、餐馆等预定领域。缺点是框架设计需要人工成本,且无法迁移到别的领域,并未涉及到人类语言的理解层面。

Finite-State Machine Systems有限状态机:(用户使用预定义的模板提问,系统之响应能力范围之内的问题),这种方法的缺点是完全依赖于对框架slot的填充,而无法决定对话的进程和状态(用户接受建议、拒绝等)

State-based Systems:主要包含系统状态(上下文信息、用户意图、对话进程等)和系统行动两(基于state采取action)个部分。MDP、POMDP等模型。

Question-Answering (QA) Based Dialogue Systems:factoid QA-based,个人助手,需要回答各种各样的问题并且进行交互式对话。目前的研究点主要包括,bot如何通过对话进行自学习、对于out-of-vocab的词汇应该学会问,即学会与人交流、如何通过在线反馈学习(犯错时调整、正确时加强)

1.2 本文解决问题

本文主要关注于chit-chat和QA-based dialog system。

1.2.1 开放域对话生成 chit-chat

首先探讨如何构建一个能够与人类进行有趣,有意义,连贯,一致和长期对话的引人入胜的闲聊式对话系统。要求其拥有以下特性:

避免dull沉闷的回应,产生语义更加丰富的响应

解决一致性问题,避免前后相应不一致

可以进行长期多轮对话

使用对抗学习生成人类无法区分的对话响应

为了实现上述的功能和特点,主要会引入下面几种技术和算法来解决相应的问题。

互信息-避免无聊的相应

目前神经网络倾向于产生类似于“I don’t know”这种无聊的响应(dull response/generic response),不利于对话进行。因为对于模型来讲,“I don’t know”这种答案往往都是正确的,但是我们可以反过来思考这个问题,也就是将”I don’t know”作为输入进行训练。因此可以使用Maximum Mutual Information (MMI)取代MLE作为训练的优化指标,事实证明这种方法可以大幅度提升模型响应的丰富度,减少dull response产生的频率。这部分方法将会在第三章进行详细的介绍。

解决Bot前后一致性问题

目前对话机器人无法产生前后一致性的对话,简单说就是没有一个固定的风格。所以要给bot一个连续的“角色”,这种角色可以当做是身份元素(事实背景、用户简介)、语言行为、交互方式等的组合。作者基于Seq-to-Seq模型提出了两种角色模型,一个是单bot的Spearker Model,另一个是双bot的Spearker-Addressee Model。这部分内容可以参考第四章以及他在2016年发表在ACL的论文“ A persona-based neural conversation model”。

使用强化学习RL实现长期多轮对话

当前的Seq-to-Seq模型大都使用MLE作为目标函数并根据一轮对话来产生响应,很难产生更长久的多轮对话,一般在两轮之后就陷入重复。所以作者提出使用强化学习来最大化长期奖励的期望来增加对话轮次。并建设性地提出了三种Reward公式,forward-looking、informative、coherent,最后使用policy gradient的方法进行训练,取得了很好的效果。这部分内容会在第五章进行详细介绍,或者参考其在2016年发表在EMNLP的文章“Deep Reinforcement Learning for Dialogue Generation”

使用对抗生成学习GAN产生对话

目前模型生成的对话大都来自于训练数据集,这就一定程度上限制了产生相应的多样性、丰富程度等。所以引入GAN来生成更接近于人类语言的响应。这里使用一个Seq-to-Seq作为生成器,在用一个鉴别器来标记生成的响应是人类语言还是机器生成语言,这样Seq-to-Seq最终生成的响应会越来越接近人类语言。这部分内容会在第六章进行介绍,或者参考其在2017年发表在EMNLP上的文章“Adversarial learning for neural dialogue generation”。

1.2.2 交互式QA对话机器人

其次探讨bot如何通过online学习完善自己,使得交互性更强。要求其可以:

学会向人类提问,何时何处问什么

从online学习,根据错误改进自己

通过提问进行交互学习

因为目前问答系统当遇到自己回答不了的问题时(没见过的表达形式,自己不知道的东西等情况),往往会做出很差的回应或者重定向到其他资源(展示搜索网页的结果)。但我们更希望机器人在遇到这种问题时可以通过向对方提问的方式来进行交互式问答进而解决该问题。可以通过离线学习或者在线强化学习的方式进行训练。这部分内容将会在第七章进行介绍,也可以参考其在2017年发表在ICLR上的论文“Learning through dialogue interactions by asking questions”。

Human-in-the-Loop的对话学习

目前的对话机器人大都使用固定的数据集提前训练好之后就开始使用,但很多情况下我们需要机器人上线之后不断地根据具体环境改善自己,也就是要进行在线学习,根据对方的反馈来不断地调整自己。所以作者使用一个teacher-student的对话数据集并结合强化学习进行训练。这部分工作将在第八章进行介绍,也可以参考其2017年发表在ICLR上的文章“Dialogue learning with human-in-the-loop”。

第二章 背景知识

这一部分主要介绍了论文中使用到的Seq-to-Seq模型、Memory Network模型、增强学习中的policy gradient方法这三块内容。如果不熟悉的同学可以抽时间看一看,这里因为之前已经对Seq-to-Seq和MemNN两部分有所掌握,所以主要看了一下policy network方面的知识,当做是背景知识补充。

强化学习中两个主流的方法就是Q_learning和Policy Network,相比Q_learning,policy network不需要显示的求解估值函数,而且对于连续动作和状态空间的问题,也可以很好的解决,所以经常在NLP相关领域中得到广泛应用。我们的样本是一个个action-reward对,即每采取一个action都会有相应的reward。再给定一个state时,神经网络会输出一个action的概率分布,我们的目标是最终奖励的期望最大。如下图所示,即取动作at的概率*其相应的奖励r,然后再求和:



为了实现期望最大,就要使用policy gradient的方法来求解和更新网络参数Q。我们使用最大似然比(likelihood ratio)来估算J对Q的梯度,故有下式:



引入b的目的是为了减少方差,原则上来讲b可以是一个任意的标量,但一般会选择所有观测reward的均值或者另外一个神经网络的输出值作为b的取值。如果想要深入了解这部分内容可以参考下面几个资源:

1,Andrej Karpathy的博客:Deep Reinforcement Learning: Pong from Pixels

2,莫烦教程:TensorFlow实现policy network

3,知乎智能单元专栏的文章:深度增强学习之Policy Gradient方法1

第三章之后

本文从第三章开始就是分别介绍上面提到的几个方向,也就是作者读博三年发表的文章,进行分别的介绍,之后应该会分别进行阅读,就不在这里进行介绍了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐