前 言

在对话生成模型中,无论是目前应用广泛的seq2seq模型,还是各种GAN模型,都会存在生成的response和question之间语义关联性不强的问题。众多的NLPer从希望从多个角度去解决这个问题,其中基于主题的对话生成是被提及较多的方法。在近三年的论文和实际应用中,也取得了较好的结果。最近也看了一些相关的论文,在中文数据集上实验了一些模型,通过这篇文章对该方向的研究做一个简单的总结。

一、《Sequence to Backward and Forward Sequences: A Content-Introducing Approach to Generative Short-Text Conversation》(2016)

论文链接:

https://128.84.21.199/pdf/1607.00970.pdf​128.84.21.199

github源码:

MaZhiyuanBUAA/Seq2BFforDialogueGeneration​github.com

简介:

An overview of our content-introducing approach to generative dialogue systems

该模型主要由两部分组成。

一是使用逐点互信息(PMI)进行预测,选取PMI值最大的单词作为回答中的关键词,该关键词可以出现在回答语句中的任意位置。

二是使用seq2BF模型来生成包含关键词的回答。以该关键词为基点,将回答语句划分为两个序列:正向序列:关键词右侧的所有单词以顺序排列;反向序列:关键词左侧的所有单词以逆序排列。使用 seq2seq 神经网络将问题编码,仅对关键词左侧的单词进行解码,逆序输出每个单词;使用另一个seq2seq模型将问题再次编码,在给定上步中解码后的逆序单词序列下,对回答中的剩余单词进行顺序解码,输出最终单词序列。

实验结果:

总结:

本文提出的模型是假设关键词一定在句中出现,先选出关键词(主题),然后生成的过程中以关键词为分界,先后生成前后两句话。

二、《Towards Implicit Content-Introducing for Generative Short-Text Conversation Systems》(2017)

论文链接:

https://aclanthology.info/papers/D17-1233/d17-1233​aclanthology.info

Towards Implicit Content-Introducing for Generative Short-Text Conversation SystemsTowards Implicit Content-Introducing for Generative Short-Text Conversation Systems​aclanthology.info

简介:

本文较上一篇文章改进的地方是,假设关键词(主题词)在生成文本中不一定出现。该模型设计了cue word gru单元,将关键词信息加入到每一步的状态更新。利用设计的fusion unit结构融合普通的GRU和cue word gru单元。

实验结果:

三、《A Syntactically Constrained Bidirectional-Asynchronous Approach for Emotional Conversation Generation》(2018)

论文链接:

https://arxiv.org/pdf/1806.07000v4.pdf​arxiv.org

简介:

The process of generating replies in the test. The middle part of the reply is generated, and the remaining two sides are generated in Step III. The RNN networks used in the decoderdo not share the parameters with each other

本文是假设每个生成的回复都是一个情感关键词wet、一个主题关键词w_tp和其他位置词y_ct,y_md,yce组成的。首先先预测情感关键词和主题关键词,然后生成中间的文本序列y_md,在分别生成剩下的两端文本,最后对这段文本的真是方向进行二分类,得到最终生成的文本。

实验结果:

总结:

本文是在第二篇文章的基础上引入了新的情感关键词,并在生成过程中将句子分成了三段,设计思路比较新颖。

四、《Topic Aware Neural Response Generation 》(2016)

论文链接:

https://arxiv.org/pdf/1606.08340.pdf​arxiv.org

github代码:

LynetteXing1991/TA-Seq2Seq​github.com

简介:

这是微软亚研院的一篇工作,之前在微软小冰的设计框架中看过这篇文章。本文介绍了一种将topic model与seq2seq结合的方法,主题来自于预训练的LDA模型,为了增加主题词出现在回答中的可能性,该模型通过添加额外的概率项来偏向整体分布来修改主题词的生成概率。该模型利用主题来模拟人类的先验知识,指导他们在对话中形成信息性和有趣的反应,并通过联合注意机制和偏向生成概率利用主题信息生成。

topic model的获取:采用twitter lda模型,每个输入语句x,对应一个topic z,对于topic z,语句x中语该topic有关的字有n个,取n=100,表示为K,利用输入语句x,topic words k,以及输出y,训练生成模型。

在解码阶段,通过句子注意力和主题注意力来控制对话生成的方向。

实验结果:

总结:

感觉这篇文章做的还是比较成功的,不仅仅局限于句子本身的关键词,做了一定的主题拓展,增加了回复生成的多样性。

五、《Augmenting Neural Response Generation with Context-Aware Topical Attention》(2018)

论文链接:

https://arxiv.org/pdf/1811.01063.pdf​arxiv.org

github源码:

nouhadziri/THRED​github.com

简介:

THRED model architecture in which we jointly model two specifications that presumably make the taskof response generation successful: context-awareness (modeled by Context Attention) and diversity (modeled byTopic Attention)

本文提出了一个端到端的对话模型THRED,通过层次化的联合 attention 机制,在回复生成中利用对话历史和主题信息,使对话更加多样化。此外,论文还引入了两种新的自动化评价指标:语义相似度和回复回声指数。实验表明,本文模型能产生更具多样性并且上下文相关的回复。

具体实现方式和第四篇文章和相似(本文也将第四篇文章的模型作为对照基线),都是先通过LDA训练主题模型,构建包含拓展词的数据集。与第四篇文章不同的是,该模型在设计的时候考虑到了上下文信息,通过句子级别和词语级别的注意力机制对上下文进行建模,再引入主题注意力机制,使生成的回复包含更多信息。

实验结果:

总结:本文算是结合了上下文信息与主题信息,做的比较成功。同时,github上开源的代码写的比较详细,不仅实现了本模型,也同样封装了基线模型,便于复现。(我在中文数据集上古复现了一下,可能是我的语料和自己训练的中文主题模型不太好,结果不是很理想)

最后的总结:

基于主题的对话生成,可以为生成的回复赋予更多的信息,增强上下文的语义关联,同时有助于对话更好地进行下去,是闲聊对话生成值得探索的方向。(完)

基于控制主题的对话生成 相关论文总结相关推荐

  1. 微软亚洲研究院论文解读:基于动态词表的对话生成研究(PPT+视频)

    本文为 12 月 27 日,北京航空航天大学博士生.微软亚洲研究院实习生--吴俣在第 21 期 PhD Talk 中的直播分享实录. 本次 Talk 的主题是基于动态词表的对话生成研究.首先,吴俣博士 ...

  2. 直播预告:基于动态词表的对话生成研究 | PhD Talk #21

    「PhD Talk」是 PaperWeekly 的学术直播间,旨在帮助更多的青年学者宣传其最新科研成果.我们一直认为,单向地输出知识并不是一个最好的方式,而有效地反馈和交流可能会让知识的传播更加有意义 ...

  3. 直播预告:基于动态词表的对话生成研究 | PaperWeekly x 微软亚洲研究院

    「PhD Talk」是 PaperWeekly 的学术直播间,旨在帮助更多的青年学者宣传其最新科研成果.我们一直认为,单向地输出知识并不是一个最好的方式,而有效地反馈和交流可能会让知识的传播更加有意义 ...

  4. 基于深度学习实现行人跟踪相关论文总结

    基于深度学习实现行人跟踪相关论文总结 [1] Recurrent YOLO and LSTM-based IR single pedestrian tracking 本文提出了一种基于空间监督的递归卷 ...

  5. 深度强化学习用于对话生成(论文笔记)

    一.如何定义一个好的对话 尽管SEQ2SEQ模式在对话生成方面取得了成功,但仍出现了两个问题(图1): 通过使用最大似然估计(MLE)目标函数预测给定会话上下文中的下一个对话转角来训练SEQ2SEQ模 ...

  6. 基于Snort的入侵检测系统_相关论文

    摘 要 随着网络技术的发展,中小型企业已建设了属于自己的信息化业务平台与系统.中小型企业只有实现信息互通,资源共享,才能够在当今的竞争中生存下去,但信息的互通会面临一些安全问题,对此需要对其采取一些措 ...

  7. python图灵测试_最前沿:基于GAN和RL的思想来训练对话生成,通过图灵测试可期!...

    PS:本文分析略深,需要一定的RL和GAN的基础. 前两天,Stanford的NLP小组出了一篇神经网络对话生成的论文: 标题就是使用对抗学习来做神经对话生成. 这个idea非常的赞!在我看来是通往图 ...

  8. ICCV2021|底层视觉(图像生成,图像编辑,超分辨率等)相关论文汇总(附论文链接/代码)[持续更新]

    ICCV2021|底层视觉和图像生成相关论文汇总(如果觉得有帮助,欢迎点赞和收藏) 1.图像生成(Image Generation) Multiple Heads are Better than On ...

  9. 对话生成:seq2seq模型原理及优化

    对话生成模型 一.寿险的人机对话业务介绍 二.Seq2Seq 对话模型原理 三.基于主题规划和文本属性控制的 Seq2Seq 模型优化 四.Seq2Seq 模型在寿险业务的实践介绍 五.视频及资料获取 ...

最新文章

  1. 图像几何变换:旋转,缩放,斜切
  2. 学习SPI的一些疑惑
  3. [SpringSecurity]web权限方案_用户认证_自定义用户登录页面
  4. 【转】【天道酬勤】 腾讯、百度、网易游戏、华为Offer及笔经面经
  5. Codeforces 229D
  6. 【LeetCode笔记】84. 柱状图中最大的矩形(字符串、单调栈)
  7. 存储过程可重用的代码块_利用软件重用经验进行自动化测试推荐
  8. cpu使用率_微软:Windows 10的高CPU使用率问题已解
  9. PHP获取windows登录用户名的方法
  10. JTabel 中监听某个单元格的值确实改变了
  11. java 英语_Java常用英语汇总(更新升级版)
  12. vs code 安装 IIS Express
  13. 20181215《linux设备驱动开发详解》宋宝华 学习笔记(1)
  14. 小米笔记本计算机在哪里,小米笔记本电脑配置在哪里查看
  15. 关于SMC的源式,汇式(漏式)。PNP和NPN的说明与区别
  16. 微单相机和单反相机的区别?摄影入门第一课
  17. 函数信号发生器的设计与实现_北邮大二上电子电路基础实验报告
  18. java中CAE画实心圆的参数_java绘图中RenderingHints 参数
  19. MT【337】糖水不等式
  20. JavaEE | 集合之HashMap与ConcurrentHashMap(看完多线程后补充)

热门文章

  1. Cadedce Allegro 里面怎么切线删除一条线上的某一段
  2. Matlab 多维标度,详解多维标度法(MDS,Multidimensional scaling)
  3. SQL SERVER2008查询分析器的最基本的使用——建库、建表、插入数据
  4. Mybatis---主键回填 (*^▽^*)
  5. docker daemon.json肯多多
  6. Spring MVC框架中关于限制请求方式
  7. Android魅族等手机下拉刷新有留白(下拉悬停)
  8. 【解决】CSS下拉菜单不会显示的问题
  9. Nginx启动不了报错未找到命令的解决方法(- bash: nginx: 未找到命令)
  10. 关于 三相可控硅触发板 晶闸管整流调压控制板