ConZNet《Cut to the Chase: A Context Zoom-in Network for Reading Comprehension》阅读理解笔记

28 篇文章 2 订阅
26 篇文章 1 订阅

《Cut to the Chase: A Context Zoom-in Network for Reading Comprehension》阅读理解笔记

这篇文章是发表在2018年EMNLP上的,在Deepmind 发布的NarrativeQA数据集上得到了SOTA效果。

分以下五部分介绍:

  • Dataset
  • Motivation
  • Model
  • Experiment
  • Discussion

因为之前没有了解过NarrativeQA 数据集,所以先简单介绍一下该数据集。

1、数据集

NarrativeQA 包含来自于书本和电影剧本的1567个完整故事,而不像SQuAD v1.0中只是段落。数据集划分为不重叠的训练、验证和测试三个部分,共有 46,765个问题答案对,问题由人类编写,并且多为“何时/何地/何人/为何”之类的较复杂问题。测试的是读者理解语言的能力,而不仅仅是模式匹配。
在这里插入图片描述
1、MCTest(2013年,Richardson等):660篇短文章,基于文章的2640个问题,回答在多个答案中进行选择,Deepmind认为,MCTest的局限性在于数量太小,因而更像一个评估测试,而不适合与一个端到端的模型训练。

2、如CNN/Daily Mail(93K+220K新闻文章,387K+997K问题)、CBT(从108本儿童读物中摘取的678K个20句左右的段落)、BookTest(14.2M个段落,类似CBT)等数据集均能够提供大量的答案-问题对,但是这些数据集的问题通常为完形填空(预测缺的词语),比如从摘要中前20句话作为PASSAGE,第21句话作为QUESTION,并且从中抽出一个单词作为ANSWER。

3、SQuAD包含从536个维基百科词条中抽取的23K个段落。虽然SQuAD提供了大量的问题和答案,答案也并非只是某个单词或者对于某个实体的回答,但由于这些段落缺乏完整的文章包含的跨度,很多更合理的阅读理解的问题无法被提问和解答。
此外,由于这些段落来自于较少的条目,这也限制了对这些数据训练中对于局部多样性和词法的效果,也限制了在SQuAD或者NewsQA等数据集中表现良好的模型回答更复杂问题的能力。
总体来说,DeepMind认为目前的阅读理解数据集均存在着一定的局限性,包括:数据集小、不自然、只需要一句话定位回答的必须信息,等等。因而 Deepmind提出了NarrativeQA 。

  • 长度更长。
    The summaries in NarrativeQA are 4-5 times longer than documents in the SQuAD dataset.
  • 答案不是逐字的,由专家给出完整的形式。
    Answers are well-formed by human experts and are not verbatim in the story

2、Motivation

大部分的Models有以下问题:

  • reasoning over long documents
  • do not trivially generalize to cases where the answer is not present as a span 产生的答案都是来源文章中的span
  • 没有办法对文章中需要好几个离散的span部分去组合答案

因此:

  • 过滤掉不相关的文档部分,只使用相关的文档产生答案
  • Moreover, our decoder combines span prediction and sequence generation. 使用PG-Net

3、Model

在这里插入图片描述
在这里插入图片描述

3.1 Co-attention layer

首先用预训练的词向量和字符向量,作为文档和问题当中的词的表示。再使用一个共享的双向GRU编码文档和问题,得到 d i d_i di q j q_j qj 。然后使用BiDAF,得到 d ~ i \widetilde d_i d i (是一个 l d l_d ld * model维的向量)和 q ~ \widetilde q q (是一个model维的向量)。最后通过连接下式,得到query-aware contextual representation。
在这里插入图片描述

3.2 Context Zoom Layer

使用强化学习去得到相关的文章的部分。首先得到n个区域,每一个区域k,通过BI-GRU的最后一个时刻的连接得到 z 1 , z 2 , z 3 . . . . z n z_1, z_2, z_3....z_n z1,z2,z3....zn,而后将self-attention后的 z ~ k \widetilde z_k z k,经过一个全连接得到表示 u u u,然后Softmax,得到一个打分 f a i fai fai,从中选出前top-k的相关的块。
在这里插入图片描述
强化学习的策略被定义成:
在这里插入图片描述
f a i r fai_r fair 是第r个相关的区域的概率,u 是第二个公式定义的环境状态。在训练的时候使用 f a i fai fai 采样,预测的时候通过贪心evaluation 选择最相关的部分 。

3.3 Answer Generation

在这里插入图片描述
这一部分是Encoder-Decoder框架

Encoder是使用3.2部分的被选择的相关区域作为输入。
将输入进行编码,一部分仍然使用Self-Attention,另一部分只是简单做一个全连接,然后两部分加起来经过BI-GRU得到Encoder的输出表示 e i e_i ei.

Decoder是使用attention机制和PG-Net,既能够从词表生成,又能从源端复制。
在时间t时刻,使用attention分布、上下文向量以及当前词对应的词向量对下一时刻进行预测。attention分布计算如下:
在这里插入图片描述
h t h_t ht 是Decoder的隐状态,gama_t 是一个词概率分布(相关的区域块),然后得到上下文表示。
在这里插入图片描述
利用上下文表示和隐状态进行一个线性计算,再sotfmax得到固定词表概率分布;
在这里插入图片描述
类似PG-Net,计算得到copy概率,其中 x t x_t xt 表示词向量;
在这里插入图片描述
最终就能得到一个概率分布了:
在这里插入图片描述

3.4 Training

Co-attention, Context Zoom, and Answer Generation layers分别对应到 theta_a, theta_z, theta_g
其中 J 1 J_1 J1表示交叉熵的loss, J 2 J_2 J2表示的是强化学习的reward,reward function用Rouge指标。最后一项是为了减少第二部分的高方差,b是平均奖赏, R i R^i Ri是每一次的奖赏[1]。
在这里插入图片描述

Experiment

Baseline
  • (Seq2Seq, ASR, BiDAF)这几个模型以及the Multi-range Reasoning Unit (MRU) in Tayet al. (2018)[2] 作为比较模型。
  • 另外还用Context Zoom layer实现了 (Baseline 1, Baseline 2) [3],在这两个Baselines中用answer generation layer替换了span prediction。第一个是用Seq2Seq的attention去预测答案,未使用copynet;第二个是和 our ConZNet architecture有点相似。
Result

在这里插入图片描述

  • 可以看到两个Baselines的比较,说明了融合了ConzNet以及copy机制的答案生成效果好于(Seq2Seq, ASR, BiDAF)这几个模型。
  • 另外随着句子的数量SS增加,效果退化,也说明了回答问题并不需要整片文档,只需要一些相关文档即可。
  • 随着句子的减少,尤其到SS=1,效果急剧下降,说明了选择适当的句子数量是重要的。而且,和baseline2比较,模型提升了很多,说明在Context zoom layer中的self-attention去识别相关联的句子也是重要的。

[1] Wojciech Zaremba and Ilya Sutskever. 2015. Reinforcement learning neural turing machines. CoRR, abs/1505.00521.
[2] Yi Tay, Luu Anh Tuan, and Siu Cheung Hui. 2018. Multi-range reasoning for machine comprehension. CoRR, abs/1803.09074.
[3]Shuohang Wang, Mo Yu, Xiaoxiao Guo, Zhiguo Wang,Tim Klinger, Wei Zhang, Shiyu Chang, GeraldTesauro, Bowen Zhou, and Jing Jiang. 2018. R ˆ 3 ˆ3 ˆ3:Reinforced reader-ranker for open-domain question answering.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

彭伟_02

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值