前言
论文分享 今天分享的是来自2018ACL的长文本抽取式摘要方法论文,作者来自哈尔滨工业大学和微软,引用数369
Neural Document Summarization by Jointly Learning to Score and Select Sentences
摘要抽取通常分为两个部分,句子打分和句子选择。句子打分的方法有基于特征的,比如字概率,TF-IDF权重,句子位置和句子长度特征,基于图的方法比如TextRank和LexRank。在句子选择阶段,有基于最大边际相关性(maximal marginal relevance)的方法,选择分数最高,冗余最小的摘要;以摘要长度为限制,基于整数线性规划(Integer Linear Programming)的方法;用于发现最优句子子集的优化方法子模块方程(submodular function);基于神经网络的方法等
这些方法都是将句子打分和句子选择分为两个步骤,即先打分后选择,论文提出一种将打分和选择进行联合学习的模型。作者的创新点在于构建的模型在每一次选择句子的时候,会同时考虑句子的重要性和之前已选择的句子。
模型
作者提出的模型一共包括3个GRU,第一个GRU用于编码字级别特征,将GRU的最后一层作为句子编码,第二个GRU对所有句子进行学习,得到文档级的句子编码,第三个GRU用于学习历史抽取信息,前两个GRU的公式比较简单,这里就不详细描述了,学习历史信息,得到隐层状态,然后利用历史信息的隐层状态,去影响剩余句子的打分过程,方式如下
s
t
−
1
s_{t-1}
st−1为上一时刻采集的句子向量,
h
t
−
1
h_{t-1}
ht−1为上一时刻隐层状态,GRU得到当前时刻的隐层状态,然后通过当前隐层状态对剩余的句子进行打分,得到分数
δ
(
S
i
)
\delta(S_i)
δ(Si),需要注意的是,在抽取第一个句子的时候,
s
0
s_0
s0向量为0,隐层状态计算如下
用于计算隐层状态的
s
1
←
\mathop{s_1}\limits ^{\leftarrow}
s1←为文档级向量的最后一个反向隐层向量
目标函数 目标函数为预测段落的得分和添加每一个句子可获得的ROUGE分数提升之间的KL-Divergence
预测段落的得分
添加每一个句子可获得的ROUGE分数提升,MinMax归一化后进行softmax
实验
作者比较了几个当时最好的抽取式模型,NEUSUM均优于baseline
作者比较了NN-SE和NeuSum抽取的句子和贪婪算法(ORACLE)得到的参考句子,在抽取的前3个句子的准确性,NeuSum是要优于NN-SE,并且发现越往后抽取,准确率是越下降的,如何高效的利用历史抽取是一个可提升的点
作者还比较了抽取句子位置的统计信息,得出NN-SE抽取的句子80.91%的概率来自前三个句子,而NeuSum只有58.64%,NeuSum利用历史抽取信息的方法能够避免依赖前面的段落。ORACLE中句子的分布是比较均匀的,而算法倾向于抽取前几个句子
总结
NeuSum提出了一种基于历史抽取信息的摘要抽取方法,其只能抽取固定数量的段落和目标函数在MemSum中得到了优化