美文网首页
Low-Resource Response Generation

Low-Resource Response Generation

作者: 加油11dd23 | 来源:发表于2020-02-09 19:03 被阅读0次

前段时间一直在啃论文,看了一些文本生成和person Re id的内容。将自己看的较吃力的一篇论文

《Low-Resource Response Generation with Template Prior》

拿过来简要介绍一下,主要介绍思路,方便日后回忆,具体细节见原论文。

一、简介

文本生成的一个领域是自动对话。情感类的自动对话训练样本较少,非情感类的自动对话训练样本较多,本论文设法将非情感类的训练样本拿来辅助情感类自动对话的训练。

感觉本论文主要是想改进《Learning Neural Templates for Text Generation》获得的灵感

二、大致思路

1、通过从非情感类训练样本抽取出模板来辅助情感类训练样本的训练。

模板的主要作用是能够将想要生成的话按照逻辑进行分段。例如

Message :真的假的?我瘦了斤

Responses: 【你 】 【瘦了】 【吗】

模板在其中的作用就是先将答案分为3部分,之后一次生成每部分的答案。对每一个message会有很多模板,筛选模板的方法有很多,最简单的就是,哪个能与Message匹配上就用哪个,复杂的就涉及到一系列搜索方法。

2、有了模板每一个答案是怎么生成的呢,其实是在每一个部分加入一个RNN,以隐含状态及之前的答案为输入进行生成答案。

三、模型解析

1、不妨先看《Learning Neural Templates for Text Generation》中的模型

摘要:虽然神经编码器-解码器模型在文本生成方面取得了很大的成功,但这种生成方式仍存在一些尚未解决的问题。编码器-解码器模型在很大程度上无法解释文本,并且难以控制其措辞或内容。本文提出了一种使用隐藏的半马尔可夫模型(HSMM)解码器的神经生成系统,它学习潜在的、离散的模板并生成。我们展示了该模型学习有用模板的能力,并且这些模板让生成变得更具解释性和可控性。

图1 HMM + RNN

可以简单理解为对每一个编码后的隐藏态结合之前的隐藏态、输入,输出单词。

如 隐藏态 z1 和 x  经过 Rnn 输出单词y1 , y2 , y3 。

2、上面是将马尔可夫模型与RNN结合进行文本生成的一般思路,下面介绍本论文模型。

本论文作者进行了改进,加入了模板,为了加入模板。在每个隐状态中又加入了一个变量l,l的意义是图1中zt能够发射出几个词。例如z1的l为3,因为它能够发出3个词,z2的l为1,因为它能够发出1个词。本论文的模型名称为S2S-Temp

图2 S2S-temp

(1)输入 message 首先经过一个GRUx(encoder)编码,得到的结果这里简记为src_enc。

(2)输入message 经过一个分割网络 加上 模板 得到 马尔科夫链中的第一个隐藏态states,即图中的z1,z1的l为2,所以此状态能发射2个词。

(3)[<s> ; z1 ]通过GRU,ATTENTION,GRU,softmax,linear function 得到第一个输出结果it 。

(4)[it ; z1] 通过GRU,ATTENTION ,GRU,softmax,linear function得到第二个输出结果 ' s 。

(5)根据马尔可夫链的求解算法Viterbi algorithm.得到z2

(6) ['s  ;z2] 通过GRU,ATTENTION,GRU,softmax,linear function得到第三个输出结果a 。

(7) ... 

这其中有很多细节不一一介绍。

四、模型训练方法

"直觉的,我们可以通过最大化与数据对的相似度来训练编码器和解码器以及NHSMM。然而数据对太少,会面临一些问题。比如提前停止训练,会欠拟合,此实,无监督得到的模板会发挥更重要的作用。如果训练过度,会丢失模板的一些知识,使得编码器解码器在文本生成中占据主要作用。”

因此采用对抗学习,来平衡模板知识和编码器解码器之间的关系。

1、鉴别模型的更新:

鉴别模型是一个基于线性分类器的卷积神经网络。

通过max(logD(X,Y) + log(1-D(X,^Y)))来训练。(涉及对抗学习的一些知识)

2、生成器的训练:

关键为需要在max(logD(X,Y) + log(1-D(X,^Y))的过程中需要计算网络中每一块的梯度问题。

PS:这一块没具体看,等到需要实现是再看看;同时关于模板的训练问题现在突然间看不懂了,打算过段时间再看下论文想想。

五、论文的一些细节

1、数据集的词向量。

"我们保留了20,000个最频繁的单词,作为编码器,解码器和NHSMM的词汇表。词汇表覆盖了消息,响应和问题中出现的95.8%的单词。否则,用“ UNK”代替。"

2、评价(自动,人工)

自动:BLEU-1

3、Baseline

S2S、CVAE、HTD、ECM

论文中均给出github代码地址

参考:

HMM 

https://www.zhihu.com/question/20962240

https://zhuanlan.zhihu.com/p/85454896

对抗

https://www.zhihu.com/question/63493495/answer/253693995

文本生成

https://mp.weixin.qq.com/s?src=11&timestamp=1581244160&ver=2148&signature=J2cpYYoaY4mLGmFlFgXjBomSRy8TNEdkBHFyNMrS6RZ7UNY*k595ly8rbtJ3U55d7G3GSKlvUEGq7tty0j1kLQX*stsAerj8jIpQdvRICZ8vCR8bOhqw0DxX0Mxizb48&new=1

https://zhuanlan.zhihu.com/p/46283054

相关文章

网友评论

      本文标题:Low-Resource Response Generation

      本文链接:https://www.haomeiwen.com/subject/zysnxhtx.html