Abstractive Text Summarization Using Sequence-to-Sequence RNNs and Beyond
- Ramesh Nallapati, Bowen Zhou, Cicero dos Santos; IBM
- CoNLL2016
- 这篇文章除了seq2seq,还用了很多的tricks来提升性能,model部分看起来挺多的,LVT在网上搜不到,搜sampled softmax就能搜到了。
-
Models
- LVT/sampled softmax: seq2seq输出的时候使用了softmax,计算V中的每个词的值并归一化,这一步非常耗时。sampled softmax对每个句子/文章单独采样了一个V',只对V'中的词计算softmax并归一化,大幅减少了训练时的计算量。不过在测试的时候仍然需要计算所有词
- Feature-rich encoder: 就是将POS、NER、TF、IDF等文本特征拼接在word embedding后面作为encoder的输入
- Switching Generator-Pointer: 这个操作主要用于解决OOV和UNK问题,当碰到OOV时,g_i置为0,模型会从输入中寻找一个词作为输出和下一时间片的输入。测试时模型会自动决定采用decoder的输出还是从输入中挑选一个词作为输出。
- Hierarchical Attention: 模型会对每个句子计算attention,并整合句子的权重计算每个词的权重。句子的的隐层状态后面还会拼接position embedding。
- Hierarchical Attention效果没有预期的好,作者还使用了Temporary Attention(Sankaran et al., 2016, Temporal Attention Model for Neural Machine Translation),效果大幅提升。
- DataSet: 本文提出了CNN/Daily Mail Corpus,每个摘要包含了多个句子(之前的DUC2004和Gigaword每个摘要只包含1个句子),后续被大量用于评测。
-
性能
- Gigaword: Rouge-1:35.30/Rouge-2:16.64/Rouge-L:32.62
- CNN/Daily Mail Corpus: Rouge-1:35.46/Rouge-2:13.30/Rouge-L:32.65