AAAI 2018论文解读 | 基于文档级问答任务的新注意力模型
在碎片化阅读充斥眼球的时代,越来越少的人会去关注每篇论文背后的探索和思考。
在这个栏目里,你会快速 get 每篇精选论文的亮点和痛点,时刻紧跟 AI 前沿成果。
点击本文底部的「阅读原文」即刻加入社区,查看更多最新论文推荐。
本期推荐的论文笔记来自 PaperWeekly 社区用户 @duinodu。本文提出了一种端到端的、从问题出发的、多因素注意力网络,用来完成基于文档的问题回答任务。这个模型可以从多个句子中收集分散的证据,用于答案的生成。
如果你对本文工作感兴趣,点击底部的阅读原文即可查看原论文。
关于作者:杜敏,华中科技大学硕士生,研究方向为模式识别与智能系统。
■ 论文 | A Question-Focused Multi-Factor Attention Network for Question Answering
■ 链接 | https://www.paperweekly.site/papers/1597
■ 源码 | https://github.com/nusnlp/amanda
研究背景
基于阅读理解的回答问题系统中,机器需要通过理解一段文本,回答给定的一个问题。 从 2013 年到 2017 年出现了各种问题回答的数据集(NewsQA,TriviaQA, SearchQA, SQuAD…)。
大多数已有的解决方法,关注在问题和段落的关系(passage-question interaction),通过寻找相似的上下文来抽取文本作为答案。
这类方法有两点不足:
1. 不能通过多个句子合成答案所需要的材料,所以在很多开放 QA 数据集上表现不好。
2. 没有显式地关注问题-答案的类型信息,而实际上,问题-答案的类型在 QA 中很重要。
本文提出了一种端到端的、从问题出发的、多因素注意力网络,用来完成基于文档的问题回答任务。这个模型可以从多个句子中收集分散的证据,用于答案的生成。
问题的数学描述
QA 任务描述如下: 给定一组(文本 P,问题 Q),需要从文本 P 中抽取一个文本块(text span),作为问题的回答。
文本 P 表示为 (P1,P2,...PT),问题 Q 表示为 (Q1,Q2,...QU),T 和 U 分别是文本和问题的单词数。要回答问题,也就是要找到 b,e,其中 1≤b≤e≤T,输出的回答也就是 (Pb,Pb+1,...Pe)。
从上面的数学描述可以发现,这种 QA 给出的回答,只能是文本中出现的单词和句子,不能产生新的单词作为回答。
论文模型
模型有一些复杂,我们一点一点理解。
1. Word-level Embedding
几乎所有的 NLP 问题,第一步都是做 embedding。本文采取两种 embedding 方法:
GloVe(Word)
CNN-based(Char):把两种方式产生的 embedding vector 拼接起来,产生单词级的 embedding。图中有两列,分别表示对文本 P 和问题 Q 都进行相同处理。
这一部分的输出是 TxH 和 UxH 的矩阵,T 和 U 表示文本和问题的长度,H 表示单词对应的向量长度。
2. Sequence-level Encoding
第一步仅仅是对单个单词的处理,还需要在句子级进行处理。对序列数据建模的常见工具:LSTM,所以这部分主要是 LSTM,而且是 BiLSTM。
输出是分别是
3. Cartesian Similarity-based Attention Layer
本质上就是一个点积操作,目的是寻找 P 和 Q 中相似的部分。
这个矩阵从列看过去,就能找到文本中哪些地方最可能出现答案,也就是应该注意的地方,所以 A 也叫注意力矩阵(attention matrix)。当然这个矩阵也可以从行看过去,就能找到问题中哪些词是关键词,第 4 步就是这样做的。
4. Question-dependent Passage Encoding
用 A 从 Q 中取出问题中值得关注的词 G,把 G 加入到 P 中再做一次 LSTM 得到 V。由于 V 的计算过程考虑了 Q,所以把 V 叫做 question-dependent passage word encoding vector。
5. Multi-factor Attentive Encoding
这部分的目标,是从文本中,把和问题相关的部分突显出来。
输入是
如果把 W 去掉,这个式子很好理解,V 的每一行代表一个的单词,
F̃ 是注意力权重,用它和 V 相乘,就能挑出需要注意哪些单词了。
这里可以认为是一种残差结构,concat(x, f(x))。在网络结构设计时使用这种设计的好处是,如果 f 损害了 x 的表达性,旁路的 x 依然可以使用,这样的网络更健壮。
还差一步,文中说,为了控制 M̃ 的影响,用 M̃ 和控制因子按元素相乘。这个控制因子是用一个一层的前馈神经网络计算得到。这里面又有类似残差的想法。
6. Question-focused Attentional Pointing
前面做了那么多工作,都是为了得到
用注意力权重 A 找到 Q 中的关键词 qma。再把问题的问句类型考虑进来,所谓的问句类型,指的是(what, who, how, when, which, where, why)里面的哪个,如果都没有,就取前两个单词,这样计算得到 qf,然后把两个 q 拼接,用神经元融合一下,这里的神经元融合指的是 sigmoid 或 tanh(xW+b)。
最后,用两个 BiLSTM 寻找最终要找的 b 和 e。
实验
对比实验
本文在 NewsQA,TriviaQA 和 SearchQA 数据集上进行对比实验,实验证明本文模型均比其他方法的效果好。
分析实验
用实验分析并验证模型的每一个部分对结果的影响。
个人评价
本文模型真的有些复杂,有很多网络设计方法是值得学习的:
concat + 神经元融合
反复使用“残差”来设计网络
网络中引入张量
本文由 AI 学术社区 PaperWeekly 精选推荐,社区目前已覆盖自然语言处理、计算机视觉、人工智能、机器学习、数据挖掘和信息检索等研究方向,点击「阅读原文」即刻加入社区!
我是彩蛋
解锁新功能:热门职位推荐!
PaperWeekly小程序升级啦
今日arXiv√猜你喜欢√热门职位√
找全职找实习都不是问题
解锁方式
1. 识别下方二维码打开小程序
2. 用PaperWeekly社区账号进行登陆
3. 登陆后即可解锁所有功能
职位发布
请添加小助手微信(pwbot01)进行咨询
长按识别二维码,使用小程序
*点击阅读原文即可注册
关于PaperWeekly
PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击「交流群」,小助手将把你带入 PaperWeekly 的交流群里。
▽ 点击 | 阅读原文 | 查看原论文