- PaperWeekly 2016.08.05 第一期
- PaperWeekly 第二期
- PaperWeekly 第三期
- PaperWeekly 第四期 - 基于强化学习的文本生成技术
- PaperWeekly 第五期 - 从 Word2Vec 到 FastText
- PaperWeekly 第六期 - 机器阅读理解
- PaperWeekly 第七期 -- 基于 Char-level 的 NMT OOV 解决方案
- PaperWeekly 第八期 - Sigdial2016 文章精选(对话系统最新研究成果)
- PaperWeekly 第九期 -- 浅谈 GAN
- PaperWeekly 第十期
- PaperWeekly 第十一期
- PaperWeekly 第十二期 - 文本摘要
- PaperWeekly 第十三期--最新文章解读
- PaperWeekly 第十四期 - TTIC 在 QA 任务上的研究进展
- PaperWeekly 第十六期 - ICLR 2017 精选
- PaperWeekly 第十七期 - 无监督/半监督 NER
- PaperWeekly 第十八期 - 提高 seq2seq 方法所生成对话的流畅度和多样性
- PaperWeekly 第十九期 - 新文解读(情感分析、机器阅读理解、知识图谱、文本分类)
- PaperWeekly 第二十期 - GAN(Generative Adversarial Nets)研究进展
- PaperWeekly 第二十一期 - 多模态机器翻译
- PaperWeekly 第二十二期 - Image Caption 任务综述
- PaperWeekly 第二十三期 - 机器写诗
- PaperWeekly 第二十四期 - GAN for NLP
- PaperWeekly 第二十五期 - 增强学习在 image caption 任务上的应用
- PaperWeekly 第二十六期 - 2016 年最值得读的 NLP paper 解读(3 篇)+在线 Chat 实录
- PaperWeekly 第二十七期 | VAE for NLP
- PaperWeekly 第 28 期 | 图像语义分割之特征整合和结构预测
- PaperWeekly 第 29 期 | 你的 Emoji 不一定是我的 Emoji
- PaperWeekly 第 30 期 | 解读 2016 年最值得读的三篇 NLP 论文 + 在线 Chat 实录
- PaperWeekly 第 31 期 | 远程监督在关系抽取中的应用
- PaperWeekly 第 32 期 | 基于知识图谱的问答系统关键技术研究 #01
- PaperWeekly 第 33 期 | 基于知识图谱的问答系统关键技术研究 #03
- PaperWeekly 第 34 期 | VAE 在 chatbot 中的应用
- PaperWeekly 第 35 期 | 如何让聊天机器人懂情感 PaperWeekly 第 35 期 | 如何让聊天机器人懂情感
- PaperWeekly 第 36 期 | Seq2Seq 有哪些不为人知的有趣应用?
- PaperWeekly 第 37 期 | 论文盘点:检索式问答系统的语义匹配模型(神经网络篇)
- PaperWeekly 第 38 期 | SQuAD 综述
- PaperWeekly 第 39 期 | 从 PM 到 GAN - LSTM 之父 Schmidhuber 横跨 22 年的怨念
- PaperWeekly 第 40 期 | 对话系统任务综述与基于 POMDP 的对话系统
- PaperWeekly 第 41 期 | 互怼的艺术:从零直达 WGAN-GP
- PaperWeekly 第 42 期 | 基于知识图谱的问答系统关键技术研究 #04
- PaperWeekly 第 43 期 | 教机器学习编程
- PaperWeekly 第 44 期 | Kaggle 求生
- PaperWeekly 第 45 期 | 词义的动态变迁
- PaperWeekly 第 46 期 | 关于远程监督,我们来推荐几篇值得读的论文
- PaperWeekly 第 47 期 | 开学啦!咱们来做完形填空:“讯飞杯”参赛历程
- 深度强化学习实战:Tensorflow 实现 DDPG - PaperWeekly 第 48 期
- 评测任务实战:中文文本分类技术实践与分享 - PaperWeekly 第 49 期
- 从 2017 年顶会论文看 Attention Model - PaperWeekly 第 50 期
- 深入浅出看懂 AlphaGo Zero - PaperWeekly 第 51 期
- PaperWeekly 第 52 期 | 更别致的词向量模型:Simpler GloVe - Part 1
- PaperWeekly 第 53 期 | 更别致的词向量模型:Simpler GloVe - Part 2
- 基于神经网络的实体识别和关系抽取联合学习 | PaperWeekly #54
PaperWeekly 第四期 - 基于强化学习的文本生成技术
引
2013 年以来 Deep mind 团队相继在 NIPS 和 Natures 上发表了用深度增强(强化)学习玩 Atari 游戏,并取得良好的效果,随后 Alpha go 与李世乭的一战更使得深度增强学习家喻户晓。在游戏上取得了不错的成果后,深度增强学习也逐渐被引入 NLP 领域。本期介绍目前 NLP 领域较为热点的研究方向,基于强化学习的文本生成技术(NLG),共选择了三篇文章,分别为:
(1)《Generating Text with Deep Reinforcement Learning》
应用 Deep Q-Network 作为生成模型用于改善 seq2seq 模型
(2) 《Deep Reinforcement Learning for Dialogue Generation》
应用强化学习进行开放领域的文本生成任务,并对比了有监督的 seq2seq 加 attention 模型和基于最大互信息的模型
(3)《Hierarchical Reinforcement Learning for Adaptive Text Generation_lshowway》
以任务为导向的户内导航对话系统用分层强化学习进行文本生成
以下为三篇文章的主要信息:
Generating Text with Deep Reinforcement Learning
作者
Hongyu Guo
单位
National Research Council Canada
关键词
Reinforcement Learning、Seq2Seq、Text Generation
来源
NIPS2015 Workshop (2015.10.30)
问题
本文提出将 Deep Q-Network 作为生成模型用于改善 seq2seq 模型,将 decoding 修改为迭代式的过程,实验表明本模型具有更好的泛化性。
模型
对 seq2seq 模型改进的论文层出不穷,本文率先引入深度强化学习的思想,将 DQN 用于文本生成。对 DQN 还不了解的同学可以先阅读 DeepMind 的论文 Playing Atari with Deep Reinforcement Learning。本文的模型如下:
如同一般的神经网络,我们也可以把 DQN 当做一个黑盒来使用。只需要准备好 DQN 需要的四个元素 s(i),a(i),r(i),s(i+1),分别代表 i 时刻下 state,action,reword 和 i+1 时刻的 state。
对照上图我们把算法解剖分为 4 个步骤:
Step 1: 先是传统的 seq2seq 模型。通过 LSTM 先把输入序列 encode 为一个定长向量 EnSen(i),然后作为 decode 阶段的初始状态依次生成新的序列 DeSen(i)(decoding search 使用 beam search 算法来 expand next words)。经过第一步我们得到初始 state:(EnSen(i), DeSen(i)) 和 action 集合:每个位置的 hypotheses。
Step 2: 接下来从 hypotheses(actions)中选择一个可以获得最大 reward 的单词(action)作为该位置新生成的词,用新单词来代替之前的旧词,于是生成新的 state:(EnSen(i), DeSen(i+1))。
Step 3: 接着就是标准的 DQN 的部分,计算 Loss 函数并对其应用梯度下降。
Step 4: 回到 Step 2,对得到的 state 继续迭代,每一次迭代都只生成一个新词来代替旧词,直到迭代次数达到设好的值(作者将次数定为句子长度的两倍,同学们可以思考一下理由)。
总结 DQN 所需的四个元素对应如下:
(1) i 时刻下的 state:(EnSen(i), DeSen(i));
(2) i 时刻下的 action:beam search 得到的每个位置的 hypotheses;
(3) i 时刻下的 reword:target sentence 和 DeSen(i+1) 的相似度(BLEU score);
(4) i+1 时刻下的 state:(EnSen(i), DeSen(i+1));
为了更好的提取句子的特征,作者在 decode 阶段使用了双向 LSTM。同时还在 reinforcement learning 中加入 attention 机制,可以达到先 decode 比较简单的部分再处理困难部分的效果。最后在生成相似句子的实验中得到了比只用 LSTM decoder 效果更好的结论:
相关工作![](https://www.wenjiangs.com/wp-content/uploads/2025/246544666/7e84ce543f9af05e86e8fe6968fb13c5.jpg)
简评
本文的思想其实非常符合写作的一种情况,就像贾岛推敲的故事,回想小时候刚学习写句子时,也不能一次写好,总会不断对一些词语进行修改。Google DeepMind 的文章《DRAW:A Recurrent Neural Network For Image》也和本文异曲同工:画画也不是一次画好,也要不断的完善。不同之处在于本文率先引入 DQN 做文本生成。在机器学习各个分支下,强化学习和人类与环境的交互方式非常相似,在许多领域开始初露头角,期待看到更多将强化学习结合语言模型的应用。
Deep Reinforcement Learning for Dialogue Generation
作者
Jiwei Li, Will Monroe, Alan Ritter, Michel Galley, Jianfeng Gao, Dan Jurafsky
单位
(1) Stanford University, Stanford, CA, USA
(2) Microsoft Research, Redmond, WA, USA
(3) Ohio State University, OH, USA
关键词
Reinforcement Learning、Seq2Seq、Text Generation
来源
问题
本文提出利用强化学习进行开放领域的文本生成任务,并对比了有监督的 seq2seq 加 attention 模型和基于最大互信息的模型
模型
强化学习中的 reward
易被响应(Ease of answering),不容易出现对话僵局,其中 S 是无意义回答合集,s 是某一时刻的响应
信息流,若开辟新的话题,有利于对话的继续发展,隐层表示 hpi 和 hpi+1 的夹角余弦
语义连贯性,减少与对话无关问题的影响,其中,pseq2seq(a|pi,qi) 是由上一轮状态得到响应的概率,后一项是由当前产生响应通过网络生成之前的 qi 的概率。
最终的 reward 是对三者加权求和,系数分别为:0.25、0.25、0.5.
对比试验:
(1) 对话初始状态为一个 SEQ2SEQ 加 attention 的模型作为强化学习的初始状态。
(2) 在前面的基础上将最大互信息加入其中作为 reward,对于一个给定的输入[pi,qi],可以根据模型生成一个候选回答集合 A。对于 A 中的每一个回答 a,从预训练模型中得到的概率分布上可以计算出互信息的值 m(a,[pi,qi])。
(3) 将互信息训练过的模型作为初始模型,用策略梯度更新参数并加入课程学习策略,最终最多限定五轮对话。
相关工作![](https://www.wenjiangs.com/wp-content/uploads/2025/246544666/b4833393205c37f11a9381f6eeeb310a.jpg)
简评
本文作者提出了一个强化学习框架,模拟两个 agent 让其自动对话训练神经网络 SEQ2SEQ 模型,将 Encoder-Decoder 模型和强化学习整合,从而能保证使对话轮数增加。文中使用的模型非常简洁,reward 函数定义清晰,评价指标也较为科学,可以生成信息更为丰富、易于响应的对话系统。
Hierarchical Reinforcement Learning for Adaptive Text Generation
作者
Nina Dethlefs, Heriberto Cuay´ahuitl
单位
University of Bremen, Germany
关键词
NLG, 分层强化学习,文本生成, wayfinding
来源
国际自然语言生成会议 INLG(2010)
问题
在 wayfinding(户内导航对话系统)领域利用分层强化学习进行文本生成。该方法的目标是对 wayfinding 的 NLG 任务整合进行优化,并在模拟系统中验证该方法的有效性。
模型
本文任务在 wayfinding 中的 NLG 任务有多个,且各个任务之间并非独立。从而提出应该根据用户类型,导航距离, 环境条件等作出不同的导航策略,介绍了分层强化学习。
文章将户内导航对话系统的文本生成问题分为四块:
(1) Content Selection:给不熟悉环境的用户的导航要比熟悉环境的用户的导航更细致
(2) Text Structure:根据导航距离以及用户熟悉环境程度给予不同类型的导航,如大白话的,以 fisrt, second…表达或者示意性的。
(3) Referring Expression Generation:一间房间可以叫“A203”,也可以叫“办公室”或者“小白楼”
(4) Surface Realisation:往前走可以用“go”也可以用“walk”等。
强化学习示意图如下,分层强化学习的思想与强化学习类似,但在强化学习的基础上加上层次,不同层次的模型处理不同层次的问题。
agent 根据当前状态,执行动作 a 与环境交互,之后环境产生一个新的状态 s 并返回给 agent 一个奖赏 r(可正可负),强化学习的目标函数便是使 agent 获得奖赏 r 最大。
分层增强学习包含 L 个层,每层 N 个模型,如 Figure 1 是有 15 个 agents 的 hierarchy,其中不同的 agent 负责不同的层次。
每个 agent 定义为半马尔科夫决策过程,可以表示成一个四元组
分别为状态集,动作集,转换函数,奖励函数。
奖励函数表示 agent 在时间 t 状态 s 是执行动作 a 转换到新的状态 s’所获得的奖励。半马尔科夫的目标是找到 policy π*,
使得在从当前状态转换到新的状态获得的累计奖励最多。
本文使用两种奖励函数,一种着重在 interaction length, 另一种着重在 alignment and variation 之间的平衡(具体公式可见论文)。
本文是在模拟环境中进行试验,其中模拟环境包括 user type(熟悉环境,不熟悉环境), information need(高,低),length of the current route(短,中长,长),next action to perform(转,直走),current focus of attention(继续走,关注标识)。baseline 为为部分 agent 随机选择 action,即不考虑用户类型,导航距离等因素。经与 baseline 比较,效果较好。
资源
词性标注工具: The Stanford Natural Language Processing Group
简评
将来的工作:将分层强化学习应用于其他 NLG 任务
不足之处:实验是在模拟环境下进行的,未来应该在真实环境进行评估。
总结
这三篇文章皆是强化学习在 NLP 领域的应用,第一篇主要侧重点在于应用 DQN 进行文本生成,并用 BLUE 指标进行评价,对比传统的 LSTM-decoder 和加入 DQN 之后的结果;第二篇文章侧重点在于虚拟两个 Agent,在传统 Seq2Seq 的基础上加入强化学习从而使得聊天能够持续下去;第三篇文章侧重点在于任务驱动的对话系统应用分层强化学习,针对不同情况进行分层处理。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
![扫码二维码加入Web技术交流群](/public/img/jiaqun_03.jpg)
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论