1.摘要
本文介绍常识问答任务,主要关注融合外部知识的常识问答模型。首先介绍几个常识问答的 基准 评测数据集,然后总结了一些在 常识推理 中常用的结构化和非结构化 知识库 ,最后根据知识的融合方式介绍了三类融合外部知识的常识问答模型:使用预训练融合常识知识、使用关系网络融合常识知识和使用 图 神经网络 融合外部知识。
2.正文
当人类回答一个问题时,我们经常会不自觉地利用关于空间关系、因果关系、科学事实和社会习俗等常识和背景知识。例如,如果问“当李明听到割草机的声音时,他最有可能位于哪里?”,我们可以推断出割草机离李明很近,李明很有可能在街道旁行走。这种类型的知识对人类来说似乎微不足道,但是这超出了当前的 自然语言理解 (NLU)系统的能力范围。为了让机器也具有 常识推理 能力,很多学者在解决需要常识的问答任务时都引入了外部知识,既期望模型能够利用外部知识作出正确的判断,也期望模型能够给出使用到的显式的、可解释的证据。引入的外部知识可以是结构化的 知识图谱 (如ConceptNet),也可以是非结构化的文本语料(如Wikipedia)。接下来我们分为三部分,首先介绍几个常识问答数据集评测 基准 ,然后介绍在 常识推理 中常用的结构化和非结构化 知识库 ,最后根据知识融合的方式介绍近几年提出的融合外部知识的常识问答模型。
2.1常识问答数据集
当前大多数问答模型主要关注的问题类型是事实类问题(factoid questions),这种类型的问题答案往往能直接在原文中找到,然而如何基于常识和背景知识进行推理以获得答案仍旧是一个巨大的挑战。数据集 CommonsenseQA [1]、CosmosQA [2]等相继被提出便是为了促进该方向的发展。
(1) CommonsenseQA
CommonsenseQA数据集由以色列特拉维夫大学构建,是一个多项选择题的常识问答数据集,它需要不同类型的常识知识来预测正确的答案,是极具有挑战性的数据集。为了确保使用常识知识来回答问题,每个问题都包含来自ConceptNet的一个实体,每个问题对应一个正确答案和四个干扰答案。利用像ConceptNet这样的大型常识知识图,不仅可以确保问题直接针对常识关系,而且可以确保问题所需的常识知识领域在日常使用中相当全面。数据集共12102个问题(训练集/ 验证集 /测试集:9741/1221/1140),数据格式如图1所示。
CosmosQA数据集包含35600个需要常识阅读理解的问题,大约94%的问题需要常识,这是所有需要理解段落的QA 基准 中所见比例最高的。其专注于解决需要跨越上下文、而不是定位指定片段的推理问题。其主要特点为:
- 上下文段落中的任何地方都没有明确提到正确的答案,因此需要通过常识推断 在各行之间进行阅读
- 选择正确的答案需要阅读上下文段落
图2给出了数据集中的一个例子:
PIQA [3]专注于日常生活中的物理常识,偏爱非典型的解决方案。图3展示了PIQA的示例。PIQA 数据集由 16,000 多个训练的QA对组成,另外分别提供了约2K和3K进行开发和测试。目的长度平均为7.8个单词,正确和不正确的解决方案平均长度为21.3个单词,正确和不正确解决方案所使用的单词之间至少有85%的重叠。通过对名词、动词、形容词、副词出现的词频统计,验证了数据集确实是和物理现象强相关的。比如,出现词频最高的形容词中包括状态(干燥的、干净的、烫的)、形状(小的、锋利的、平坦的)、形式(快速的、仔细的),这些属性通常决定了解决方案的正确与否。
Social IQA [4]是第一个面向社交情况 常识推理 的大规模 基准 ,包含38000个覆盖日常情形中社交情感和智慧的多选问题,涵盖了关于在情境中描述人们的行为的各种类型的推断,对于基于预训练 语言模型 的现有问答模型具有挑战性。值得注意的是,SOCIAL IQA也可以作为常识知识 迁移学习 的资源,在多个 常识推理 任务(Winograd Schemas,COPA)上达到了最好的结果。数据集示例如图4所示。
OpenBookQA [5]数据集解决了先前QA数据集的一些缺点,较早的数据集通常不需要外部知识或推理即可解决,而确实需要外部知识的领域又很难捕获。OpenBookQA包含大约6,000个多项选择的问题,需要结合科学事实或常识知识来回答,如图5中的示例。OpenBookQA提供了约1300个科学事实的“open book”,每个事实都与问题直接相关,作者希望可以使用外部资源来支持回答问题。
(1) ConceptNet
ConceptNet [6]是一个已成功应用于NLI系统中的常识 知识库 。最早源于MIT媒体实验室的Open Mind Common Sense(OMCS)项目,OMCS项目是由著名AI专家Marvin Minsky于1999年创立,该项目从在线用户那里收集了free text的常识知识。这个 语义网 络最初包含超过160万条常识知识,这些知识表示为300,000个实体节点之间的链接,但是后续版本对其进行了扩展并添加了更多功能。最新版本的ConceptNet 5.5包含800万个节点之间的2100万个链接,并增加了Cyc, WordNet 和DBpedia等其他资源,它包括来自多语言资源的知识,以及来自其他 知识图谱 的知识的链接。与Cyc相比,ConceptNet采用了非形式化、更加接近自然语言的描述;与链接数据和谷歌 知识图谱 相比,ConceptNet比较侧重于词与词之间的关系。与 WordNet 相比,包含的关系类型多。ConceptNet完全免费开放,并支持多种语言。
ATOMIC [7]是一个包含87万条推理常识的 知识图谱 ,包含870k条推理常识,相较于常见的基于本体论分类条目的 知识图谱 ,该 知识库 专注于“if...then...”关系的知识。作者提出了9种类型的因果联系来区分原因-效果、主体-主题、自愿-非自愿、行动-心理状态。例如:事件“x防御了y的攻击”,我们能够马上推理出 x的动机是“保护自己”、 x这么做的先决条件是接受了一定的防身技巧、 x可能的特点是强壮勇敢。事件的结果可能是:x会感觉生气并报警、 y可能会觉得害怕并想要逃走。通过生成式训练,作者发现 神经网络 模型可以从该图谱中获取简单的 常识推理 能力。
GenericsKB [8]是AI2提出的包含340万个通用句子的大型非结构化 知识库 ,通用句子是指表达一般事实的语句,例如“Dogs bark”和“Trees remove carbon dioxide from the atmosphere”。这是第一个包含天然存在的通用句子的大型资源库,而不是抽取或众包的三元组,因此富含高质量、一般性、语义完整的陈述。GenericsKB主要从三个大型文本源中提取:Waterloo 语料库 、Simple Wikipedia和ARC 语料库 。其中的所有句子均带有主题词,上下文句子和学习到的置信度评分。GenericsKB-Best中还提供了一个经过过滤的高质量子集,其中包含1,020,868个句子。
任何自然语言的文字甚至网页都可以视为非结构化知识的来源。Wikipedia就是一个常用的大型非结构化 知识库 ,Wikipedia 语料库 包含有关各种领域的440万篇文章,并且都是人工编纂的。由Wikipedia延伸出的一个 知识库 是WikiData [9],WikiData的目标是构建一个免费开放、多语言、任何人或机器都可以编辑修改的大规模链接 知识库 。WikiData由维基百科的组织者于2012年启动,继承了Wikipedia的众包协作的机制,但与Wikipedia不同,WikiData支持的是以三元组为基础的知识条目(Items)的自由编辑。一个三元组代表一个关于该条目的陈述(Statements)。例如可以给“地球”的条目增加“<地球,地表面积是,五亿平方公里>”的三元组陈述。
2.3融合外部知识的常识问答模型
我们按照知识的融合方式将模型分为使用预训练融合常识知识、使用关系网络融合常识知识和使用 图 神经网络 融合外部知识三种类型。
(1)使用预训练融合常识知识
预训练 语言模型 ,如BERT、GPT等,在很多任务上都取得了很好的效果,但很少明确地包含常识知识。最近的研究表明,只需在大型预训练模型上融合常识知识进行继续训练或者微调就能达到一个很好的效果。
如Ye等人 [10]提出了一种将常识知识整合到 语言模型 中的预训练方法,使用align、mask、select(AMS)方法,自动构造了一个常识相关的多项选择问答数据集,用于预训练神经语言表示模型。AMS方法如下:
- 首先,从ConceptNet中挑选一些三元组:非英文去掉;调整RelateA和IsA关系三元组到正常比例,因为在ConceptNet中这两种关系占比较高;三元组中,至少有一个实体包含四个单词以上,或者两个实体之间的编辑距离少于4;
- 然后基于每个三元组中的两个实体词去Wikipedia中搜索包含这两个词的句子;(align)
- 在该句子中,使用[QW]遮掩两个实体中的一个,构成question,mask的词为标注答案;(mask)
- 基于三元组中的mask之外的词去ConceptNet搜索,找4个包含这两个词的三元组作为干扰。如果大于4个,随机选4个,反之过滤掉;(select)
举个实例:
表1 使用AMS构造数据的一个例子
为了节省时间和成本,作者使用bert-base/bert-large初始化 参数 ,结果在当时的CommonsenseQA 、 Winograd Schema Challenge以及 GLUE任务的几个 句子分类 和推理任务上取得了sota。在显着改善常识相关的NLP任务的同时,也没有降低预训练模型的语言表示能力。
Wang等人 [11]研究了将知识注入诸如BERT和RoBERTa之类的大型预训练模型中的问题。现有方法通常会在注入知识时更新预训练模型的原始 参数 。但是当注入多种知识时,它们可能会遭受灾难性的遗忘。为了解决这个问题,作者提出了K-ADAPTER,它保持了固定的预训练模型的原始 参数 ,并支持持续的知识注入。以RoBERTa为预训练模型,K-ADAPTER具有用于每种注入知识的神经适配器(adapter),就像是连接到RoBERTa的插件,如图6所示。
这里对比一下最近提出的一系列将知识融入预训练模型的方法,如表2所示:
表2 将知识融入预训练模型的方法对比
尽管大规模的预训练 语言模型 取得了成功,但在经过微调的模型和人类表现之间仍然存在巨大的性能差距,而且这些模型不能提供可解释的证据,因为无法明确说明使用到了训练 语料库 中的哪些知识,只是隐式学习了这些知识。
(2)使用关系网络融合常识知识
(3)使用图神经网络 融合常识知识
虽然关系网络可以建模多跳关系,在关系路径上应用 注意力机制 也能提供良好的可解释性,但是关系网络建模路径的可扩展性受节点数量和路径长度的限制,因为路径数量随节点的数量是多项式增加的,随路径长度是指数级增加的。相比之下, 图 神经网络 通过其消息传递机制享有更好的可伸缩性。
Lv等人 [14]提出了一个融合异构知识源的基于 图 神经网络 的常识问答模型。作者从结构化知识基础(即ConceptNet)和Wikipedia纯文本中提取证据,并为这两个来源构造图以获取证据的关系结构,如图9和图10所示。
虽然 图 神经网络 有很好的可扩展性,但我们仍不想丢弃RN的路径可解释性,于是Feng等人 [15]就提出了一种多跳图关系网络(MHGRN),所提出的推理模块统一了基于路径的推理方法和 图 神经网络 ,实现了更好的可解释性和可伸缩性。MHGRN通过保留消息传递公式从 图网 络继承了可伸缩性,通过引入结构化关系注意机制对消息传递路径进行建模,从而保留了基于路径的模型的可解释性。模型结构如图12所示。
本文依次介绍了常识问答任务 基准 评测数据集、常用的外部 知识库 以及使用不同方式融合外部知识的常识问答模型。尽管大规模的预训练 语言模型 取得了成功,但在经过微调的模型和人类表现之间仍然存在巨大的性能差距,而且这些模型不能提供可解释的证据;使用关系网络可以建模多跳关系,在关系路径上应用 注意力机制 也能提供良好的可解释性,但是关系网络建模路径的可扩展性受节点数量和路径长度的限制; 图 神经网络 通过其消息传递机制享有更好的可伸缩性,但其推理是在节点级进行,与建模路径级推理链不兼容;而将基于图的模型与基于路径的模型融合在一起,既能保持图的可扩展性,又能增加模型的透明度和可解释性。
对于未来工作,一方面,需要外部知识的 常识推理 任务的核心难点在于如何在外部 知识库 中快速检索相关的知识,并有效地、可解释地应用在模型中;另一方面,如何设计一个指标衡量 常识推理 模型的可解释性。AI2的VCR dataset给了一个比较简单有效的方案,在传统的多选题类型QA任务上加上一个对于正确选项的正确解释的选择题。如果我们要求模型在两个任务上都答对,则同时衡量了模型的正确性和可解释性 [16]。但对于常识问答的可解释性似乎需要更复杂、合理的评价方式。
参考资料
Alon Talmor, Jonathan Herzig, Nicholas Lourie, and Jonathan Berant. 2019. Commonsenseqa: A question an-swering challenge targeting commonsense knowledge. InProceedings of the 2019 Conference of the NorthAmerican Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1(Long and Short Papers), pages 4149–4158.
[2]Lifu Huang, Ronan Le Bras, Chandra Bhagavatula, and Yejin Choi. 2019. Cosmos qa: Machine reading compre-hension with contextual commonsense reasoning. InProceedings of the 2019 Conference on Empirical Methodsin Natural Language Processing and the 9th International Joint Conference on Natural Language Processing(EMNLP-IJCNLP), pages 2391–2401.
[3]Bisk, Y.;Zellers, R.; Le Bras, R.; Gao, J.; and Choi, Y. 2020.PIQA: Reasoning about Physical Commonsense in NaturalLanguage. InAAAI.
[4]Sap, M.; Rashkin, H.; Chen, D.; Le Bras, R.; and Choi, Y.2019c. Social IQA: Commonsense Reasoning about SocialInteractions. InProceedings of the 2019 Conference on Em-pirical Methods in Natural Language Processing and the 9thInternational Joint Conference on Natural Language Pro-cessing (EMNLP-IJCNLP), 4453–4463.
[5]Todor Mihaylov, Peter Clark, Tushar Khot, and Ashish Sabharwal. 2018. Can a suit of armor conduct electricity?a new dataset for open book question answering. InProceedings of the 2018 Conference on Empirical Methodsin Natural Language Processing, pages 2381–2391.
[6]Speer, R.; Chin, J.; and Havasi, C. 2017. Conceptnet 5.5: Anopen multilingual graph of general knowledge. In AAAI.
[7]Maarten Sap, Ronan Le Bras, Emily Allaway, ChandraBhagavatula, Nicholas Lourie, Hannah Rashkin, Bren-dan Roof, Noah A Smith, and Yejin Choi. Atomic: anatlas of machine commonsense for if-then reasoning. InAAAI, volume 33, pages 3027–3035, 2019.
[8]Sumithra Bhakthavatsalam, Chloe Anastasiades, and Peter Clark. 2020. Genericskb: A knowledge base of generic statements. arXiv preprintarXiv: 2005.00660.
[9]WikiData官网:https://www.wikidata.org/wiki/Wikidata:Main_Page
[10]Zhi-Xiu Ye, Qian Chen, Wen Wang, and Zhen-Hua Ling. Align, mask and select: A simple method for incorporating commonsense knowledge into language representation models. CoRR,abs/1908.06725, 2019. URL http://arxiv.org/abs/1908.06725.
[11]Ruize Wang, Duyu Tang, Nan Duan, Zhongyu Wei, Xuanjing Huang, Jianshu Ji, Guihong Cao, Daxin Jiang,and Ming Zhou. 2020b.K-adapter: Infusing knowledge into pre-trained models with adapters.CoRR,abs/2002.01808.
[12]Adam Santoro, David Raposo, David G Barrett, Mateusz Malinowski, Razvan Pascanu, Peter Battaglia,and Timothy Lillicrap. A simple neural network module for relational reasoning. InAdvances in neuralinformation processing systems, pp. 4967–4976, 2017.
[13]Lin, B. Y.; Chen, X.; Chen, J.; and Ren, X. 2019. KagNet: Knowledge-Aware Graph Networks for Commonsense Rea-soning. In EMNLP/IJCNLP.
[14]Shangwen Lv, Daya Guo, Jingjing Xu, Duyu Tang, Nan Duan, Ming Gong, Linjun Shou, Daxin Jiang, GuihongCao, and Songlin Hu. 2019. Graph-based reasoning over heterogeneous external knowledge for commonsensequestion answering.In AAAI.
[15]Feng, Y.; Chen, X.; Lin, B. Y.; Wang, P.; Yan, J.; and Ren, X. 2020. Scalable Multi-Hop Relational Reasoning for Knowledge-Aware Question Answering. In EMNLP.
[16]https://www.zhihu.com/question/312388163/answer/600712686
哈尔滨工业大学社会计算与信息检索研究中心