[ACL2018]Retrieve, Rerank and Rewrite:Soft Template Based Neural Summarization

seq2seq模型目前还有很多缺点,本文所做实验表明:
(1)生成的文本过短,3%的摘要不超过3个词
(2)随着生成序列的增加,生成性能急剧恶化
(3)重复生成某个词
(4)侧重于复制原文
也就是说基于原文自由式生成的摘要的seq2seq模型目前效果还不甚满意,所以本文想要结合摘要模板做生成,又由于传统的基于模板的文本摘要也有如下缺陷:
(1)构建模板非常耗时
(2)需要有专业的领域知识
(3)开发各个领域的所有摘要模板不现实
受基于检索的对话系统的启发,作者认为相似文本的摘要作为软模板,用于指导当前文本生成摘要有指导,所以本文的做法是:seq2seq+soft template
本文的方法有三个模块,分别是Retrieve, Rerank以及Rewrite, 我们分别介绍
Retrieve: soft template
特别注意一点的是:论文中出现的 the input sentence x,就是指的源文本,也就是需要压缩进行摘要的内容,我在这儿摔了个大跟头,我以为源文本有很多句话,这是指其中的一个句子而已,导致我始终不明白Retrieve是怎么做的。
训练集有n个训练实例,具体表示是 X = { ( x 1 x_1 x1, r 1 r_1 r1), ( x 2 x_2 x2, r 2 r_2 r2), …, ( x i x_i xi, r i r_i ri), …, ( x n x_n xn, r n r_n rn)},假设目前正在训练第二个实例 ( x 2 x_2 x2, r 2 r_2 r2), 需要做的就是针对 x 2 x_2 x2 用检索系统Lucene在( x 1 x_1 x1, x 3 x_3 x3, …, x i x_i xi, …, x n x_n xn) 中相似文本,这里假设 x 7 x_7 x7, x 8 x_8 x8 是Lucene挑选出的结果,则我们将其对应的 r 7 r_7 r7, r 8 r_8 r8 作为候选 soft template, 由于数据集很大(超过3M),我们默认选择30个候选. 对于验证集和测试集我们只挑选最相似的一个文本对应的摘要作为soft template即可。
Rerank:
在这里插入图片描述
注意公式(2)中 h ← 1 x \overleftarrow{h}^x_1 h 1x 是从右到左的LSTM最后一个输出,左侧第一个单词的 LSTM 输出
h → − 1 x \overrightarrow{h}^x_{-1} h 1x是从左向右的LSTM最后一个词的输出,右侧第一个单词的 LSTM 输出
同理 h r h_r hr 也一样
用 Bilinear network 预测输入 x 和软模板 r 的相似度:
在这里插入图片描述
在Retrieve阶段保留了30个候选软模板,所以30个不同的软模板 r 分别与 x 计算相似度, 所以需要对30个软模板进行排序
S ∗ ( r , y ∗ ) S^*(r, y^*) S(r,y) y ∗ y^* y 是输入句子 x 的 真实摘要(标注)

ReWrite
通过上一步的Rerank步骤后,我们从30个候选软模板中挑选出了最和输入句子 x 相似度最高的软模板 r, 由于软模板 r 是其他训练输入句子的摘要,并且 r 中包含的命名实体可能在句子 x 中可能从未出现过,所以 r 不能粗鲁的认为是 x 的 摘要,但是可以依据模板 r 指导句子 x 的 摘要生成。基于此,本文引入了可以具有重写能力的seq2seq model.
首先,将句子的隐状态信息和模板的隐状态信息进行拼接,如公式(5):
在这里插入图片描述
然后送入一个标准的attention seq2seq 框架去生成一个输出序列的隐状态 s t s_t st,如公式(6),然后经过一个softmax layer预测摘要中的词(注意一次只生成一个词,类似于机器翻译)
在这里插入图片描述
在这里插入图片描述
Learning
本文将Rerank和Rewrite两个联合训练,所以损失函数由两部分组成,分别是 J R ( θ ) J_R(\theta) JR(θ) J G ( θ ) J_G(\theta) JG(θ)
在这里插入图片描述
在Rerank中,我们希望 s ( r , x ) s(r, x) s(r,x) 的相似性度量与 s ∗ ( r , y ∗ ) s^*(r, y^*) s(r,y) 越接近越好,这部分的损失函数 J R ( θ ) J_R(\theta) JR(θ) 如下:
在这里插入图片描述
对于Rewrite模块,期望得到输入句子 x 真实摘要 y ∗ y^* y的期望概率最大化,这部分的损失函数 J G ( θ ) J_G(\theta) JG(θ)如下
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值