Gsum: A General Framework for Guided Neural Abstractive Summarization 论文笔记
Year: 2021 Venue: NAACL Institution: CMU Code: https://github.com/neulab/guided_summarization
Overview
这篇文章力求解决的问题是如何控制文本摘要生成,尤其注重可信度方面。作者提出相比于抽取式摘要,生成式摘要是不受限制的,这会导致两个问题:
- 生成出的摘要可信度不高,甚至会包含一些事实错误或虚构的内容
- 摘要生成不可控,我们无法提前选择哪些方面模型应该更重视
针对现有的问题,作者提出了Guided Summarization Framework (Sum)。Gsum会给语言模型提供guided signal,而这个guided signal可以起到控制摘要的作用。
之前的工作其实已经涉及过控制摘要生成的很多方面,例如控制长度,控制关键词等等,这篇文章更像是一个聚合,在同一个模型中加入不同的signal来从多角度对摘要生成进行控制。
通过Figure 1,我们可以对这篇文章方法做一个总览。作者将guided signal与source document一同传入Encoder进行编码,而对于guided signal的提取,训练阶段与测试阶段有所区别。
因此本文的核心部分在于guided signal的设计。
Methodology
Model Architecture
虽然本文模型总体与现今的PLM区别不大,但在Decoder部分,由于guided signal的加入,作者对模型结构做一点小改动。在Decoder的Self-Attention Block之后,作者先将guided signal与上一层结果进行Cross Attention,得到的representation再去与原文章的encoding进行Cross Attention。
y
(
1
)
=
L
N
(
y
+
S
e
l
f
A
t
t
e
n
t
i
o
n
(
y
(
0
)
)
)
y
(
2
)
=
L
N
(
y
+
C
r
o
s
s
A
t
t
e
n
t
i
o
n
(
y
(
1
)
,
g
)
)
y
(
3
)
=
L
N
(
y
+
S
e
l
f
−
A
t
t
e
n
t
i
o
n
(
y
(
2
)
,
x
)
)
y
(
4
)
=
L
N
(
y
+
F
e
e
d
F
o
r
w
a
r
d
(
y
(
3
)
)
)
\begin{aligned} &y^{(1)} = LN(y + SelfAttention(y^{(0)})) \\ &y^{(2)} = LN(y + CrossAttention(y^{(1)}, g)) \\ &y^{(3)} = LN(y + Self-Attention(y^{(2)}, x)) \\ &y^{(4)} = LN(y + FeedForward(y^{(3)})) \end{aligned}
y(1)=LN(y+SelfAttention(y(0)))y(2)=LN(y+CrossAttention(y(1),g))y(3)=LN(y+Self−Attention(y(2),x))y(4)=LN(y+FeedForward(y(3)))
作者认为这样做的好处是由guided signal得到的representation可以指导模型关注source document中应该关注的部分。
Guided Signal Design
这一部分是本文的重点。对于如何生成guided signal,作者提出了三种方式:
- Oracle Extraction。作者后面通过实验证明这种方式效果是最好的
- Automatic Prediction。通过其他模型来根据原文本生成相应的signal
- Manal Definition。手工打造,只在test阶段比较现实,user可以设计自己喜欢的signal
在训练阶段,作者使用oracle extraction。在测试阶段,作者使用automatic prediction。
Guided Signal包含一下四种:
- Highlighted Sentence:对于oracle extraction,作者使用greedy search,用source document的句子与剩余文本计算ROUGE得分,选出得分最高的一些句子作为highlighted sentences。对于automatic prediction,作者使用其他预训练模型进行预测。
- Keyword:整个句子可能会包含一些noise信息,因此得到highlighted sentence以后,作者再用TextRank提取出一些candidate keywords,再过滤掉target summary中没有出现的keywords。对于automatic prediction,作者依然是使用其他的预训练模型进行预测。
- Relation:用三元组的形式表示<subject, relation, object>,提取的工具是Stanford OpenIE。得到一些candidate以后还是通过计算ROUGE得分然后选取分数最高的。
- Retrieved Summary:直觉来看,相似文章的summaries之间应该可以起到互相促进的作用。因此对于每个样本 ( x , y ) (x, y) (x,y),作者用Elastic Search抽取出前5个与 y y y最相似的summary { y i } i = 1 5 \{y_i\}_{i=1}^{5} {yi}i=15。在测试阶段,由于不知道target summary,作者抽取的是与source document最相似的5个document。
Experiment
Baselines:BertExt、BertAbs、MatchSum、BART
作者在6个数据集上进行了实验,在其中的四个上都取得了SOTA的成绩。
Relation of Different Signals
为了比较四种guided signal对于概要生成的影响,作者在CNN/DN数据集上进行了比较试验,得到的结果如下:
可以看出,Highlighted Sentence对于模型效果的提升是最为显著的,其次是Keywords。为了进一步比较四种signal,作者又做了以下两个实验:
-
作者在下表中展示了四种signal优于其他signal的比例,可以看到Sentence虽然对模型提升是最显著的,但还是有将近60%的情况下其他signal表现更好。作者将四种signal最优的结果combine起来作为一个signal之后,得到了比单一signal更好的结果。
-
作者还做了pairwise signal实验,结果表明不同signal之间可以起到complement的作用
Oracle vs Auto
实验结果表明,用Automatic Prediction的效果远远低于Oracle Extraction的效果
作者分析了一个可能的原因:automatic prediction所使用的的预训练模型预测效果不佳,signal质量偏低,导致后续结果低。
Future Work
作者提出了几个未来可研究的方向:
- 对不同signal下的模型进行ensemble
- 加入更复杂的技术,例如对source document或guided signal进行copy和coverage
- 设计其他guided signal