如何生成主题相关的对话 | 每周一起读 #11

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,这样的好处是可以产生更为准确的第一个词,来给后续的词及整个句子的产生带来了更好的效果,因为后续词的产生会依赖于前面生成的词。

 Q&A 精选

wumark


Topic Aware Neural Response Generation

我是这篇 paper 的作者之一,我建议大家在读完这篇 paper 时候,还可以读一读:

1. Sequence to backward and forward sequences: A content-introducing approach to generative short-text conversation [Lili Mou, Yiping Song, Rui Yan, Ge Li, Lu Zhang, Zhi Jin.] 

2. Incorporating Copying Mechanism in Sequence-to-Sequence Learning [Jiatao Gu, Zhengdong Lu, Hang Li, Victor O.K. Li] 

3. Pointer Networks [Oriol Vinyals, Meire Fortunato, Navdeep Jaitly] 

1 和本文解决的是同一件事,本文是 2 和 3 的一个特殊的应用。

mike

We estimate the parameters of Twitter LDA using the col-lapsed Gibbs sampling algorithm (Zhao et al. 2011). Afterthat, we use the model to assign a topiczto a messageX, pick the topnwords (n= 100in our experiments) with thehighest probabilities underz, and remove universal wordslike “thank” and “you” to get the topic wordsKforX.

1. 怎么产生 topic word? 200 个话题,每个话题 100 个 topic words? 

2. 训练时和测试时,是使用所有的 topic words 还是只是用对应主题的 topic?

Miao: 1. topic 和 topic word 是使用文中说的 Twitter LDA 在微博数据集上训练得到的,训练完之后每个 topic 实际上就是由词分布表示的,这里选择了词分布中概率最高的 100 个词作为这个 topic 的 topic words;2. 训练好之后,对于一个输入 X,可以根据这个模型判断 X 属于哪个 topic,然后选择对应的 topic words 送到后续的模型中产生 response。

xixi_meng: 是不是类似于我把一句话中的关键词提取出来后(这里你们提取关键词的方法是使用的 Twitter LDA 在微博数据上训练得到的所有的关键词,然后句子中看是否有这个词?),导入 jieba 分词模型中,找到前 100 个概率最大的词?将关键词和关键词匹配最高的词送到后续模型中?

BetterEmma

i et al. 2015)

除此之外,Deep Reinforcement Learning for Dialogue Generation 这篇文章将增强学习引入到生成对话中,使用 policy gradient methods 来对具有信息性,一致性,易于回答等特性生成结果进行奖励,从而来避免 general reply 的问题。 

wumark:


从效果来看,Deep Reinforcement Learning for Dialogue Generation 这篇 paper 会导致 chatbot 非常热爱问问题。因为他的 loss 是个能聊多少有意义的东西,最后就一直问问题。从我实验来看,GAN 是目前对 general reply 解决的最好的一种方法。

来源:paperweekly

原文链接

时间: 2024-09-19 23:54:31

如何生成主题相关的对话 | 每周一起读 #11的相关文章

2011深圳IT领袖峰会主题高端对话实录

3月29日消息,由深圳市人民政府与数字中国联合会共同主办的2011中国(深圳)IT领袖峰会在深圳举行,本届峰会主题为"转型发展:IT新使命".由数字中国联合会主席吴鹰主持的主题高端 对话在开幕式演讲之后进行. 以下为主题高端对话实录: 吴鹰:下面我们有请高端对话嘉宾:怀进鹏.马云.李彦宏.马化腾. 开始对话之前我先宣布一下对话的规矩,我提问一些问题,其中有一些是我的问题,有相当一部分是 网友通过微博提出的问题,现在都是新业态,我没拿笔也没有写东西,都是看手机微博,用移动互联网应用来做.

做奥运主题相关网站的站长该郁闷了

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断淘宝客 站长团购 云主机 技术大厅 今天收到51.net的官方邮件,内容大致如下: "站长您好: 为保证本届奥运会相关版权及权利不受到非法侵害,上级管理部门下发了 "关于严禁通过互联网非法转播奥运赛事及相关活动的通知",门户通特别提醒您注意以下几点: 1. 未经中央电视台授权许可,其他任何互联网和移动平台等新媒体均不得擅自转播 2. 对未经

QA专题阅读小组 | 每周一起读 #09

从本周起,PaperWeekly 将针对机器阅读理解和传统 QA 方向组建专题阅读小组, 在组内发起「每周一起读」活动.我们将每周选定一篇优质文章,并为大家提供可撰写读书笔记和在线协同讨论的阅读工具. 如果你也希望和我们一起培养良好的阅读习惯,在积极活跃的讨论氛围中增长姿势,就请留意下方的招募信息吧:) 上周阅读笔记精选 Chatbot ▼ Deep Reinforcement Learning for Dialogue Generation >>>chris<<< 作

GAN专题阅读小组 | 每周一起读 #05

从本周起,PaperWeekly 将针对最近大热的生成式对抗网络(GAN)组建专题阅读小组, 在组内发起「每周一起读」活动.我们将每周选定一篇优质文章,并为大家提供可撰写读书笔记和在线协同讨论的阅读工具. 如果你也希望和我们一起培养良好的阅读习惯,在积极活跃的讨论氛围中增长姿势,就请留意下方的招募信息吧:) GAN小组招募 本期「每周一起读」,我们将一起精读下文并发起协同交流.参与者需具备生成式对抗网络(GAN)方向的研究背景,活动细则详见文末. Beyond Face Rotation: Gl

Chatbot专题阅读小组 | 每周一起读 #08

继 知识图谱.多模态 和 GAN 小组相继成立后,从本周起,PaperWeekly 将针对交流群内呼声最高的聊天机器人(Chatbot)方向组建专题阅读小组, 在组内发起「每周一起读」活动.我们将每周选定一篇优质文章,并为大家提供可撰写读书笔记和在线协同讨论的阅读工具. 如果你也希望和我们一起培养良好的阅读习惯,在积极活跃的讨论氛围中增长姿势,就请留意下方的招募信息吧:) 上周阅读笔记精选 GAN ▼ Beyond Face Rotation: Global and Local Percepti

phpcms生成专题的同时自动生成专题相关文章

由于内容页都是生成静态的,所以需要做一个"一键生成专题内容页"的功能,被关联到该专题的文章,可以一次全部生成静态页. 首先在后台专题列表页进行修改,添加"一键生成全部内容页"的链接. 效果如图 找到专题列表页的模板文件,添加一个链接"一键生成专题内容页",链接地址你可以自己定义,这里是?  代码如下 复制代码 m=content&c=create_html&a=zt_show&specialid=<?php echo

脚本动态生成VML_VML相关

我们编写 VML 很重要的就是要和 数据库结合,如果和数据库结合了,读数据和把数据转换成 VML 变成了两部分.如果直接使用 ASP 生成 包含很多 VML 的页面,一旦数据量多了,整个页面就变得很庞大,下载速度慢了,IE解释代码的速度也慢了,所以用脚本动态生成 VML 变得非常重要了.     用 VML 画一个示意图,可以更明确上面的意义: <?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />

KBQA: 基于开放域知识库上的QA系统 | 每周一起读

KBQA: Learning Question Answering over QA Corpora and Knowledge Bases 本文在开放域知识库基础上构建 QA 系统.针对目前 QA 系统常用的规则只能理解规则内固定问题模式,而基于关键字或基于同义词的方法不能完全理解问题,提出一种基于亿级知识库和百万级 QA 语料库的模板.结合问题中实体,知识库谓词,问题的表达形式等,从而得到问题的语义,并与知识库中RDF三元组映射. 论文链接: http://www.vldb.org/pvldb

基于新标注模式的实体和关系联合抽取方法 | 每周一起读

Joint Extraction of Entities and Relations Based on a Novel Tagging Scheme 实体和关系的联合抽取问题作为信息抽取的关键任务,其实现方法可以简单分为两类:一类是串联抽取方法.另一类是联合抽取方法. 串联抽取方法将该问题分解为两个串联的子任务,即先采用实体识别模型抽取实体,再采用关系抽取模型得到实体对之间的关系,其优势是便于单独优化实体识别任务和关系抽取任务,但缺点是它们以获取三元组的中间产物(实体或者关系类型)为目标,而实体