「每周一起读」是由 PaperWeekly 发起的协同阅读小组。我们每周精选一篇优质好文,利用在线协同工具进行精读并发起讨论,在碎片化时代坚持深度阅读。目前已成立的专题小组有:Chatbot、机器翻译、知识图谱、GAN、推荐系统、QA、增强学习、多模态和自动文摘。
Topic Aware Neural Response Generation
对话生成
是一个非常热门的研究方向,通过 Seq2Seq 来生成与某个主题相关的对话,让整个对话内容的信息量更大、相关性更强,是一个非常有意思的研究思路。本文的工作给出了一些不错的想法。以下是
Chatbot 专题阅读小组
中的各位同学对本文的解读和讨论。
此外,PaperWeekly 将于今天正式成立
自动文摘
和
统计学习
专题阅读小组,在组内发起
「每周一起读」
活动。
我们将
每周选定一篇优质文章,
邀请国内外行业大咖和高校大牛入驻讨论,并为大家提供可撰写读书笔记和在线协同讨论的阅读工具。
slvher
本文模型实现思路:
1. 获取 topic word 的 embedding vector 用新浪微博语料训练 TwitterLDA 模型,算法是 collapsed Gibbs sampling。消息输入后,模型给出所属 topic,取该 topic 下的 top100 作为消息的 topic words,删除通用词后,将这些 topic words 转为各自的向量表示。其中,每个 topic word 的向量是通过计算 topic word 在所有 topic 下的归一化频率得到的(文中 Eq. 4),每个 topic word 对应的 vector 维度取决与 LDA 模型设置的 topic 数量;
2. 通过 BiGRU 网络对输入消息做 encode;
3. 根据第 1 步得到 input message 的 topic vector,结合第 2 步得到的 last hidden state,通过 MLP 网络和 softmax 层得到 topic attention,即得到了各 topic word 的权重;
4. 构造由 message attention 和 topic attention 联合影响的解码概率(文中 Eq. 6),该概率可突出 topic words 的作用。基于这个概率进行 token 解码;
5. 与标准的 seq2seq+attention 模型相比,TA-Seq2Seq 模型的解码过程由 ci 和 oi 共同参与,特别地,在解码第 1 个输出 token 时,c0 插入了先验 topic 信息,因此本文模型可以提高首次解码的质量,从而对整个解码结果的质量产生正向影响。 百度贴吧数据集上的实验结果表明,本文提出的 TA-Seq2Seq 模型达到了 state-of-the-art 的效果,优于 Li Jiwei 提出的 Seq2Seq-MMI 模型。
Miaosen
本文为了让回复符合 topic 特征,所以在 decode 过程中加入了 topic attention。而论文“A Persona-Based Neural Conversation Model”里,为了让回复符合某类人的性格特性,加入了 speaker model 的 vector。而这个 vector encode 的信息是年龄性别等信息,并没有 speaker words 直接去帮助 decode。虽然略有不同,但是从本质上讲,都是用其它途径获得的 vector 来影响 decode 的结果符合某种需求。
还有一点类似的是,本文用的是 Twitter LDA (虽然数据来自于微博),而“A Persona-Based Neural Conversation Model”里,用的是 Twitter 数据,把发言的用户 cluster。
在结果的生成中,Persona 论文是生成数个回复,然后 rank。不知道和本文用到 c0+Ο0 的方法结合后,效果会不会更好。
weijinfeng
文中描述的 TA-Seq2Seq 模型的核心思想是通过引入 LDA 模型结合 Seq2Seq 模型来产生更有信息含量、更为多样性及更话题相关的对话回答。其采用的思路是在现有的带 Attention 的 Encoder-Decoder 模型架构上,通过 joint 输入信息的 attention 和 topic attention 来共同影响对话的回答的生成。主要思路是意图通过引入先验知识到 Seq2Seq 模型来产生更高质量的回答。整体思路相对比较简单直接,但是在实现过程中,个人觉得有几点值得注意或借鉴的:
1. 抓住了人们在实际对话过程中,在一定程度上,是基于某个话题来产生对话的特点,自然的引入了 topic 模型及 topic words,有其一定的合理性;
2. LDA 模型训练用的数据不是用的训练对话的数据,这样做是为了引入了其他数据源的先验知识,籍此提高对话的多样性和信息量,并且可以引入不同的数据源来实现不同的效果;
3. 与传统的 attention 机制不同,topic attention 除了利用 topic words 的状态信息,还利用了 input message 的最终状态作为额外的输入来弱化不相关主题词并加强相关主题词的概率;
4. 在对话生成的过程中,采取了有偏于 topic words 的生成概率来增大 topic words 的出现几率;
5. 有别于 Mou et al. 2016,此模型通过取多个话题词来产生更为有信息量的回答;
6. 不同于传统的 seq2seq 模型,对话的第一个词产生自 c0 和 o0 的组合,而不是只有 c0,这样的好处是可以产生更为准确的第一个词,来给后续的词及整个句子的产生带来了更好的效果,因为后续词的产生会依赖于前面生成的词。
想和我们一起研读优质paper?
点击
「阅读原文」
提交内测申请,我们将在 48 小时内完成审核并和您取得联系。