ACL 2019 RC&QA扫读

感觉自己读论文的进度太慢了,ACL还没看几篇,EMNLP已经挂出来了一堆了。。。还是赶快读读,反正都是给自己看的,有的不太感兴趣或者觉得不太有意思的就随便写几句好了。。。每篇应该都是在一句话解决问题吧,偷个懒。。

ACL 2019

  • Reinforced Dynamic Reasoning for Conversational Question Generation
    • 对话问题生成,想要生成CoQA那样的数据集,基于seq2seq的架构,动态决定对话状态历史和文档的交互次数。是先生成问题,然后通过PG的方法来让QA的model的得分作为reward来指导问题的生成。感觉只是在提出一个CQG的任务,没有比较过多的baseline,也没有很多对话的东西。
    • 数据集:CoQA
  • Synthetic QA Corpora Generation with Roundtrip Consistency
    • 是做问题生成的一篇short paper,也是google在年初登顶squad2.0和NQ的方法之一,另一个就是wwm了。感觉上亮点在于提出了一个往返一致性检验的东西来衡量生成的问答对的质量,但是因为自己看的QG文章还不够多,不知道之前有没有人做过。用训练好的reader(A)找到所有answer span(这一步主要目的是选出可能成为answer的span)所以不需要考虑问题作为输入,然后生成问题,再用另一个reader(A’)回答这个问题,如果能答出span则加入数据集。同时他是用BERT来做问题生成的,而且生成出大量的问题来进行预训练。
    • 数据集:SQuAD, NQ
  • Generating Question-Answer Hierarchies
    • 提出了一种新的document的表示方法,即用问答对的形式逐渐从high-level的层次上逐渐关注到specific的信息。模型是一个pipeline的结构,把generic/specific的标签,paragraph,answer span一起送入一个seq2seq的模型来生成问题。他们也是先确定了answer span,再进行问题生成。然后生成好的问题,会在用一个bidaf++来进行过滤掉低质量的qa对,最后根据规则(每个specific的qa对找一个generic的作为父亲)得到一个层级结构。文章似乎问了生成不同种的问题用了一些和前人相比的trick,可能需要关注一下。
    • 论文相当于卖了一个新的任务,没有验证是否这样的表示真的对下游任务有用。实验评价在QuAC的开发集上做的人工评价。从case study上来看的确明显分出了generic和specific的,这个pipeline模型不足在于依赖QA model的质量,QA对生成独立,有回指等。感觉这种有特点的问题生成值得思考。
    • 数据集:SQuAD,CoQA,QuAC
  • Learning to Ask Unanswerable Questions for Machine Reading Comprehension
    • 师兄的论文,读了也听过报告了,就不赘述了
    • 数据集:SQuAD 2.0
  • Unsupervised Question Answering by Cloze Translation
    • 文章首次提出了unsupervised QA这个task,因为在不同领域或者语言下,标注RC数据集是很费事的。于是想自动生成这样的数据:首先选一篇document,然后抽出其中的名词词组或者命名实体,认为这部分是答案。QG则分为了两步:第一步先生成cloze类型的问题,第二步则用到unsupervised NMT的那套back translation来解决没有平行语料的问题。这也可以认为是一个风格迁移的任务。训练目标有些地方没看懂,需要之后在研究。
    • 数据集:SQuAD
  • Cross-Lingual Training for Automatic Question Generation
    • 这篇文章和上篇类似,想在没有平行语料的情况下,自动构建QA数据集,也用的无监督机翻那套auto encoder和back tranlation。但是不同之处在于,上一篇的没有平行语料是针对QA pair,而这篇关注于cross lingual。其实没什么有意思的地方。
    • 数据集:SQuAD
  • Asking the Crowd: Question Analysis, Evaluation and Generation for Open Discussion on Online Forums
    • 针对openQG,这也算个新任务,难点在于:评价方式更为困难,因为问题更加自由多样;而且缺少SQuAD那样的QA数据集。作者在OQRanD这个数据集上,进行了一些语言学方面的对问题的分析,然后在这个基础上对于究竟什么问题会得到更多有用的回答训练了一个模型,做question evaluate。然后在OQGenD这个数据集上进行QG实验,模型基于CGAN(conditional on the passage),因为需要生成出来句子,因此需要Policy Gradient来链接生成器和判别器。
    • 数据集:OQRanD,OQGenD
  • Interconnected Question Generation with Coreference Alignment and Conversation Flow Modeling
    • CQG相关工作重点看了一下。建模了对话的指代和问题的流动,指代是通过预先跑指代消解,让代词相应的输出概率更大,这个是直接弄进Loss里面的。问题和passage的相对关系则是通过embedding和loss一起搞得(因为有哪些句子重要的标记)。
    • 文章也提出来相比建模流,指代提升不大。
    • 数据集:CoQA
  • Incremental Transformer with Deliberation Decoder for Document Grounded Conversations
    • 不是QA相关,但是我一直感觉CQG就是类似于对话中的document grounded conversation一样。模型主要是由encoder和decoder组成:encoder除了传统的self-attention以外,还建模了一个增量Transformer,来表示每轮递增的引入信息,相当于建模了对话历史和document的整个上下文。decoder则是一个像人们识别过程的two-pass:第一轮先利用当前utterance和context作为输入生成一个结果,第二轮在此基础上加上document的信息生成真正最后的结果。这里面有点奇怪的是,第一个结果不知道是分布还是离散的token,第二个是如果是离散的话,他用的loss却还是MLE没有用强化学习,感觉只能看代码才知道了。不过大致意思已经知道了。他的two-pass的作用主要是第一步先生成对话主干,保证连贯性,第二步再引入知识进行修正。
    • 数据集:CMU发的一个document grounded conversation数据集。
  • Conversing by Reading: Contentful Neural Conversation with On-demand Machine Reading
    • 论文针对之前对话没有ground knowledge,提出要把MRC和回复生成一起建模:即利用对话相关的document和对话历史计算attention交互,然后把document表示成一个memory后,回复生成器在进行利用。
    • 感觉就是CQA啊。。只是侧重点变成了对话回复而已。。。感觉没什么新意,就是卖个任务,还不如之前提的document grounded conversation。
  • Reading Turn by Turn: Hierarchical Attention Architecture for Spoken Dialogue Comprehension
    • 这篇文章针对的RC不再是文章内容,而是一段对话场景。对话场景中用turn来建模语义单元比较合适,因而作者使用了分层attention的机制,粗粒度的是在turn之间,细粒度在word之间,取得了比baseline以及utterance要好的效果。但是全篇来说没什么新的想法。。。也没有给出具体解决痛点的方案。
  • Self-Attention Architectures for Answer-Agnostic Neural Question Generation
    • 意义不明的文章,把NQG的model用Transformer实现了一遍?然后发现没有原始的lstm好使,用了一堆trick:copy什么的,大家众所周知的东西强行调的没比别人高多少?这也能中ACL short???
    • 数据集:SQuAD
  • MCˆ2: Multi-perspective Convolutional Cube for Conversational Machine Reading Comprehension
    • 文章应该是follow去年在CoQA上的两个工作:FlowQA和SDNet。但是其实这两者的效果已经在BERT等后续模型的打击下很差了。文章把一个对话建模成三个维度:passage word和QA turn以及每个token的隐层维度,然后在这上面用了若干层卷积进行建模。。。注意一下在QA turn这一层的卷积是单向的。
    • 难得的还在CoQA上做模型的文章,SDNet已经被拒绝到今年ICLR被吐槽不要在投了,而这篇工作却能中ACL还是可以看出想法的新颖,奈何和现在的SOTA差距过大。
    • 数据集:CoQA
  • Entity-Relation Extraction as Multi-Turn Question Answering
    • 把实体关系抽取建模成了一个MRC任务,感觉一些想法可能用在CQG里面。但是看了一下QG部分用的是一些模板,而且QA也是用的类似标注形式处理,因为抽取问题一句话内会有多个mention。
    • 用了个强化学习来建模轮之间的决策。可以想想。。数据集都是RE的就不列举了。。
  • Inferential Machine Comprehension: Answering Questions by Recursively Deducing the Evidence Chain from Text
    • 针对阅读理解中的推理,提出了一种新的复杂模型,希冀得到类似于人针对RC的一步步推理链的过程。数据集主要是RACE这样的选择题。
    • 数据集:RACE,MCTest,MultiRC选择型RC
  • Token-level Dynamic Self-Attention Network for Multi-Passage Reading Comprehension
    • 多篇章的阅读理解问题,多篇章RC往往因为长度原因很难直接self-attention。于是提出了一个压缩self-attention的方法:选择top K的token进行dot-product而不是所有token,输出进行padding之类再attention,因为不是所有词都需要attention。感觉这种问题BERT因为长度只有512,倒是可以避开这些pre-train model。
    • 数据集:SearchQA, Quasar-T and WikiHop
  • Explicit Utilization of General Knowledge in Machine Reading Comprehension
    • 针对SQuAD这样的,提出了用WordNet来帮助阅读理解的方法:对WordNet里面词义相近的词强行进行fusion,增加他们attention的相关度。相比于在网络中引入KG embedding的方法,这种方法更加hard。感觉不如百度他们做的那个,当然百度那个做的也很没意思就是了。
    • 数据集:SQuAD
  • Enhancing Pre-Trained Language Representations with Rich Knowledge for Machine Reading Comprehension
    • 改进BERT,引入WordNet和NELL这样的KB的embedding来起到引入知识的效果。和上面那个类似。
    • 数据集:ReCoRD,SQuAD
  • Multi-style Generative Reading Comprehension
    • 做生成式阅读理解,提出了一种融合不同task/data的方法:在输入中引入一个Style label对应不同数据集任务。在测试的时候如果已知task/数据集就用对应的Style label。主要是融合了摘要生成和多种形式的QA(NLG和短一点的QA,具体看论文)在了一起,模型图看了一下感觉有点复杂的原因是弄了一堆细节。。不过Related work写了好多。。。
    • 数据集:MS MARCO 2.1 ,NarrativeQA
  • Retrieve, Read, Rerank: Towards End-to-End Multi-Document Reading Comprehension
    • 做多篇章文档的阅读理解,主要是TriviaQA和SQuAD的两个多文档版本变种。自己之前对multi-document RC不怎么了解,看了一下任务定义,仍然是要在一个文档内部找到答案的span,但是会提供的不在是一个段落或一篇文档,而是多个候选文档以供选择,类似搜索引擎。
    • 提出了一个集检索,抽取答案span,并对所有答案候选span进行重排序,再做选择。主要基于BERT做的,在检索过程中会剪枝去掉一些不可能的segment,然后再在候选的segment上进行抽取答案span。但是这些抽出来的答案span之间会有overlap,所以在重排序的时候,先通过一个设计的NMS的算法去掉这些情况,然后再在这些span上重新打一个分,然后再得到最终的答案。亮点在于训练的整个过程都是end-to-end的,而且引入了一个答案重排序的过程。在数据集上都带来了很多的提升。
    • 数据集:TriviaQA,SQuAD open,SQuAD document
  • Multi-Hop Paragraph Retrieval for Open-Domain Question Answering
    • 文章针对开放域问答,仍然采用了DrQA那套想法:先检索出来最相关的段落,然后在做RC的model。然后重点发在了多步上,而且体现在检索上。检索采用的是vector search,即q和paragraph之间计算相似度(MIPS)。但是在上一篇论文也提到了,多步推理往往问题和最后的答案之间是很难直接算语义相似度的,所以论文引入了reformulation layer来修改question的表示向量,进行第二次检索,这个过程实际上就是一个双向attention的计算过程。但好像没有专门验证这一步是否真的对涨点有效。。感觉模型还是在之前attention上交互来交互去,而且虽说是多步,但是好像因为HotpotQA大概只有两跳,就检索两次了。。。作者也说了未来研究方向可能包括模型自动决定检索几次,要不要检索。有意思的一个地方还在于针对SQuAD open和HotpotQA两个不同的数据集,模型的sentence和paragraph的策略效果不同,可能关键在于数据集的构成方式。。
    • 数据集:SQuAD open(single hop),HotpotQA(multi-hop)
  • E3: Entailment-driven Extracting and Editing for Conversational Machine Reading
    • 文章针对一个对话机器阅读理解任务的新形式(CMR, ShARC):这个任务要求模型会根据规则文本以及场景描述文本来回答用户的一个初始问题。这个初始问题是无法直接根据rule和scenario回答的,因为缺少一些信息,所以需要模型询问follow up question,最后回答的问题,选项只有yes/no/irrelevant,具体可能要看ShARC数据集介绍。文章提出的模型分为四个部分,Extraction类似于BERT抽出rule span,entailment模块则用于得到entailment-enriched的规则表示,这里面有些地方有点疑问:第一是模型中并没有显示的建模之前的对话和规则文本之间的蕴含关系的求解过程,而只是加入了类似于overlap的特征,而且这两个特征都是越大表示越相关,而模型接在后面的decision model也是有softmax我很奇怪模型究竟是否可以学到值越大就越不问。不过从case study效果上来说好像的确学到了。第二是为什么一定要加入overlap的特征,讲道理bert的self-attention是可以建模规则和对话历史的信息的啊?这点作者好像也这么觉得的,但是加入硬特征还是让效果变好了。Decision Model没什么好说的,就是分类器。而根据rule生成follow up question的过程则是用了两个decoder,一个生成rule span前面的和rule span后面的,也就是说生成的问题是正好把rule加在中间,感觉挺有意思的,不知道是不是数据集特点所导致。
    • 感觉可以研究一下如何避免重复问已经问过的问题,用在CQG里面。。。
    • 数据集:ShARC
  • Answering while Summarizing: Multi-task Learning for Multi-hop QA with Evidence Extraction
    • 文章针对需要考虑evidence的RC数据集,也就是hotpotqa这样的数据集。HotpotQA这样的数据集不但需要预测出answer span还需要提供能推理出answer span的evidence sentence集合,文章把抽supporting fact建模成类似于抽取式摘要的任务,和answer span的抽取做multi-task。而抽取句子模块QFE则使用RNN来建模之前抽取出来的句子以及问题本身和当前的关系。这其实是一个set,并且通过自适应的方法来限制抽取结束。这样作者觉得相当于考虑了这些supporting facts之间的交互关系。感到惊奇的是,这个模型没有用BERT,却在当时和BERT-based model达到了comparable的结果。。不过现在也是被吊打了。。。
    • 个人感觉这种直接抽句子的想法,在hotpotqa上也可以达到一定效果,那么可能真的不需要所谓的多步推理,还引入图网络来做这个数据集了?
    • 数据集:HotpotQA,FEVER
  • XQA: A Cross-lingual Open-domain Question Answering Dataset
    • 这篇文章首次把cross-lingual的设定引入OpenQA任务,其实本来以为是作者是花了大力气标了一波数据。没想到居然是利用了Wikipedia的trick收集了一波数据,而且并不是平行的语料:训练集是只有英语,dev和test上则会有其他若干种语言。但是需要注意的是不同种语言的问题分布其实并不相同,甚至是迥异的,这也造成了train和inference的gap。
    • 有意思的实验现象:multi-lingual BERT的zero shot的实验反而比先MT的实验效果要好,也就是在English训练在别的语言上测试。作者分析这是因为MT很难翻译好命名实体,而这个在QA系统中很关键。而Multi-lingual BERT则相当于学了跨语言的表示,同时作者也说multi-lingual BERT其实并没有学到深层的跨语言理解,而是学的一些简单的问题和候选段落的匹配。所以还是很难的这种任务。EMNLP上也有相关工作。
    • 数据集:XQA
  • Cognitive Graph for Multi-Hop Reading Comprehension at Scale
    • 这篇文章reading group讲过了,就不细说了:BERT+GNN模拟认知过程。
    • 数据集:HotpotQA(full wiki setting)
  • Multi-hop Reading Comprehension across Multiple Documents by Reasoning over Heterogeneous Graphs
    • 又是一篇针对multi-hop QA使用encoder+GNN的文章,但是感觉思路上并没有上一篇有意思。encoder是Bi-GRU,然后把Document,Candidate,Entity均和Query co-attention完了self-attention。最终得到文档,候选项,相关实体的表示作为图节点表示的初始化。这个图是一个异构图,但是这个图是根据一系列规则构成的因而显得没有上一篇那么有意思。。。为了解决over smooth的问题,引入了一个门控机制(ggnn)。
    • 实验部分有个吐槽:single model打不过一个模型怎么办,ensemble更多模型就好了。
    • 数据集:WikiHop,这个数据集是有候选选项,且为multi-document。
  • Explore, Propose, and Assemble: An Interpretable Model for Multi-Hop Reading Comprehension
    • 文章针对多文档需要多步推理的阅读理解问题。文章的主模型是一个三阶段的pipeline model,先根据问题检索出来一系列document,这些document会形成一个从问题相关实体的document的树,在选择文档的时候会有个memory来不断更新,以一步步检索出新的文档,也就是得到推理链。然后我们把这些树剖成链,然后在每条推理链上做答案选择。因为有多条链,所以最终会把每条链的答案的相关句子合并在一起,然后重新生成一个document来做,从而得到最终的答案。感觉和上面介绍的一些文章类似,而且较为复杂。看起来现在多文档多步推理的RC大家也都意识到要在检索上不断更新记忆表示了,以及候选项的rerank了。。。但是因为自己暂时不想碰,先不仔细看了。
    • 数据集:WikiHop, MedHop,都是选择型。
  • Multi-hop Reading Comprehension through Question Decomposition and Rescoring
    • 也是做HotpotQA,但是从如何分解多步推理的问题入手,把复杂的问题按照类型分解成若干可以单跳解决的子问题,然后进行学习。然后这样我们会通过这样类似规则的方式得到相应的答案和证据链,然后在进行一个重打分的过程,总体上是一个pipeline的结构。
    • 用了很少的标注数据来解决这个问题分解的问题。但是存在问题比如有错误级联的问题,还有就是有的问题可能只是隐式的甚至分解完的问题并不可能每个都有答案,需要常识的引入。而且说实话,感觉规则较为复杂,看了一下现在的排行榜已经较为靠后了,因此实验的具体细节还是看论文吧。
    • 数据集:HotpotQA
  • Dynamically Fused Graph Network for Multi-hop Reasoning
    • 还是HotpotQA Model。作者提出之前的GNN做多步推理都是固定了一个全局的graph,而不是动态的。因此本文提出一个动态的推理模型:从question中的实体开始推理两次找到最终的答案实体。实现是通过mask矩阵来实现的。而这样也可以隐式得到推理路径。
    • 不足之处在于首先有NER model带来的错误级联的问题,以及这种方法可能无法很好地解决comparable的问题。以及图本身还是一些规则产生的。
    • 数据集:HotpotQA
  • Avoiding Reasoning Shortcuts: Adversarial Evaluation, Training, and Model Development for Multi-Hop QA
    • 文章提出现在的所谓多步推理MRC数据集,eg.hotpoqa存在reason shortcut的问题。例如可能需要多步推理才能得到的信息,在干扰项的一个段落里面就存在,这也可能是因为数据集构造的过程导致的。而且这个现象很经常(26/50,文章采样的数据)。作者通过一些替换扰动的方法生成了一些adversarial examples。文章也考虑到了在多步推理过程中,问题的表示的侧重点是不断变化的,因此引入了一个control unit。
    • 文章提出了一些未来multi-hop的构建数据集的方向:提问的子问题不能过于泛化,导致根据一些别的文档shortcut的现象出现。同时也需要distractor的文档更具有干扰性。
    • 数据集:HotpotQA
  • Compositional Questions Do Not Necessitate Multi-hop Reasoning
    • 文章提出HotpotQA在构建多步推理的时候存在问题,使用single paragraph的结果就可以比现有考虑multi-paragraph的多步推理取得相似的效果。例如有的问题提问一种特定动物,但是候选段落里面只有一种动物。作者分析了HotpotQA的两种setting发现full wiki setting还是需要多步推理的。
    • 实验研究发现能一步完成的大部分是bridge questions,而真正需要多步推理的comparison questions是仍然无法被single-hop model解决。而且即使加入了干扰项,只要single hop模型在这些新加入的数据上进行训练,仍然可以解决。这一点倒是和上一篇文章有所区别。
    • 数据集:HotpotQA
  • Exploiting Explicit Paths for Multi-hop Reading Comprehension
    • 文章显示地建模多步推理MRC中的路径,路径也是由实体构成的。一开始先把路径抽出来,然后分成两个模块:context-based path encoding,即抽实体词在文本中的上下文表示,然后用神经网络得到基于路径的表示。另一个模块为passage-based path encoding,仅仅建模实体之间的联系不够,把实体所在的篇章也编码成一个vector,然后建模路径表示。然后每条路径分别和question活candidate打分,最后加和作为PathScore。
    • 感觉模型建模的还只是实体之间一些共现关系啊,感觉设置一些干扰项就会干扰模型啊。但是这种根据非结构化抽路径的想法还是值得思考,但是感觉这个方法还是过于粗糙了,类似上面hotpotqa那个根据规则建图。
    • 数据集:WikiHop,OpenBookQA这样的选择题
  • ELI5: Long Form Question Answering
    • 数据集类文章。提出了一个叫做ELI5的数据集,它和现有的数据集相比,具有更长的问题和答案形式,并且答案是multi-answer的形式。而且document的来源和长度都很长。下图为一个统计表格。评价方式为ROUGE。别的细节还是看论文吧。
  • Textbook Question Answering with Multi-modal Context Graph Understanding and Self-supervised Open-set Comprehension
    • VQA的一篇做模型的文章,模型有点复杂,对这方面也不了解,还引入了一个半监督的方法来解决数据集的特有的out of domain的现象。
    • 数据集:TQA,这个数据集不但文档里有文本还有图片,问题里也有文本和图片。
  • Generating Question Relevant Captions to Aid Visual Question Answering
    • 作者把Image caption和VQA结合起来,为VQA中的图片生成与问题相关的描述。具体模型还是看论文,我也没仔细看。感觉自己也可以想想什么任务是和主任务相关的,并有效的结合。
    • 数据集:VQA v2
  • Multi-grained Attention with Object-level Grounding for Visual Question Answering
    • 抽图片的时候不但抽visual feature还同时检测出物体的label,question的word会和label之间算attention,同时question的word-level和sentence-level也会和visual feature之间算attention。不知道这个有什么新颖的么= =。。。不过也是篇short而已。
    • 数据集:VQA v2
  • Improving Visual Question Answering by Referring to Generated Paragraph Captions
    • 没仔细看,好像是生成paragraph级别的图片描述对VQA任务进行帮助。
  • Open-Domain Why-Question Answering with Adversarial Learning to Encode Answer Texts
    • 文章针对why-QA任务,why-QA任务的答案往往在一个passage里面由多个不相邻句子组成,而且passage里面也有大量的冗余。文章基于前人解决Why-QA任务的SOTA模型,创新点在于通过对抗的手段引入了compact answer的表示。通过人工编写一部分Why-QA question的compact answer,作为real representation和候选Passage生成的fake representation来共同让discriminator来区分。
    • 值得关注的是,用对抗来解决中间表示缺少监督信号的问题。
    • 数据集:Why-QA(主要都是日文),Quasar-T,SearchQA,TriviaQA,SQuAD v1.1
  • Improving Question Answering over Incomplete KBs with Knowledge-Aware Reader
    • 针对不完整KB和大量document的QA任务,算是KBQA吧。模型中有一个GAT模块来收集KB的表示,这一部分需要考虑question和relation之间的匹配,通过两次attention。同时还需要考虑相连实体是否和question的实体集合相关。接下来在文本上做的时候,把KB embedding引入表示,这里面有个门控机制,最后在计算答案的时候既考虑KB中的实体表示也考虑实体相关文档的表示。
    • 数据集:WebQSP
  • MultiQA: An Empirical Investigation of Generalization and Transfer in Reading Comprehension
    • 是一篇实验分析类的文章。分析了现阶段若干RC数据集上的模型是否具有较好的泛化性,做了一些实验,有一些有趣的现象。
    • 作者也是MRQA 2019的组织者,如果以后要研究模型泛化性或者few shot之类的transfer的话这篇文章还得好好看看,结论就不赘述了。
  • Latent Retrieval for Weakly Supervised Open Domain Question Answering
    • 现在open QA系统往往都依靠IR系统,但是作者认为IR和QA是存在不同之处的,QA需要更多的语言理解。作者提出要学习一个learner的retriever,ORQA:retriever和reader一起训练。但这有个问题就是inference阶段的检索是有大量的搜索空间的,learner retriever不好学习,因此引入了预训练任务的想法:ICT任务。即给出一个句子,然后在一个文档集合中找到它的上下文。
    • 作者做实验发现了ORQA表现和数据集的bias出现了相关性:NQ等数据集因为提问者是不知道真正的答案,因此问题往往是真正的询问信息的形式,但是也引入了相关检索工具的bias。而SQuAD和TriviaQA则是提问者知道真正的答案,但也因此问题往往不是真实场景下的应用。而ORQA在前者表现都要好于BM25,还把SQuAD用的文档过少给喷了一遍,建议以后open qa都不要在这上面搞了。
    • 数据集:NQ,WebQuestions,CuratedTrec,TriviaQA,SQuAD
  • Episodic Memory Reader: Learning What to Remember for Question Answering from Streaming Data
    • 提了个新颖的任务:在内存有限的情况下,甚至不知道具体哪个片段会给出问题,如何在较长document中这样的stream data里做QA,如何选择有用的部分。文章把这个建模成一个强化学习任务,每次决策要把那个memory entry用新的代替。
    • 数据集:bAiB,TriviaQA,TVQA
  • Real-Time Open-Domain Question Answering with Dense-Sparse Phrase Index
    • 文章针对open domain QA的RC问题,着重解决如何加快train和inference阶段的时间,从而能用在real time中。论文引入了一个phrase index的概念,即先对document中的所有可能的phrase进行编码encode,这部分会考虑dense(bert)和sparse(由TF值构成one hot向量)两部分。作者认为这样既考虑了RC中的语义线索,同时还保证了IR需要的语言学特征。然后用相似的方法编码question,然后在inference阶段直接检索即可。
    • 没有在encoder过程中考虑document之间的信息,这里可能是可以考虑的。不过本文重点也不是在拼模型拼效果,而是在工业界如何使用计算更快存储更小的QA Model,所以也使用了一些搜索上的trick。但是从错误分析上来看,模型还是无法解决问题中有数字等一些需要推理判断的问题。
    • 数据集:SQuAD open
  • Improving the Robustness of Question Answering Systems to Question Paraphrasing
    • 文章研究现阶段RC模型的健壮性问题,采用的思路是使用paraphrase的技术改写问题来观察模型是否过度敏感等。一共有两个paraphrase的数据集:人工标的(Adv)和模型跑的。
    • 在这两个新数据集上,model的确都有很大下降,retrain以后有所提升。不过感觉这都是其实挺能接受的现象。文章也说其实未来可以考虑通过paraphrasing context。
  • RankQA: Neural Question Answering with Answer Re-Ranking
    • 也是一篇考虑如何把QA系统的IR和RC相结合的文章,也是用了个第三阶段re-rank。没想到按照这篇论文所说,前人没怎么尝试过这个东西。。。具体做法就是在re-rank网络里面同时考虑到IR和RC两阶段的所有特征,同时也考虑到答案聚合的时候合并带来的一些新feature,共同编码成向量输入到一个重排网络。
    • 训练的时候用到pair-wise rank loss和降采样等trick。
    • 数据集:SQuAD,WikiMovies,CuratedTREC,WebQuestions
  • Simple and Effective Curriculum Pointer-Generator Networks for Reading Comprehension over Long Narratives
    • 文章针对NarrativeQA这样的叙事片段或者小说上面的阅读理解任务。这种任务往往具有较长的context。文章引入了curriculum learning的概念,作者认为这个任务有两个困难:第一个是检索阶段,train的时候往往都用true answer作为线索(这个我其实并没有看到有什么依据,我看的Multi-document的model也都是按照问题来IR的啊??),而inference的时候则没有。因此设置了hard setting和easy setting(有无答案作为线索的区别)。还有一个问题就是分段大小的问题,分段多的话可以在检索过程中尽可能检索出来相关的信息,但是这样会导致每段都很小,理解能力的下降。这样也会有不同的setting。
    • 看了一下他这里用的课程学习,就是从easy的setting开始训练,然后等到dev集效果不再变化了就把一部分数据换成hard setting。然后一直这么做下去。
    • 数据集:NarrativeQA
  • Careful Selection of Knowledge to Solve Open Book Question Answering
    • 在openbookQA上做,openbookqa中有一个相当于知识库的由facts组成的open book,和传统的RC相比这个book要大很多。同时仅仅依靠这个检索到的facts是不够的,需要别的IR系统来辅助。同时这两部分检索到的知识需要进行互相推理才能得到正确的答案。
    • 作者引入了一种叫做Natural language Abduction的想法。即先通过把选项和问题合并起来作为一个先验假设检索openbook的知识,然后根据这一假设检索到的知识来进行一个归纳推理的任务得到缺少的知识。然后并再次进行检索验证。
    • 从实验结果来看,abduction反而是启发式规则更有效,应该是缺乏相应的监督信号,数据量过少?或者也有可能是错误级联,或者负例过多?但是感觉这个数据集的确刷的人有点少??
    • 数据集:openbookqa
  • Explain Yourself! Leveraging Language Models for Commonsense Reasoning
    • 文章构建了一个基于commonsenseQA的问答对的解释的数据集,并在此基础上训练了一个LM来得到一个基于问答对输入而产生对应解释的模型。然后用这个模型生成的解释来辅助QA任务的选项预测。从消融实验上来看,这么做的确可能产生了有用的信息。 没想到这么做具有噪音的方法的确可以在针对任务上work,不过作者也说现在产生的解释也大都带有bias,值得未来进一步探索。
    • 数据集:CommonsenseQA
  • TWEETQA: A Social Media Focused Question Answering Dataset
    • 一个水论文,就是个数据集而已,而且说BERT不好但是又没有在Twitter上finetune过LM,那肯定直接拿Wikipedia上训练的不好啊。。。现在看一下leaderboard已经被刷爆了,xlnet又吊打人类了。。。感觉这个数据集既不出名又没啥意思。。。
    • 数据集:TweetQA
  • Interpretable Question Answering on Knowledge Bases and Text
    • 针对KBQA model可解释性问题的文章,提出针对输入的扰动是比模型自身的一些可解释方法(例如attention权值)以及LIME更好的方法。
    • 不太懂这套理论。。。
  • NLProlog: Reasoning with Weak Unification for Question Answering in Natural Language
    • 感觉又看不懂了。。。感觉欧洲人就是喜欢在model里搞这种哲学一样的玄而又玄的推理问题。大概是要做multihop qa,然后想把自然语言文本转换成logic form,通过一个个logic form推导出最后的答案。没详细看。。。
    • 数据集:Wikihop,Medhop
  • Are Red Roses Red? Evaluating Consistency of Question-Answering Models
    • 很多文章都说现有的RC模型可能并没有真正理解能力,而这篇文章提的角度比较新颖,指模型可能并没有一致性能力,例如在VQA和SQuAD上训练的模型往往可以很好地回答一个问题A,但对于A隐式推理可以得到的一些问题,却无法给出答案。但是根据数据增强实验来看,这个consistency和accuracy之间存在trade off。
    • 数据集:VQA,SQuAD

NAACL 2019

  • A Qualitative Comparison of CoQA, SQuAD 2.0 and QuAC
    • 一篇分析三个RC数据集不同点的文章。分别从不可回答问题的性质,对话性质,和对于abstract answer来分析。其中对话性质,我比较关注:QuAC的topic经常会发生变化,并且覆盖context的句子只有30%左右,而CoQA则会更加频繁的深入研究细节,而且覆盖了60%。
    • 文章还提供了一些baseline系统的结果和upper bound。做了一些数据集上的迁移,发现不fine tune的效果都很差。
    • 数据集:SQuAD,CoQA,QuAC

发表评论

电子邮件地址不会被公开。 必填项已用*标注