论文笔记《Consensus Attention-based Neural Networks for Chinese Reading Comprehension》

原文链接
本文发表于人工智能领域B类会议 COLING 2016

摘要

随着NLP研究如火如荼的发展,机器阅读理解技术也有了一个爆炸式的增长,一些机构公开的完形填空式的阅读理解数据集,极大的促进了机器阅读理解技术的提升。本文首先提出了提出了两个中文阅读理解数据集,分别为日常新闻数据集和儿童通话数据集。此外,本文提出了一种基于consensus attention的神经网络,其目的是能够让注意力机制关注到查询中的每一个单词。实验结果表明,本文提出的方法效果不错。

模型

假设我们有训练集 <D,Q,A> < D , Q , A > <script type="math/tex" id="MathJax-Element-97"> </script>,其中D是文章,Q是查询,首先我们将Q和D的onehot表示通过一个相同的embedding矩阵 We W e 转换为embedding表示,由于Q比D要短很多,通过与D共享embedding矩阵,可以使Q学到的embedding表示比使用两个不同的embedding矩阵要好。
本文使用两个不同的双向GRU来分别提取D和Q的特征,这样从不同维度的提取方式能够更加充分的提取特征。模型如下图所示:
consensus attention
模型底层是基于双向GRU的,没有啥特殊的地方,公式如下:
公式
具体而言就是将D,Q进行embedding后输入双向GRU然后得到两个方向的隐状态输出之后,将两个方向的输出给concat起来。
这样我们就得到了D和Q通过双向GRU的输出 hdoc h d o c hquery h q u e r y ,然后对 hdoc h d o c 中的每个单词的隐状态表示, 计算它与 hquery h q u e r y 中所有单词的隐状态表示的匹配程度: α(t)=softmax(hdochquery(t)) α ( t ) = s o f t m a x ( h d o c ⨀ h q u e r y ( t ) ) (t 表示时序, 即 query 的第 t 个位置,该公式本质就是计算attention)。
即: α(t)=[α(t)1,α(t)2,...,α(t)n] α ( t ) = [ α ( t ) 1 , α ( t ) 2 , . . . , α ( t ) n ] 其中 n n 是D中单词的个数

得到了α(1),α(2),...,α(m)之后,我们将其送入一个merge function


所谓 consensus, 是要在 query 的每个单词上达到某种共识; 所谓 consensus attention, 就是在单词对应的 attention 之间取得共识,本文用merge function来代表这种共识: s=f(α(1),,α(m)) s = f ( α ( 1 ) , … , α ( m ) ) (m 表示 query 的长度).


本文定义了三种merge function:

  1. max (此时的共识就是推举出最大的 attention): ssoftmax(maxt=1mα(t)) s ∝ s o f t m a x ( m a x t = 1 … m α ( t ) ) ;
  2. sum (此时的共识就是考虑所有的 attention): ssoftmax(mt=1α(t)) s ∝ s o f t m a x ( ∑ t = 1 m α ( t ) ) ;
  3. avg (此时的共识就是考虑所有 attention 的均值): ssoftmax(1mmt=1α(t)) s ∝ s o f t m a x ( 1 m ∑ t = 1 m α ( t ) ) ;

(注:本人认为本文这个地方有点强行解释的感觉)


最后, 和 ASReader 一样, 对 document 中 unique word, 计算所有位置上的概率和:

P(w|D,Q)=iI(w,D)si,wV P ( w | D , Q ) = ∑ i ∈ I ( w , D ) s i , w ∈ V
其中 I(w,D) I ( w , D ) 是指示函数, 表明单词 w 出现在 D 的位置。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值