【论文总结】《Neural Reading Comprehension and Beyond(2018,第一部分)》(阅读理解任务综述)

本文介绍了阅读理解的历史,从基于规则的传统方法到机器学习,再到深度学习方法的进步。深度学习的转折点在于大规模数据集如CNN/DAILY MAIL和SQUAD的出现,以及注意力机制的引入。当前模型虽然在SQUAD等数据集上超过人类,但仍面临词汇匹配依赖、鲁棒性不足和推理能力弱的问题。未来的研究方向包括数据集的多样化、模型的鲁棒性和可解释性提升,以及结构和表示的优化。
摘要由CSDN通过智能技术生成

写在前面:Danqi Chen的这篇论文很好地概括了从1977年以来的阅读理解领域发展,通读一遍对初学者(我)也是受益匪浅,文章以“数据集和模型的相互促进”为脉络,穿插讲解了各种数据集和模型方法的发展,并拿自己的一个典型模型做了详细讲解,值得一读。我在这里基本是对论文内容进行了压缩和总结,我自己的想法以引用块的形式写在中间。

《Neural Reading Comprehension and Beyond》

1. introduction

NLP问题是人工智能领域最难以捉摸并长期存在的挑战之一。
理解人类语言意味着什么?NLP致力于解决几个不同方面的不同任务。包括以下

  • 词性标注
  • 命名实体识别
  • 语法解析
  • 指代消解
  • 其他更多任务

而阅读理解任务——给定一篇文章,要求回答针对文章的理解性问题——被认为是可以综合检验这些方面的一种恰当的方法,并可以探索更深层次理解。计算机系统必须理解文本的各个方面才可以正确回答问题,所以可能是评估语言理解的最合适的任务。

如何构建一个能够处理阅读理解任务的计算机系统?曾经,人们使用基于特征的模型,而如今,人们更关注神经阅读理解( neural reading comprehension ),使用深度神经网络建立阅读理解模型。它被证明更有效,而且推动了这个领域的发展。

最近阅读理解的成功被认为是两个原因推动的:

  1. 大规模有监督数据集
  2. 各种神经阅读理解模型

本文的上半篇将包括以下方面:

  • 问题的形成
  • 系统构建模块和关键成分
  • 理解当前的工作哪些可以做得更好,哪些依然落后

本文下半篇中,作者认为如果能构建高性能的阅读理解系统,那么它对问答和对话系统都可以起到关键的推动作用。为了证明这一点,本文探索了应用神经阅读理解技术在两个应用领域——开放领域问答和会话形式问答——的可行性。

阅读理解任务相比于那些子任务确实更具综合性。人类评价学生的语言能力,一是考作文,再就是考阅读理解了,所以使用阅读理解来对机器的语言能力进行评判是非常自然、容易接受的。作文这个领域目前研究的尝试应该是生成式模型,但现实情况是现在连一个公认的评判标准都很难找到。阅读理解问题中,也有生成式(自由)问答问题,这方面进展也还不是很行,一个原因也是没有评判标准。
目前来看,基于深度学习的神经阅读理解模型在各个领域都超过了传统的特征方法,它被证明是有效的,也是现在最好的方法。如论文作者所说的两个原因,大规模数据集就像是更好的教科书,而模型的发展又可以让人们了解数据集的不足,它们相辅相成。


2. 历史

2.1 传统方法

1977年,Lehnert提出了QUALM,一个基于脚本和计划(plans)的框架,专注于语用问题,以及故事的上下文在问题中的重要程度实现阅读理解建模。使用手工编码的脚本,规模很小,难以泛化。

在80年代和90年代,由于认为过于复杂,这方面研究被忽视。

1999年,一些小的数据集被建立,例如(Hirschman, 1999 ),和ANLP/NAACL 2000的研讨会上发布的数据集,包括小规模(60个开发,60个测试)的故事,包含一些简单的问题,并只需要返回包含正确答案的句子。这一阶段系统主要是基于规则的bag-of-word方法,例如(Hirschman, 1999 )的DEEP READ使用词干分析(stemming),语义类识别(semantic class identification),指代消解(pronoun resolution )等,最高准确度30-40。

传统的方法是基于语言学规则的,且建立在小规模数据集上,效果很一般。

2.2 机器学习方法

2013-2015年间,人们尝试将阅读理解定义为一类有监督问题,将**(文章、问题、答案)**三元组的形式建立标注数据集,希望可以训练模型
f ( p a s s a g e , q u e s t i o n ) → a n s w e r f (passage, question) \rightarrow answer f(passage,question)answer
在此期间,有两个值得关注的数据集被提出:

  • MCTEST ( Richardson et al., 2013 ) ,收集660个虚构的故事,每个故事有4个问题,每个问题4个备选答案,单选正确答案。
  • PROCESSBANK ( Berant et al., 2014 ),收集200余描述生物过程的段落,585个二选一问题,问题要求理解过程中的实体和事件中的关系。

MCTEST发布时提出了两种基线方法:

  1. 启发式滑动窗口方法,对每一个在文章上滑动的窗口,测量它与问题、答案之间的重叠/距离信息
  2. 将每个问答对转换为一个语句,运行现成的文本蕴涵(textual entailment)系统

这个数据集启发了一系列ML模型,大多建立在一个简单的max-margin学习框架上,应用一系列手工设计的特征句法依赖syntactic dependencies、语义框架semantic frames、指代消解 coreference resolution、篇章关系discourse relations和单词嵌入word embeddings)。在此期间该数据集的性能从63提升到了70左右。

相比于基于规则的方法,这些ML方法取得了一定进展,但仍相当有限,缺点有:

  • 严重依赖现有语言工具,现有语言工具通常由于泛化问题,会在实际中引入噪声(即语言工具本身带来的噪声)
  • 仍无法模拟人类水平的语言,因为特征需人工设计,但很难构建语言表征中构建有效的特征。
  • 数据集太小,无法支持表达性统计模型。例如MCTEST中训练示例只有1480个。

机器学习方法由于上述两个数据集启发,多数使用了语言工具构建的特征作为输入,这造成输入向量稀疏且难以判断是否有效,且因为语言工具本身自带误差(噪声)数据集又很小,这个工作很难进行。但是,这些手工特征在现在的深度学习时代仍然可以作为附加信息来提升效果。下文提到了以后的模型可能会分模块、子任务,如果这是发展趋势,也许以后的模型中,仍然非常依赖这些手工特征。具体的一个例子在3.1节有叙述。

2.3 深度学习方法

2015年出现转折,Hermann 等人 ( 2015 ) 提出了一种新颖而廉价的方案,用以生成大规模阅读理解监督数据集,并发布了CNN/DAILY MAIL数据集

该数据集创建逻辑是:CNN 和《每日邮报》附有一些要点总结了文章中所包含的信息。他们将新闻文章本身作为passage在要点中,使用placeholder标记替代一个实体,并给每一个实体四个候选答案,而正确答案就是被替代的实体。这样就将之转换为了一个完形填空的问题。这个过程可以自动化进行,所以该数据集创建成本极低,包含近一百万个数据示例

在数据集中,已经运行了实体识别和指代消解系统,会将所有的实体替代为一个抽象的标记(例如:@entity6, 见图1)。图1

图1

提出这个数据集的同时,Hermann 等人 ( 2015 ) 也提出了一个神经网络模型——基于Attention机制的LSTM模型,称为THE ATTENTIVE READER——并证明它在很大程度上优于符号 NLP 方法,取得了63.8%的准确度。

更进一步,Chen (本论文作者)等人在2016年提出了一个模型将性能提高到了72.4%,证明了与传统的特征分类器相比,神经网络能够更好地识别词汇匹配和意义(将在下文中介绍)。但该数据集本身由于构建方法,存在很大噪声,对推动领域进展作用有限

为了解决CNN/DAILY MAIL数据集存在的问题,Rajpurkar 等人 ( 2016 ) 收集了一个名为 STANFORD QUESTION ANSWER DATASET ( SQUAD ) 的新数据集。数据集包括107,785个问答对,建立在536篇维基百科文章上,而问题是由众包工作者提出的,每个问题都对应文章中的一段话(a span of text)。这是第一个大规模的自然问题阅读理解数据集,成为了领域的中心基准,启发了一系列新的模型。截止18年10月,最好的单一系统实现了91.8%的F1得分,超过了91.2%的人类表现。而作者在最初基于特征的分类器只取得了51%。

目前在SQUAD上表现最好的模型都是基于端到端神经网络(或者说,深度学习模型)上的。它具有几个优点:

  • 不依赖语言学特征,所有特征都是在一个统一的端到端框架中学习来的,避免了语言工具带来的噪声,并在特征空间中提供了更好的灵活性。
  • 使用word embedding获取的稠密向量,可以解决符号系统中特征稀疏,且泛化性能差的问题。
  • 概念上更简单,研究重点可以转移到模型结构的设计。

虽然SQUAD数据集上的模型的表现已经超过人类,但是并不能表示阅读理解任务已经完成。SQUAD也是有限的,大多数例子非常简单,不需要复杂推理。而如今,阅读理解已经成为NLP中最活跃的领域之一,有许多待解决的问题也变得备受关注关注。目前随着领域逐渐火热,也涌现了更大的,更有挑战性的数据集。这些数据集将在下文第四节中详细介绍。它们的目的是应对之前很多没有被解决的挑战,例如:独立于段落的问题,需要多个句子甚至多个文档回答的问题,基于长文档(例如一本书)的问题,或者不能从段落中回答的问题。

深度学习方法在新的大数据集中已经被证明是优于传统的特征方法、符号规则方法。
作者从数据集的发展穿插模型方法的发展,证明了在introduction里描述的论点:本领域的发展是这两个方面推动的。如何构建数据集,如何构建模型是始终贯穿这条历史线路的问题。而现在,许多问题仍待解决,针对这些问题的数据集也等待着新的模型方法去挑战。


2.4 Task Definition

阅读理解任务可以被描述为一个 监督学习 问题。给定一组训练数据{ ( p i , q i , a i ) (p_i,q_i,a_i) (pi,qi,ai)} i = 1 n ^n_{i=1} i=1n,目标是训练一个预测器f(大多数情况是分类器),使得
f ( p i , q i ) → a i f (p_i, q_i) \rightarrow a_i f(pi,qi)ai
我们可以把现有的阅读理解任务分为四类:

  1. 完形填空(Cloze style),在这些任务中,问题包含一个占位符,系统必须根据文章,选择一个答案匹配该占位符。例如CNN/DAILY MAIL (Hermann et al., 2015)。评估非常简单,按传统分类即可。
  2. 多项选择(Multiple choice),(实际上单选题),从k个假设答案中选择正确答案。例如MCTEST (Richardson et al.,2013)。评估方式如完形填空。
  3. 范围预测(Span prediction),也被称为抽取式问答(extractive question answering),答案是文本中一个范围,可以表示为 ( a ^ s t a r t , a ^ e n d ) (\hat{a}_{start}, \hat{a}_{end}) (a^start,a^end)。例如SQ U AD (Rajpurkar et al., 2016)。评估需要将预测的答案与正确答案进行比较,通常使用 Rajpurkar 等人 ( 2016 ) 提出的两种评估指标,精确匹配(EM)和F1得分。收集每个问题的多个正确答案也很常见。
  4. 自由形式问答( Free-form answer ),允许答案是任意形式、任意长度的文本。例如NARRA-TIVE QA (Kocisky et al., 2018) 。目前还没有最理想的评价标准。常见的方法是使用在自然语言生成 ( NLG ) 任务中使用的标准评估指标,如机器翻译或摘要,包括 BLEU ( Papineni et al., 2002 )、Meteor ( Banerjee 和 Lavie, 2005 ) 和 ROUGE ( Lin, 2004 )。

精确匹配方法是,如果预测的答案等于正确答案,则精确匹配 ( EM ) 将分配满分1.0分,否则将分配满分0.0分。

F1得分计算答案和正确答案之间的平均单词重叠,计算方式不在此列出,百度。

2.5 阅读理解与QA问题

尽管可以把阅读理解看作是问答的一个实例,因为它本质上是基于一篇短文的问答问题。但是,他们最终强调了不同的目标。

  • 问答的最终目标是建立一个能够自动回答人类提出的问题计算机系统,系统可以依赖任何资源。
  • 阅读理解强调的是文本理解 ( text understanding ) 和一些被认为是衡量语言理解程度的尖锐问题。

3. 阅读理解的模型介绍

3.1 先前的方法:基于特征的模型

论文作者在2016年时,在CNN/DAILY MAIL 数据集上提出了两个模型,一个基于深度学习,一个基于特征。在基于特征的模型中,任务描述为:

ε ε ε 是候选的答案集合,对每个候选实体 e ∈ ε e\in ε eε,根据文章 p p p 和问题 q q q 构造一个特征向量 f p , q ( e ) ∈ R d f_{p,q}(e)\in \mathbb{R}^d fp,q(e)Rd,并学习一个权重 w ∈ R d \bf{w}\in \mathbb{R}^d wRd ,使得正确答案 a a a 满足:
w T f p , q ( a ) > w T f p , q ( e ) , ∀ e ∈ ε \bf{w}^T f_{p,q}(a)>\bf{w}^Tf_{p,q}(e), ∀e\in ε wTfp,q(a)>wTfp,q(e),eε
建模 f p ,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值