(33)[ICLR16] TOWARDS AI-COMPLETE QUESTION ANSWERING: A SET OF PREREQUISITE TOY TASKS

计划完成深度学习入门的126篇论文第三十三篇,FAIR的Tomas Mikolov领导发表的人机问答的论文。


ABSTRACT

机器学习研究的一个长期目标是产生适用于推理和自然语言的方法,特别是建立一个智能对话代理。为了衡量这一目标的进展,我们主张使用一组代理任务,通过回答问题来评估阅读理解。我们的任务从几个方面来衡量理解:系统是否能够通过链接事实、简单的归纳、推理等回答问题。这些任务被设计为任何旨在与人类对话的系统的先决条件。我们相信许多现有的学习系统目前无法解决这些问题,因此我们的目标是将这些任务分类为技能集,以便研究人员能够识别(然后纠正)他们的系统的缺陷。我们还扩展和改进了最近引入的内存网络模型,并证明它能够解决部分(但不是全部)任务。

 

1 INTRODUCTION

在机器学习中使用合成任务的历史很悠久,从帮助激发神经网络的XOR问题(Minsky & Papert, 1969; Rumelhart et al., 1985),来圈出和圈出那些有助于激发一些最著名的聚类和半监督学习算法的数据集(Ng et al., 2002; Zhu et al., 2003);事实上,一些著名的UCI数据集(Bache & Lichman, 2013)也是合成的(例如波形)。最近的工作延续了这一趋势。例如,在使用内存组件开发学习算法方面,使用合成数据集帮助开发Graves等人(2014)的神经图灵机和Weston等人(2014)的内存网络,后者与本工作相关。

对合成数据感兴趣的原因之一是,使用它可以更容易地开发新技术。众所周知,处理大量的真实数据(大数据)往往会导致研究人员使用更简单的模型,因为简单的模型和大量的数据胜过基于更少数据的更精细的模型(Halevy et al., 2009)。例如,相对于现有的竞争方法,语言建模的n -gram工作得很好,但是还远远不能成为真正理解文本的模型。作为研究人员,我们可能会陷入算法空间的局部极小值;开发合成数据是试图打破这一局面的一种方法。

在这项工作中,我们提出了一个框架和一套综合任务的目标,以帮助开发用于文本理解和推理的学习算法。虽然在一般对话(AI的长期目标)中自动评估代理的性能相对比较困难,但是评估输入问题的响应相对容易,即,即问答(QA)的任务。问题回答非常广泛:你能想到的任何任务或多或少都可以应用到这个设置中。这使我们能够在一个共同的框架下提出一系列广泛的不同任务,测试不同的学习算法的能力。

我们的任务是通过对物理世界的统一底层模拟来构建的,类似于经典的文本冒险游戏(Montfort, 2005),玩家可以在其中操纵对象并进行彼此交互。仿真运行时,同时生成接地文本和问题答案对。我们的目标是将不同类型的问题分类为技能集,这成为我们的任务。我们希望通过对这些任务性能的分析,能够发现现有模型的不足之处,并激发新的算法设计来缓解这些不足之处。我们进一步将此设想为一个反馈循环,在此循环中,可以设计新的任务来响应,也许以一种敌对的方式,以便打破新模型。

我们设计的任务在第3节中详细介绍,在第4节中用于生成这些任务的仿真。在第5节中,我们给出了我们任务的标准方法的基准结果,并分析了它们的成功和失败。为了举例说明我们所设想的算法开发和任务开发之间的反馈循环,在A节中,我们对最近的内存网络方法提出了一组改进,该方法在QA中表现出了良好的性能。我们证明了我们提出的方法确实提高了一些任务的性能,但仍然不能解决其中的一些问题,我们认为这是开放的问题。

 

2 RELATED WORK

最近出现了几个使用基于qa的策略进行语言理解的项目。与对话或总结之类的任务不同,QA很容易评估(特别是在真假或多项选择的场景中),因此它是一个很有吸引力的研究途径。难点在于问题的定义:这些问题必须由成年人(或儿童)明确回答,但仍需要一些思考。艾伦人工智能研究所(Allen Institute for AI)的旗舰项目“ARISTO”围绕一系列QA任务展开,这些任务来自于难度越来越大的四年级、八年级和十二年级的科学考试。理查森等人(2013)提出了MCTest一组660个故事和相关问题,用于研究文本的机器理解。每个问题都要求读者理解故事的不同方面。

这两项倡议朝着有希望的方向发展,但对这些基准的结果的解释仍然很复杂。的确,没有系统尚未能够完全解决提出的任务,因为许多子任务需要解决回答的问题(指称相同、演绎、使用常识等等),很难清楚地识别这些系统的功能和限制,从而提出改进和修改。因此,从这些项目中得出的结论并不比从更传统的基于大规模知识库的QA工作中得出的结论更清晰(Berant et al., 2013;Fader,2014)。此外,性能最好的系统是基于手工制作的模式和特性,以及/或在非常大的语料库上获得的统计数据。很难说这样的系统能够真正理解语言,而不仅仅是对传统信息提取方法的简单升级(Yao et al., 2014)。Berant et al.(2014)的系统更加进化,因为它构建了文本和待回答问题的结构化表示。尽管这种方法有潜力,但它仍然具有很强的领域特异性,并且依赖于大量的先验知识。

基于这些观察,我们选择设想一系列简单得多的QA任务,其主要目标是系统在其中任何一个任务上的失败或成功都可以明确地提供关于其功能的反馈。在这一点上,我们接近Winograd Schema Challenge Levesque等人(2011),它是围绕一个简单的语句组织起来的,后面是一个简单的二进制选择问题,比如:Joan一定要感谢Susan对她的所有帮助。谁得到了帮助?琼和苏珊吗?。在这个挑战和我们的任务中,解释结果是很简单的。然而,Winograd的挑战主要集中于评估系统是否能够获得和使用声明中没有表达的背景知识,我们的任务是自包含的,而且更加多样化。自包含意味着我们的任务同时具有培训数据和评估数据,而不是像ARISTO和Winograd挑战那样只有后者。mct火车/测试分裂但训练集可能太小,捕获所需的所有推理测试集上做得很好。在我们的设置一个可以评估所需的训练例子表现良好(可根据需要增加)和常识性的知识和推理所需的测试集应该包含在训练集。在多样性方面,我们的一些任务相关的现有设置但我们也提出许多额外的;任务8和任务9的灵感来自于之前关于基于lambda依赖的复合语义的工作(Liang et al., 2013)。对于我们来说,每个任务都检查系统必须具备的一项技能。我们假设,在所有这些方面都做得很好是任何旨在理解和推理全文的系统的先决条件。

 

3 THE TASKS

(33)[ICLR16] TOWARDS AI-COMPLETE QUESTION ANSWERING: A SET OF PREREQUISITE TOY TASKS

Principles

我们的主要想法是提供一组任务,以类似于在计算机科学中构建软件测试的方式。理想情况下,每个任务都是一个叶子测试用例,尽可能独立于其他任务,并以最简单的方式测试预期行为的一个方面。后续(非叶子)测试也可以通过测试组合在这些基础上进行。这些任务可以在http://fb.ai/babi上公开获得。生成任务的源代码可从https://github.com/facebook/bAbI-tasks获得。

每个任务都提供一组培训和测试数据,目的是使成功的模型能够很好地处理测试数据。在Weston等人(2014)之后,训练集的监督由问题的真实答案和回答给定问题的相关陈述组成,学习者可能使用这些陈述,也可能不使用这些陈述。我们设置任务,使正确的答案被限制在一个单词(问:马克在哪里?答:卫生间),或者其他单词列表(问:马克持有什么?)作为评价是明确的,并被简单地衡量为正确或错误。

所有的任务都是无声的,一个能够阅读语言的人可以达到100%的准确率。我们试着选择对人类来说很自然的任务:它们基于简单的日常情况,不需要任何背景知识,比如形式语义、机器学习、逻辑或知识表示,而成年人解决这些问题是必需的。

数据本身是通过一个简单的模拟字符和对象在位置上移动和交互而产生的,如第4节所述。仿真允许我们在许多不同的场景中生成数据,这些场景中的真实标签是通过仿真的基础而知道的。对于每个任务,我们通过给出数据集的一个小样本来描述它,其中包括表1和表2中的语句、问题和真实标签(红色)。

Single Supporting Fact

Task 1由一些问题组成,在这些问题中,前面给出的一个支持事实(可能在一组其他不相关的事实中)提供了答案。我们首先测试其中一个最简单的例子,询问某人的位置,例如Mary travel to the office。玛丽在哪里?。Weston等人(2014)已经采用了这种任务。它可以被认为是一些真实世界QA数据集中最简单的例子,如Fader等(2013)。

Two or Three Supporting Facts

一个更难的任务是回答两个支持性陈述必须连接在一起的问题,就像在任务2中,要回答足球在哪里?一个人必须把两句话的信息结合起来,约翰在操场上,约翰拿起了足球。同样,Weston等人(2014)已经使用了这种任务。同样,我们可以用三个支持的事实来做一个任务,在任务3中给出,其中前三个陈述都需要回答厨房前的苹果在哪里?。

Two or Three Argument Relations

要回答问题,区分和识别主语和宾语的能力是至关重要的。在task 4中,我们考虑了一个极端的情况,即句子中出现了重新排序的单词,即一堆单词不起作用。例如,卧室北面是什么?卧室在北面什么地方?有完全相同的单词,但不同的顺序,不同的答案。更进一步说,有时需要区分三个独立的参数。任务5包括一些语句,比如杰夫是比尔给的牛奶,然后询问是谁给的,是谁接受的,或者涉及到哪个对象。

Yes/No Questions

Task 6测试一些可能的最简单的问题(特别是有一个支持事实的问题),模型回答“John在操场上吗?”之类的真/假问题的能力。

Counting and Lists/Sets

Task 7测试QA系统执行简单计数操作的能力,方法是询问具有特定属性的对象的数量,例如“Daniel持有多少对象?”同样,task 8测试以列表形式生成一组单词答案的能力,例如“Daniel拿着什么?”这些任务可以看作与基本数据库搜索操作相关的QA任务。

Simple Negation and Indefinite Knowledge

任务9和任务10测试稍微复杂一点的自然语言构造。Task 9测试了最简单的否定形式之一,即支持那些暗示一个陈述是错误的事实,例如弗雷德不在办公室,而不是弗雷德去了办公室。(在本例中,task 6 (yes/no questions)是任务的先决条件。)任务10测试我们是否能够对描述可能性而不是确定性的语句进行建模,例如,约翰要么在教室里,要么在操场上。在这种情况下,问题的答案可能是约翰在教室里吗?。

(33)[ICLR16] TOWARDS AI-COMPLETE QUESTION ANSWERING: A SET OF PREREQUISITE TOY TASKS

Basic Coreference, Conjunctions and Compound Coreference

Task 11测试最简单的共参照类型,即检测最近的参照,例如Daniel在厨房。然后他去了演播室。现实世界的数据通常将其作为一个标记问题来处理,并研究更复杂的现象(Soon et al., 2001),而我们将其作为一个问题回答问题来评估其他所有任务。任务12(连词)测试在一个句子中涉及多个主题,例如玛丽和杰夫去了厨房。在代词可以指代多个角色的情况下,例如Daniel和Sandra去了办公室。然后他们去了花园。​​​​​​​

Time Reasoning

虽然到目前为止,我们的任务已经按照语句的顺序隐式地包含了时间,但是task 14测试了理解语句中时间表达式的使用情况,例如下午Julie去了公园。昨天朱莉在学校。,然后是关于活动顺序的问题,比如朱莉在公园前的什么地方?。真实世界的数据集处理评估时间表达式的任务,通常作为一种标记,而不是QA任务,如UzZaman et al.(2012)。

Basic Deduction and Induction

Task 15测试通过继承属性进行基本推断,例如绵羊害怕狼。葛楚德是一只绵羊。葛楚德怕什么?。任务16同样通过继承属性来测试基本的归纳。对归纳法和演绎法的全面分析显然超出了这项工作的范围,今后的任务应进一步分析更深入的方面。

Positional and Size Reasoning

Task 17通过询问彩色块的相对位置来测试空间推理,这是经典SHRDLU系统(Winograd, 1972)的许多组件之一。Task 18需要对对象的相对大小进行推理,灵感来自Winograd schema challenge (Levesque et al., 2011)中的常识推理示例。

Path Finding

task 19的目标是找到位置之间的路径:给定不同位置的描述,它问:如何从一个位置到达另一个位置?这与陈的工作有关。Mooney(2011)有效地涉及到一个搜索问题​​​​​​​。

Agent’s Motivations

最后,以最简单的方式,task 20问题,为什么一个代理执行一个操作。它解决了演员处于特定状态的情况(饥饿、口渴、疲倦……)然后他们采取的行动,例如,它应该知道饥饿的人可能会去厨房,等等。

如前所述,这些任务旨在促进机器学习算法的开发和理解。应该跨所有任务评估一个模型(而不是针对每个任务进行调优),然后应该在其他实际任务上测试同一个模型。

在我们的数据发布中,除了提供上述20个英文任务外,我们还提供(i)印地语任务;和(ii)打乱英语单词,使他们不再被人类读。一个好的学习算法应该在这三种情况下都能执行类似的操作,而使用外部资源的方法则不太可能做到这一点。

 

4 SIMULATION

我们所有的任务都是通过一个模拟生成的,它的行为就像一个经典的文本冒险游戏。这个想法是,在这个模拟中生成文本允许我们将使用的语言置于一个连贯的、受控的(人工的)世界中。我们的模拟遵循Bordes等人(2010)的方法;Weston et al.(2014),但有点复杂。

模拟的世界由不同类型的实体(位置、对象、人员)组成。以及对这些实体进行操作的各种操作。实体具有内部状态:它们的位置、它们是否在上面或里面携带对象(例如,桌子和盒子)、参与者的心理状态(例如,饥饿)以及属性(例如大小、颜色和可食性)。对于位置,附近连接的位置(例如东边或上面的位置)被编码。对于参与者,还可以为每个参与者指定一组预先指定的规则来控制他们的行为,例如,如果他们饿了,他们可能会试图寻找食物。如果没有设置规则,也可以执行随机有效的操作,例如随机走动。

参与者在仿真中可以执行的操作包括:go <location>, get <object>, get <object1> from <object2>, put <object1> in/on <object2>, give <object> to <actor>, drop <object>, set <entitity> <state >0, look, inventory and check <object >1。对这些操作施加一组通用约束,以增强模拟中的一致性。例如,一个参与者不能得到他们或其他人已经拥有的东西,他们不能去没有连接到当前位置的地方,不能丢弃他们没有的东西,等等。使用底层操作、参与者规则及其约束定义了参与者的行为。对于每个任务,我们限制该任务所需的操作,例如task 1只需要go,而task 2使用go、get和drop。如果我们把命令写下来,这给我们一个非常简单的故事,这是可执行的模拟,例如,乔去操场;鲍勃去办公室;乔让足球。这个例子对应于task 2。然后系统可以询问关于模拟状态的问题,例如,john在哪里?,足球在哪里?等等。我们可以很容易地计算出这些问题的真实答案,因为我们可以访问底层世界。

为了从语句和问题中生成更自然的文本,我们使用了一个简单的自动语法。每个动词都被分配一组同义词,例如,模拟命令get被替换为pick up、got、grab或taken, drop被替换为drop、left、丢弃或put down。同样,每个对象和参与者也可以有一组替换同义词,例如在task 11中用he替换Daniel。副词在一些任务中是至关重要的,比如时间推理任务14。

语言有很多方面还没有建模。例如,到目前为止,所有的句子都相对较短,几乎没有嵌套。此外,实体和词汇表的大小都很小(150个单词,通常每个任务使用4个角色、6个位置和3个对象)。希望定义一组定义良好的任务将有助于在模拟环境中以一种受控的方式评估模型,而这在实际数据中很难做到。也就是说,这些任务不是真实数据的替代品,而是它们的补充,尤其是在开发和分析算法时。

 

5 EXPERIMENTS

我们的任务比较了以下方法(在英文数据集上):(i)一个Ngram分类器基线,(ii) LSTMs(长短时记忆递归神经网络)(Hochreiter &amp;(iii)内存网络(MemNNs) (Weston et al., 2014), (iv)我们将详细介绍内存网络的一些扩展;(v)一个结构化的SVM,它包含来自现有NLP任务的外部标记数据。这些模型属于三个独立的轨道。弱监督模型只在训练时给出问题答案对,而强监督模型在训练时(不包括测试时)提供一组支持事实。强监督模型给出了弱监督模型的精度上界,即给定相同的模型类,其性能应优于弱监督模型。最后一个外部资源跟踪的方法可以使用来自其他来源的标记数据,而不仅仅是提供的训练集,例如协引用和语义角色标记任务,以及强大的监督。对于每个任务,我们使用1000个问题进行培训,1000个问题进行测试,并报告测试的准确性。如果获得95%的准确率,我们认为任务成功通过

(33)[ICLR16] TOWARDS AI-COMPLETE QUESTION ANSWERING: A SET OF PREREQUISITE TOY TASKS

Methods

基线的语法分类器基线的灵感来源于理查森et al .(2013),但应用于生产的情况下一个高频词的答案而不是一个选择题的问题:我们构建一个bag-of-N-grams故事中的所有句子分享至少一个词的问题,然后学习一个线性分类器使用这些features4预测答案。

LSTMs是一种流行的序列预测方法(Sutskever et al., 2014),在类似于我们的任务中,LSTMs的性能优于标准RNNs (Neural Networks, RNNs) (Weston et al., 2014)。他们通过阅读故事,直到他们遇到一个问题,然后必须给出一个答案。注意,它们只受答案的弱监督,因此与强监督方法或使用外部资源的方法相比处于劣势。

MemNNs (Weston et al., 2014)是最近提出的一类模型,已经证明在QA中表现良好。它们通过一个控制器神经网络工作,对由故事中先前语句组成的存储记忆执行推理。原始模型进行2跳推理:首先用问题找到第一个匹配得分最高的支持事实,然后用问题和找到的第一个事实同时找到第二个匹配得分最高的支持事实。匹配函数包括将问题和事实的单词包映射到嵌入空间中,并对单词嵌入进行求和。嵌入式这个词是通过强大的监督来优化QA任务来学习的。在找到支持事实之后,将执行一个最终的排序,根据这些事实对可能的回答(回答词)进行排序。我们还考虑了对这个模型的一些扩展:

  • Adaptive memories 执行可变数量的跳数而不是2,模型被训练来预测一个跳数或特殊的“STOP”类。类似的过程也可以应用于输出多个令牌。​​​​​​​
  • N-grams 我们试着用3-gram而不是bag word来表示文本。在这两种情况下,MemNN的第一步都是将这些转换为矢量嵌入。
  • Nonlinearity 我们在匹配函数中应用了经典的两层非线性神经网络。​​​​​​​

这些变体的更多细节在附录的A节中给出。

最后,我们使用结构化支持向量机(SVM)建立了一个经典的级联NLP系统基线,该基线包含了共参考分辨率和语义角色标记(SRL)预处理步骤,这些预处理步骤本身就是针对大量昂贵的标记数据进行训练的。斯坦福指称相同系统(Raghunathan et al ., 2010)和塞纳的语义角色标注(SRL)系统(Collobert et al ., 2011)是用于构建特征输入支持向量机,与强有力的监督训练,找到支持的事实,如基于词特征,词对,SRL动词和verb-argument对。在找到支持事实之后,我们为响应阶段构建了一个类似的结构化SVM,并针对该目标调整了特性。更多细节见附录B节。

使用训练集选择所有方法的学习率等超参数,我们对任务的实验结果总结如表3所示。我们分别给出了这20个任务的结果,以及最后两行中平均性能和失败任务的数量。

 

Results
标准MemNNs一般优于N-gram和LSTM基线,这与Weston等人(2014)的结果一致。然而,他们仍然在一些任务上失败;也就是说,测试精度低于95%。其中一些失败预期是由于建模能力不足,如第A.1节中更详细地描述的,例如k = 2事实,单个单词的答案和袋装单词无法在任务3、4、5、7、8和18上成功。然而,也有一些我们一开始没有预料到的任务失败,例如yes/no问句(6)和unknown knowledge(10)。事后看来,我们认识到标准MemNNs的线性评分函数不能模拟查询、支持事实和yes/no答案之间的匹配,因为这需要三种交互。

表3的第5-9列给出了MemNN扩展的结果:自适应记忆(AM)、n -g (NG)和非线性(NL),以及它们的组合。自适应方法在任务3和任务16中给出了一个直接的改进,因为它们都需要两个以上的支持事实,并且在任务8和任务19中给出了(小的)改进,因为它们需要多字输出(但仍然很困难)。因此,在随后的实验中,我们将AM模型与所有其他扩展结合使用。

当单词顺序很重要时,例如task 4和task 15,使用N-gram建模的MemNNs会产生明显的改进。然而,n -g在嵌入函数中似乎并不能代替非线性,因为NL模型的平均性能优于n -g,特别是在yes/no(6)和不定任务(10)中,如前所述。另一方面,NL方法不能对词序建模,因此在task 4上失败了。因此,显而易见的一步是将这些互补的方法结合起来:确实,AM+NG+NL(第9列)对这两种方法都提供了改进的结果,与原始的MemNN模型相比,总共有9个任务已经从失败升级为成功。

结构化支持向量机虽然可以访问外部资源,但性能并不好,仍然在9个任务中失败。在任务6、9和10中,它确实比普通的MemNNs(没有扩展)表现得更好,在这些任务中,手工构建的特性连接捕获了必要的非线性。然而,与MemNN (AM+NG+NL)相比,它在需要三个(有时是两个)支持事实的任务(比如任务3、任务16和任务2)上的表现似乎要差得多。然而,它的非贪婪搜索似乎对其他任务有帮助,比如搜索非常重要的路径查找(task 19)。由于它依赖专门为英语设计的外部资源,所以它不确定它是否能在其他语言(比如印地语)上表现得同样好,因为这些外部资源的质量可能更差。

最后两列(10-11)进一步分析了AM+NG+NL MemNN方法。倒数第二列(10)显示了达到95%准确率所需的最小训练示例数,如果1000个示例不能达到95%的准确率,则会失败。这一点很重要,因为它不仅需要出色地完成任务,而且还需要使用最少的示例(以便快速地很好地概括)。大多数成功的任务需要100-500个例子。Task 8需要5000个示例,而7需要10000个,因此它们被标记为FAIL。后一项任务可以通过添加一个对象被拾起的所有时间,然后减去它被丢弃的时间来解决,看起来MemNN是可能的,但它并不完美。两个任务,位置推理17和路径找到19不能即使解决10000例,似乎那些(事实上更高级形式的归纳和演绎,我们计划建立需要建立一个通用的搜索算法的推理过程,而MemNN(和其他方法尝试)缺乏。

最后一栏显示了AM+NG+NL MemNNs在对所有任务进行联合训练时的性能,而不是只针对一个任务。该模型的性能大体上是令人鼓舞的相似,表明该模型可以同时学习文本理解和推理的许多方面。主要的问题是,这些模型在一些任务上仍然失败,并且使用了一种比通常实际情况强大得多的监督形式(使用支持事实)。

 

6 DISCUSSION

A prerequisite set

我们开发了一套任务,我们认为这是充分理解和推理语言的先决条件。虽然任何能够解决这些任务的学习者并不一定接近完全推理,但如果一个学习者在我们的任务中失败了,那么很可能在现实世界的任务中也会失败(例如,现实世界的任务也需要同样的推理)。即使任务的情况和语言是人为的,我们认为,学习如何解决这些问题所需的机制是文本理解和推理的关键。

A flexible framework

这组任务并不是一个确定的集合。基于模拟的方法的目的是提供任务构造的灵活性和控制。我们将任务转换成语言,因为这样就更容易理解任务的有用性并解释它们的结果。然而,我们的主要目标是找到能够学会检测和组合符号序列中的模式的模型。人们甚至可能想要减少内在的困难,消除任何词汇的可变性、模糊性和理性,只对裸露的符号,从他们的语言意义剥离。我们还可以将长期记忆与系统的推理能力联系起来,例如,将支持事实安排在离问题更近的地方。相反,可以使用注释器或更复杂的语法将任务转换为更真实的故事。这里展示的20个任务是通过模拟可以实现的功能的子集。我们选择它们是因为它们提供了我们希望文本推理模型拥有的各种技能,但我们希望来自社区的研究人员将开发更多具有不同复杂性的任务,以便开发和分析试图解决这些问题的模型。跨任务转移学习也是一个非常重要的目标,超出了本文的范围。因此,我们已经公开了用于这些目的的模拟器和任务代码。

Testing learning methods

我们的任务被设计为学习方法的试验台:我们提供培训和测试集,因为我们打算评估模型的能力,以发现如何从模型中隐藏的模式进行推理。为它们手工编码解决方案或使用现有的大规模QA系统(如Cyc)可能很有吸引力(Curtis et al., 2005)。即使我们的结构化SVM结果(一个具有手工构建特性的级联NLP系统)表明这并不简单,它们也可能成功地解决这些问题;然而,这不是任务的目的,因为这些方法不是学习解决它们。我们的实验表明,一些现有的机器学习方法是成功的一些任务,特别是记忆网络,为我们介绍了一些有用的扩展(在秒。)。然而,这些模型仍然失败的几个任务,并使用一个更强有力的监管比通常是真实的(使用支持的事实)。

这些数据集尚未解决。未来的研究应该致力于将解决新任务所需的监督量以及训练实例的数量降到最低,从而更接近人类的任务转移能力。也就是说,在只有1000个或更少训练实例的弱监督情况下,没有已知的通用(即非手工工程)方法来解决任务。此外,重要的是,我们希望通过开发更具挑战性的任务的反馈循环,然后通过算法来解决这些任务,从而引导我们走向富有成果的研究方向。

请注意,这些任务不是真实数据的替代品,而是对它们的补充,尤其是在开发和分析算法时。现实世界中有许多互补的数据集,如Hermann et al. (2015);Bordes等(2015);Hill等人(2015)。也就是说,即使一个方法在我们的20个任务上运行良好,它在实际数据上也应该是有用的。

Impact

自上线以来,bAbI任务已经直接影响了几种有前途的新算法的开发,包括Sukhbaatar等人(2015)的弱监督端到端内存网络(MemN2N)、Kumar等人(2015)的动态内存网络和神经推理器(Peng等人,2015)。此后,MemN2N被证明在一些实际任务中表现良好(Hill等,2015)。

 

上一篇:715B Complete The Graph


下一篇:Kubernetes(K8s)(五)——在K8s集群上搭建redis和docker的留言簿