论文阅读与实践笔记(一):Document Modeling with External Attention for Sentence Extraction

最近学习了一篇关于句子抽取的论文——Document Modeling with External Attention for Sentence Extraction[1],论文没有用太多复杂的模型,很适合我这种初学者阅读和实现,在此记录下有用的知识。

1. 任务描述

1)文字描述

  本文针对的任务是NLP信息抽取任务下的一个子任务,句子抽取(Sentence Extraction)。那么何为句子抽取呢?我们在做问答系统(QA)、摘要(Summarization)等篇章级任务的时候,需要先从文档中筛选出包含有用信息的句子,这个步骤就叫句子抽取。譬如说,对于一篇介绍宠物医院的文章,我想知道哪些医院可以做猫狗绝育手术(Q),那么QA系统就需要先定位文章中哪些句子是和“猫狗绝育手术”主题相关的,再通过模型输出具体的回答(A)。

2)符号描述

  若一篇文章由m个句子组成,那么一篇文章可以有一个长度为m的向量组成:

doc中的每一个元素与文章中的句子相对应,0代表无用句子,1代表包含信息的句子,我们的目标就是:给到一篇文章(Input),得到它的doc向量。

2. 论文模型

  如图1,这篇论文提出的是一个结构清晰的层级模型,具体运行流程如下:


图1 模型结构
  • Sentence Encoder模块:通过预训练的词向量得到句子向量。我们使用预训练好的词向量表示每个词,然后通过一个CNN模型得到句子向量,用以表征句子;
  • Document encoder模块:通过句子向量得到文章向量。得到一篇文章的所有句子表示后(假设m=5,即图中的),我们将所有的句子向量以倒序的方式输入到一个LSTM模型中,得到一篇文章的向量表示;
  • Sentence Extract模块:测定句子得分。将一篇文章的向量表示和某个句子的向量表示,输入到一个LSTM模型中,即可得到该句子的得分(0~1之间),得分越高,说明包含的有用信息越多,从而能够判断该句子是否应该被抽取出来;
  • 附加模块:该模型将文章的title、图表标题等数据作为额外信息,输入到Sentence Extract模块中;在该模块还应用了注意力机制(Attention mechanism)。这也是这篇论文的主要亮点了,即证明了文章标题等信息对句子抽取这个任务的提升很大(实验过,确实是这样)。

3. 实现细节

  1. 词向量——中文&英文
  2. 版本更新

待完善……

[1] Yu, Jiangsheng et al. “Document Modeling with External Attention for Sentence Extraction.” ACL (2018).
论文:http://homepages.inf.ed.ac.uk/scohen/acl18external.pdf

你可能感兴趣的:(论文阅读与实践笔记(一):Document Modeling with External Attention for Sentence Extraction)