一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种多跳问答模型的评估方法、装置及存储介质

2022-08-17 10:09:04 来源:中国专利 TAG:


1.本说明书实施例涉及人工智能技术领域,特别涉及一种多跳问答模型的评估方法、装置及存储介质。


背景技术:

2.问答(question answering,qa)是自然语言处理(natural language processing,nlp)的一个重要研究领域。在该领域中,研究者们旨在构建出这样一种系统:它可以针对人类以“自然语言形式”提出的问题自动地给出答案。问答这一领域的研究成果已经早已普及我们每个人的生活。例如,当你清晨起床询问你的智能语音助手“今天天气怎么样”时,你会得到类似这样的回答:“今天是晴天,温度15-22摄氏度”。
3.单跳问答是指通过简单地将问题与一个单一上下文进行匹配得出答案。为验证单跳问答模型的准确性,通常需要对单跳问答模型进行评估,例如通过替换实体对整个问题进行修改,并将新句子添加到输入上下文中来构建干扰,从而确定模型的稳定性,即在进行干扰的情况下,是否还能够准确回答出问题。
4.多跳问答是自然语言处理领域中一项极具挑战性的任务,引起了人们的广泛关注。与传统的单跳问答任务相比,多跳问答需要聚合来自不同上下文的多个事实,并对它们进行复合推理以找到答案。因此,单跳问答模型的评估方式不适用于多跳问答模型,因为实体在连接不同上下文以研究推理链方面起着关键作用。替换实体可能会使干扰文本与问题完全无关,从而造成有限的分心影响。此外,这种做法无法使答案预测具有可追踪性,也无法确定模型在哪个环节出现故障。
5.现有的对于多跳问答模型的评估只是测量答案预测的标准度量,但对于测试模型是否真正执行多跳推理来说是不够的或不定向的。


技术实现要素:

6.本说明书实施例的目的是提供一种多跳问答模型的评估方法、装置及存储介质,以实现定向地对模型进行评估,准确地查找到模型的弱点。
7.为解决上述问题,本说明书实施例提供一种多跳问答模型的评估方法,所述方法包括:获取目标问题和多跳问答模型的数据库中与所述目标问题的真实答案相对应的原始文本;提取所述原始文本中的推理链;所述推理链表示推理得到所述目标问题的答案所使用的多个实体之间的关系;根据所述推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本;将所述至少一个干扰文本加入至所述原始文本中,得到测试文本;根据所述多跳问答模型从测试文本中推理得到的推理答案评估所述多跳问答模型的抗干扰能力。
8.进一步地,所述提取所述原始文本中的推理链包括:根据所述原始文本构建实体图;所述实体图包括多个三元组,每个三元组表征两个实体和所述两个实体之间的关系;提取所述目标问题中的问题实体;从所述实体图中匹配得到所述问题实体对应的真实答案实体;提取所述实体图中所述问题实体到所述真实答案实体的最短路径作为推理链。
9.进一步地,所述根据所述原始文本构建实体图包括:根据预训练的bert模型计算所述目标问题与所述原始文本中各个段落的相关度;选择相关度大于预设阈值的目标段落构建实体图。
10.进一步地,根据以下方式确定所述推理链的类型:使用预设模型提取所述推理链的特征;根据所述推理链的特征确定所述推理链的类型。
11.进一步地,所述根据所述推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本包括:在所述推理链的类型为桥接型的情况下,修改所述目标问题中的问题实体的属性关系,以生成假答案;其中,所述桥接型的推理链中的多个实体间的关系产生交叉;获取所述推理链中跳跃点的关系数量;所述跳跃点表示关联多个关系的实体;根据所述假答案构建所述关系数量个干扰文本。
12.进一步地,所述根据所述推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本包括:在所述推理链的类型为比较型的情况下,修改所述目标问题中的问题实体的属性关系,以生成假答案;其中,所述比较型的推理链中的多个实体间的关系不产生交叉;根据所述假答案构建干扰文本。
13.进一步地,所述根据所述多跳问答模型从测试文本中推理得到的推理答案评估所述多跳问答模型的抗干扰能力包括:比较所述推理答案和所述真实答案;在所述推理答案和所述真实答案相同的情况下,确定所述多跳问答模型的抗干扰能力强;在所述推理答案和所述真实答案不相同的情况下,确定所述多跳问答模型的抗干扰能力弱。
14.为解决上述问题,本说明书实施例还提供一种多跳问答模型的评估装置,所述装置包括:获取模块,用于获取目标问题和多跳问答模型的数据库中与所述目标问题的真实答案相对应的原始文本;提取模块,用于提取所述原始文本中的推理链;所述推理链表示推理得到所述目标问题的答案所使用的多个实体之间的关系;生成模块,用于根据所述推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本;测试模块,用于将所述至少一个干扰文本加入至所述原始文本中,得到测试文本;推理模块,用于根据所述多跳问答模型从测试文本中推理得到的推理答案评估所述多跳问答模型的抗干扰能力。
15.为解决上述问题,本说明书实施例还提供一种电子设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序以实现:获取目标问题和多跳问答模型的数据库中与所述目标问题的真实答案相对应的原始文本;提取所述原始文本中的推理链;所述推理链表示推理得到所述目标问题的答案所使用的多个实体之间的关系;根据所述推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本;将所述至少一个干扰文本加入至所述原始文本中,得到测试文本;根据所述多跳问答模型从测试文本中推理得到的推理答案评估所述多跳问答模型的抗干扰能力。
16.为解决上述问题,本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现:获取目标问题和多跳问答模型的数据库中与所述目标问题的真实答案相对应的原始文本;提取所述原始文本中的推理链;所述推理链表示推理得到所述目标问题的答案所使用的多个实体之间的关系;根据所述推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本;将所述至少一个干扰文本加入至所述原始文本中,得到测试文本;根据所述多跳问答模型从测试文本中推理得到的推理答案评估所述多跳问答模型的抗干扰能力。
17.由以上本说明书实施例提供的技术方案可见,本说明书实施例中,可以获取目标问题和多跳问答模型的数据库中与所述目标问题的真实答案相对应的原始文本;提取所述原始文本中的推理链;所述推理链表示推理得到所述目标问题的答案所使用的多个实体之间的关系;根据所述推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本;将所述至少一个干扰文本加入至所述原始文本中,得到测试文本;根据所述多跳问答模型从测试文本中推理得到的推理答案评估所述多跳问答模型的抗干扰能力。本说明书实施例提供的方法,将问题至答案的推理链分类为不同的推理类型,并对对应的部分问题进行逆向修改,以生成干扰文本,从而实现定向地对模型进行评估,准确地查找到模型的弱点。
附图说明
18.为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
19.图1为本说明书实施例一种多跳问答模型的评估方法的流程图;
20.图2为本说明书实施例目标问题1对应的原始文本的推理链示意图;
21.图3为本说明书实施例目标问题2对应的原始文本的推理链示意图;
22.图4为本说明书实施例目标问题3对应的原始文本的推理链示意图;
23.图5为本说明书实施例目标问题4对应的原始文本的推理链示意图;
24.图6为本说明书实施例目标问题1对应的包含干扰文本的推理链示意图;
25.图7为本说明书实施例目标问题2对应的包含干扰文本的推理链示意图;
26.图8为本说明书实施例目标问题3对应的包含干扰文本的推理链示意图;
27.图9为本说明书实施例目标问题4对应的包含干扰文本的推理链示意图;
28.图10为本说明书实施例一种电子设备的功能结构示意图;
29.图11为本说明书实施例一种多跳问答模型的评估装置的功能结构示意图。
具体实施方式
30.下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
31.与传统的信息检索以及数据库检索不同的是,问答这一领域旨在研究那些以“自然语言形式”给出的问题,而非结构化的查询语言,这更符合日常生活中的应用场景。但自然语言的模糊性也为问题的准确理解带来了很大困难。同时,问答的数据源可能是多种多样的。在不同的场景下,结构化的知识图谱(knowledge graph)以及无结构的文本均有可能是潜在的数据源。因此,针对不同的数据源研究相应的推理算法也是当前问答领域的热门方向之一。
32.知识图谱是一种以“多关系有向图”形式存储人类知识的数据结构。知识图谱中的每个节点表示一个实体,两个节点之间的有向边表示它们之间的关系。例如,“姚明”是一个
实体,“上海”也是一个实体,它们之间的关系是“出生于”。这样的一个三元组“姚明,出生于,上海”表示一个事实(fact)。同样作为问答的数据源,与无结构的文本数据相比,结构化的知识图谱以一种更加清晰、准确的方式表示人类知识,从而为高质量的问答系统的构建带来了前所未有的发展机遇。
33.知识图谱问答(question answering over knowledge graphs),指的是使用知识图谱作为主要数据源的问答场景。对于给定的问题,我们基于知识图谱进行推理从而得到答案。这一技术已经被业界广泛地使用于相关智能搜索与推荐业务中,其中最著名的当属谷歌的搜索引擎业务。例如,对于这样一个比较简单的问题“姚明的出生地是哪里?”,通过知识图谱中“姚明,出生于,上海”这个三元组得到答案是“上海”这一实体。
34.简单来说,单跳问答是可以使用单个三元组回答的问题,例如上述问题“姚明的出生地是哪里?”,就可以使用三元组“姚明,出生于,上海”得到答案“上海”。而多跳问答则是无法使用单个三元组回答的问题,例如对于问题“成龙主演电影的导演是哪些人?”,该问题需要使用多个三元组所形成的多跳推理路径才能够回答。例如:通过这些三元组“成龙,主演,新警察故事”,“新警察故事,导演,陈木胜”,我们推理出“陈木胜”是一个正确答案,当然,由于成龙主演的电影很多,这只是其中一个答案,由于篇幅原因本说明书中并未一一列出。
35.为验证单跳问答模型的准确性,通常需要对单跳问答模型进行评估,例如通过替换实体对整个问题进行修改,并将新句子添加到输入上下文中来构建干扰,从而确定模型的稳定性,即在进行干扰的情况下,是否还能够准确回答出问题。单跳问答模型的评估方式不适用于多跳问答模型,因为实体在连接不同上下文以研究推理链方面起着关键作用。替换实体可能会使干扰文本与问题完全无关,从而造成有限的分心影响。此外,这种做法无法使答案预测具有可追踪性,也无法确定模型在哪个环节出现故障。现有的对于多跳问答模型的评估只是测量答案预测的标准度量,但对于评估模型是否真正执行多跳推理来说是不够的或不定向的。
36.考虑到如果能够根据问答的类型,在多跳问答的推理过程中,对于不用的跳跃,通过改变推理链(三元组)的关系来施加干扰,则有望解决现有技术中多跳问答模型的评估不能准确定位模型的弱点的问题。基于此,本说明书实施例提供一种多跳问答模型的评估方法、装置及存储介质,以实现定向地对模型进行评估,准确地查找到模型的弱点。
37.请参阅图1。本说明书实施例提供一种多跳问答模型的评估方法。在本说明书实施例中,执行所述多跳问答模型的评估方法的主体可以是具有逻辑运算功能的电子设备,所述电子设备可以是服务器。所述服务器可以是具有一定运算处理能力的电子设备。其可以具有网络通信单元、处理器和存储器等。当然,所述服务器并不限于上述具有一定实体的电子设备,其还可以为运行于上述电子设备中的软体。所述服务器还可以为分布式服务器,可以是具有多个处理器、存储器、网络通信模块等协同运作的系统。或者,服务器还可以为若干服务器形成的服务器集群。所述方法可以包括以下步骤。
38.s110:获取目标问题和多跳问答模型的数据库中与所述目标问题的真实答案相对应的原始文本。
39.在一些实施例中,所述多跳问答模型的数据库可以是hotpotqa数据集,该数据集中包括了多组问答对,即问题和答案的组合,以及提取答案相关的文本,这些文本即为上述
所述目标问题的真实答案相对应的原始文本。
40.举例来说,对于目标问题“哪个岛位于夏威夷首都西北808海里?”该问题在数据库中对应的原始文本可以是“laysan,位于檀香山西北808海里处,是夏威夷西北部岛屿之一。它包括一块1016英亩的土地,面积约为1英亩。这是一个环礁岛,虽然陆地完全围绕着一个比海平面高约8英尺的浅水中央湖泊,其盐度大约是海洋的三倍。”以及“檀香山是美国夏威夷州的首府和最大城市。它是瓦胡岛火奴鲁鲁市和县的一个非法人部分和县城。这座城市是通往夏威夷的主要门户,也是通往美国的主要门户。”41.s120:提取所述原始文本中的推理链;所述推理链表示推理得到所述目标问题的答案所使用的多个实体之间的关系。
42.在多跳问答中,问题需要使用多步推理来回答,在每个步骤中都会涉及到多个实体,这些实体之间又存在着一些关系,推理链则表示从问题到答案的多步推理过程中,涉及到的多个实体和这些实体之间的关系。
43.在一些实施例中,所述提取所述原始文本中的推理链包括:根据所述原始文本构建实体图;所述实体图包括多个三元组,每个三元组表征两个实体和所述两个实体之间的关系;提取所述目标问题中的问题实体;从所述实体图中匹配得到所述问题实体对应的真实答案实体;提取所述实体图中所述问题实体到所述真实答案实体的最短路径作为推理链。
44.具体的,所述实体图包括节点和边,所述节点表示实体,边表示实体与实体之间的关系。在本说明书实施例中,实体图是由多个三元组组成的,每个三元组可以包括两个节点,和连接这两个节点的边,即每个三元组表征两个实体和所述两个实体之间的关系。
45.例如,对于目标问题1“演唱“orange”的歌手是在哪一年出生的?”46.原始文本包括:
47.第一跳:“orange”是一首由爱尔兰戏剧演员david o'doherty演唱的歌;
48.第二跳:david nicholas o'doherty(1975年12月18日出生于爱尔兰都柏林)是爱尔兰喜剧演员、作家、音乐家、演员和剧作家。
49.真实答案:1975年。
50.对于目标问题1对应的原始文本的推理链如图2所示,包含了三个实体,两个三元组。
51.对于目标问题2“谁是aurelia plath的孙子,并且是一名渔业生物学家?”52.原始文本包括:
53.第一跳:nicholas farrar hughes是一名渔业生物学家;
54.第二跳:nicholas farrar hughes是aurelia plath的孙子。
55.真实答案:nicholas farrar hughes。
56.对于目标问题2对应的原始文本的推理链如图3所示,包含了三个实体,两个三元组。
57.对于目标问题3“emma bull和virginia woolf谁出生的更早?”58.原始文本包括:
59.第一跳:emma bull(生于1954年12月13日)是美国科幻和幻想小说作家;
60.第二跳:virginia woolf(1882年1月25日至1941年3月28日)是英国作家,被认为
是二十世纪最重要的现代主义者之一。
61.真实答案:virginia woolf。
62.对于目标问题3对应的原始文本的推理链如图4所示,包含了四个实体,两个三元组。
63.对于目标问题4“thomas h.ince和joseph mcgrath是同一国籍吗?”64.原始文本包括:
65.第一跳:thomas h.ince(1880年11月16日至1924年11月19日)是美国无声电影制片人、导演、编剧和演员。
66.第二跳:joseph mcgrath(1930年生于格拉斯哥)是苏格兰电影电视导演和编剧。
67.真实答案:不是。
68.对于目标问题4对应的原始文本的推理链如图5所示,包含了四个实体,两个三元组。
69.在一些实施例中,为了将原始文本构建为如图2-图5所示的实体图,首先要提取与目标问题相关联的实体,再提取这些实体之间的关系,从而完成实体图的构建。具体的,对于每个实施例,可以尝试在所有被选择的段落上构建一个实体图。首先,可以使用现有的一些工具,如使用斯坦福corenlp工具包(manning et al.2014)从问题和输入上下文中识别命名实体(分别记为eq和ec)。同时,还可以使用openie5工具包为每个句子提取实体参数-关系-实体参数三元组。提取的关系可以是名词短语,也可以是动词短语,分别对应于属性关系和动作关系。如果实体参数和关系太长,可以会重新提取它们,以获得更多的隐含三元组和干净的实体。如果适用,实体参数将进一步修改,以与预提取集(eq和ec)中的命名实体对齐。如果实体参数是代词,则直接用前一句的主语实体替换它。
70.在跨文档qa任务中,输入上下文可能包括许多不相关的段落,这些段落引入了大量的实体和三元组,使得实体图太大,无法进行有效的推理链搜索。因此,可以使用段落过滤模块来丢弃不相关的段落。在一些实施例中,所述根据所述原始文本构建实体图包括:根据预训练的bert模型计算所述目标问题与所述原始文本中各个段落的相关度;选择相关度大于预设阈值的目标段落构建实体图。
71.具体的,bert的全称为bidirectional encoder representation from transformers,是一个预训练的语言表征模型。它强调了不再像以往一样采用传统的单向语言模型或者把两个单向语言模型进行浅层拼接的方法进行预训练,而是采用新的masked language model(mlm),以致能生成深度的双向语言表征。本说明书实施例中,可以将目标问题和原始文本中的每个段落输入至经过预训练的bert模型,通过分类层输出一个概率分数来表示相关性,或者更具体地说,段落中是否有支持事实。选择相关性得分高于预定义阈值的段落进行后续实体图构建。
72.s130:根据所述推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本。
73.推理链是通过沿着构造的实体图获取从每个问题实体到答案实体(如果适用)的最短路径而形成的。该链实际上编码了推理机制,可用于设计特定的干扰策略。基于推理链的特点,可以将多跳问答中的推理链分为以下几种类型:
74.桥接类型:需要顺序推理。我们必须首先推断桥实体,然后使用它来找到第二跳答
案。投影到图上,推理链是单向的,一个或多个桥接节点连接问题实体和答案节点。推理过程是一步一步地匹配关系边。
75.交叉类型:要求答案同时满足多个条件。推理链涉及至少两条独立的路径,其中不同的问题实体节点独立地指向答案。任何一条路径断开的实体都不是答案。
76.比较类型:比较两个实体的属性。这些问题通常不像前两类问题那样具有一般意义上的连通路径。这两个问题实体具有指向各自属性节点的平行边,后续操作将在这两个属性节点上执行以获得最终答案,答案通常是两个问题实体之一,有时是它们的公共属性。
77.是/否类型:询问两个实体是否具有相同的属性,答案为“是”或“否”。与比较类型类似,引入了一个特殊的操作节点“is same?”来构成一个连通的推理链。
78.在一些实施例中,可以根据以下方式确定所述推理链的类型:使用预设模型提取所述推理链的特征;根据所述推理链的特征确定所述推理链的类型。
79.具体的,在hotpotqa数据集中,桥接和交叉类型的推理链都被归类为桥接,比较和是/否都被归类为比较。利用这些现有标签,比较和是/否两种类型的分类非常简单,只需检查比较答案是否为“是”或“否”。
80.对于桥接和交叉类型两种类型,则设计了一个基于推理链的模型来预测不同跳数的推理类型和问题跨度。由于问题中可能有多个实体,可以选择到答案节点的最短路径长度最长的实体。该问题实体节点到答案的跳数最多,因此最有可能成为推理起点并包含最多信息。如果链包含两个以上的跳,则将第二跳和之后的跳一起合成作为第二跳。形式上,将链定义为[hop1]entqrel1[hop2]ent
b1
rel2ent
b2
rel3…
,其中[hop1]和[hop2]是两个特殊标记。该模型将问题单词和链单词的串联作为输入序列s=[cls]问题[sep]链[sep]。使用预先训练的bert模型对输入进行编码:
[0081][0082]
其中,n和h分别表示最大输入长度和bert隐藏状态的数量,u表示编码输出。
[0083]
然后应用一个问题掩码m∈rn×h与可训练参数矩阵w1∈rh×2,使用softmax函数来计算单词logits,即每个单词作为第一跳子问题的开始位置和结束位置的概率:
[0084][0085]
通过最大化联合概率ind
start
,ind
end
来推断开始位置p
start
和结束位置p
end

[0086][0087]
其中,lq表示问题的长度,i和j不同位置。
[0088]
基于联合交叉熵损失函数对模型进行优化:
[0089][0090]
其中,表示联合交叉熵损失函数,表示起始位置的损失函数,表示结束位置的损失函数,λ为可变参数,表示类别的损失函数。
[0091]
为生成干扰文本,首先可以对所选的目标跳对应的问题文本范围进行语意上的修改,使其询问其他问题。在一些实施方式中,对于交叉类型的推理链,可以随机选择一个跳跃点进行修改,因为第一跳和第二跳在推理链中是等价的;对于桥接类型的推理链,可以修改第一跳的关系,因为在第一跳开始干扰推理时,更有可能带来成功的干扰。虽然许多对抗
性干扰工作试图通过改变实体来增加干扰,但由于实体在多跳问答中很重要,修改实体可能会使干扰文本和原始问题及原始文本毫不相关,因此干扰关系是更好的解决方案。通常,关系可以是基于名词的属性关系(例如,第一个儿子)或基于动词的动作关系(例如,出生于)。因此,修改对象可以是普通名词、形容词和动词等(辅助动词和模型动词除外),而命名实体(包括人、组织、位置、数字)保持不变。首先可以尝试用wordnet(wordnet是由princeton大学的心理学家,语言学家和计算机工程师联合设计的一种基于认知语言学的英语词典。它不是光把单词以字母顺序排列,而且按照单词的意义组成一个“单词的网络”。)中的反义词替换它们,如果失败,则将它们更改为单词向量空间中最近的单词。此外,还可以限制替换词具有相同的ner类型和词性,并且不与原始词共享同一词干。在上述示例中,“第一个儿子”将改为“最后一个女儿”,而“出生于”将改为“被命名于”。
[0092]
在一些实施例中,根据所述推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本包括:在所述推理链的类型为桥接型的情况下,修改所述目标问题中的问题实体的属性关系,以生成假答案;其中,所述桥接型的推理链中的多个实体间的关系产生交叉;获取所述推理链中跳跃点的关系数量;所述跳跃点表示关联多个关系的实体;根据所述假答案构建所述关系数量个干扰文本。
[0093]
上述步骤生成的新关系不能赋予原始答案,因为它可能与原始上下文相矛盾。因此,可以生成一个假答案以确保兼容性。例如,从训练数据集的所有答案中提取命名实体,并将它们分类为不同的ner类型,以构建一个假答案集。对于答案文本中要攻击的每个非停止字,首先尝试使用与前述相同的方法找到替代词。如果失败,从假答案集中随机选择一个具有相同类型的答案。例如,“1998”的替代词是“1999”,而“nicholas farrar hughes”的替代词是假答案集中的“otto emil plath”。
[0094]
最后,可以将修改后的问题和假答案结合起来生成最终的干扰文本。例如,对于桥接类型的推理链,对应的问题为上述问题1“演唱“orange”的歌手是在哪一年出生的?”[0095]
第一跳子问题:演唱“orange”的歌手是谁?
[0096]
第二跳子问题:“桥实体”是哪一年产生的?
[0097]
真实答案:1975年。
[0098]
假答案:1950年。
[0099]
第一跳干扰文本:“orange”的制作人出生于1950年;
[0100]
第二跳干扰文本:演唱“orange”的歌手在1950年被命名。
[0101]
对于包含干扰文本的推理链如图6所示。
[0102]
再例如,对于交叉类型的推理链,对应的问题为上述问题2“谁是aurelia plath的孙子,并且是一名渔业生物学家?”[0103]
第一跳子问题:谁是aurelia plath的孙子;
[0104]
第二跳子问题:谁是渔业生物学家?
[0105]
真实答案:nicholas farrar hughes。
[0106]
假答案:otto emil plath。
[0107]
第一跳干扰文本:otto emil plath是aurelia plath的侄子,是一名渔业生物学家;
[0108]
第二跳干扰文本:otto emil plath是aurelia plath的孙子,是一名林业地质学
家。
[0109]
对于包含干扰文本的推理链如图7所示。针对对于目标问题2构建了干扰文本“otto emil plath是aurelia plath的侄子,是渔业生物学家。”生成的句子与目标问题2非常相似,其中一个子问题完全重叠,另一个子问题在句法结构不变的情况下稍微修改。显然,“otto emil plath”不是一个有效的答案,因为它只满足了原始目标问题的一部分。生成的干扰被独立地插入到每个段落的随机位置,如果需要,支持事实标签也会被修改。
[0110]
在一些实施例中,根据所述推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本包括:在所述推理链的类型为比较型的情况下,修改所述目标问题中的问题实体的属性关系,以生成假答案;其中,所述比较型的推理链中的多个实体间的关系不产生交叉;根据所述假答案构建干扰文本。
[0111]
具体的,上述比较类别的推理链和是/否类别的推理链都可以被归类为比较,这两类的推理链中的多个实体间的关系不产生交叉,不同跳在推理链中是等价的。考虑到推理链中有一个特殊的比较操作节点,可以添加一个直接执行相同操作的概念路径。首先,构建了一个句法成分解析树,并通过提取单词“and”或“or”之前和之后的两个句法单元来识别两个比较者。为了获得更可能的干扰,在设置假答案方面:(1)对于比较类型,可以将真实答案以外的那一个问题实体设置为假答案;(2)对于是/否类型,可以为原始答案为“是”的构造否定句,否则构造肯定句。最后一步是将修改后的问题和假答案转换为句法正确的陈述句。
[0112]
例如,对于比较类型的推理链,对应的问题为上述问题3“emma bull和virginia woolf谁出生的更早?”[0113]
真实答案:virginia woolf。
[0114]
假答案:emma bull。
[0115]
干扰文本:相比于virginia woolf,emma bull被更早地命名。
[0116]
对于包含干扰文本的推理链如图8所示。
[0117]
对于是/否类型的推理链,对应的问题为上述问题4“thomas h.ince和joseph mcgrath是同一国籍吗?”[0118]
真实答案:不是。
[0119]
假答案:是。
[0120]
干扰文本:thomas h.ince和joseph mcgrath具有相同的身份。
[0121]
对于包含干扰文本的推理链如图9所示。
[0122]
s140:将所述至少一个干扰文本加入至所述原始文本中,得到测试文本。
[0123]
在一些实施例中,在根据推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本后,可以将干扰文本插入到原始文本中,得到测试文本。
[0124]
s150:根据所述多跳问答模型从测试文本中推理得到的推理答案评估所述多跳问答模型的抗干扰能力。
[0125]
在一些实施例中,可以将测试文本对应的目标问题输入至待测试的多跳问答模型中,多跳问答模型从测试文本中进行推理,可以得到推理答案,根据推理答案来确定该多跳问答模型的抗干扰能力。
[0126]
在一些实施例中,所述根据所述多跳问答模型从测试文本中推理得到的推理答案
评估所述多跳问答模型的抗干扰能力包括:比较所述推理答案和所述真实答案;在所述推理答案和所述真实答案相同的情况下,确定所述多跳问答模型的抗干扰能力强;在所述推理答案和所述真实答案不相同的情况下,确定所述多跳问答模型的抗干扰能力弱。
[0127]
具体的,通过对比推理答案和真实答案,如果推理答案和真实答案相同,则表示该多跳问答模型通过测试,具有较强的抗干扰能力;如果推理答案和真实答案不相同,则表示该多跳问答模型通过测试,具有较弱的抗干扰能力。
[0128]
在一些实施例中,还可以根据推理答案来确定所述多跳问答模型的弱点。具体的,可以根据推理答案来确定所述多跳问答模型在推理过程中,推理链的哪一环节出现问题,进而能够根据出现问题的环节来对多跳问答模型进行重新训练,以补全该模型的弱点。
[0129]
本说明书实施例提供的方法,可以获取目标问题和多跳问答模型的数据库中与所述目标问题的真实答案相对应的原始文本;提取所述原始文本中的推理链;所述推理链表示推理得到所述目标问题的答案所使用的多个实体之间的关系;根据所述推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本;将所述至少一个干扰文本加入至所述原始文本中,得到测试文本;根据所述多跳问答模型从测试文本中推理得到的推理答案评估所述多跳问答模型的抗干扰能力。本说明书实施例提供的方法,将问题至答案的推理链分类为不同的推理类型,并对对应的部分问题进行逆向修改,以生成干扰文本,从而实现定向地对模型进行评估,准确地查找到模型的弱点。
[0130]
本说明书上述实施例所提供的方法实施例可以在移动终端、计算机终端或者类似的电子设备中执行。图10为本说明书实施例一种电子设备的功能结构示意图,所述电子设备可以包括存储器和处理器。
[0131]
在一些实施例中,所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现多跳问答模型的评估方法的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据用户终端的使用所创建的数据。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘、智能存储卡(smart media card,smc)、安全数字(secure digital,sd)卡、闪存卡(flash card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0132]
所述处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。所述处理器可以执行所述计算机指令实现以下步骤:获取目标问题和多跳问答模型的数据库中与所述目标问题的真实答案相对应的原始文本;提取所述原始文本中的推理链;所述推理链表示推理得到所述目标问题的答案所使用的多个实体之间的关系;根据所述推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本;将所述至少一个干扰文本加入至所述原始文本中,得到测试文本;根据所述多跳问答模型从测试文本中推理得到的推理答案评估所述多跳问答模型的抗干扰能力。
[0133]
在本说明书实施例中,该电子设备具体实现的功能和效果,可以与其它实施例对照解释,在此不再赘述。
[0134]
图11为本说明书实施例一种多跳问答模型的评估装置的功能结构示意图,该装置具体可以包括以下的结构模块。
[0135]
获取模块1110,用于获取目标问题和多跳问答模型的数据库中与所述目标问题的真实答案相对应的原始文本;
[0136]
提取模块1120,用于提取所述原始文本中的推理链;所述推理链表示推理得到所述目标问题的答案所使用的多个实体之间的关系;
[0137]
生成模块1130,用于根据所述推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本;
[0138]
测试模块1140,用于将所述至少一个干扰文本加入至所述原始文本中,得到测试文本;
[0139]
推理模块1150,用于根据所述多跳问答模型从测试文本中推理得到的推理答案评估所述多跳问答模型的抗干扰能力。
[0140]
本说明书实施例还提供了一种多跳问答模型的评估方法的计算机可读存储介质,所述计算机可读存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现:获取目标问题和多跳问答模型的数据库中与所述目标问题的真实答案相对应的原始文本;提取所述原始文本中的推理链;所述推理链表示推理得到所述目标问题的答案所使用的多个实体之间的关系;根据所述推理链的类型生成干扰所述多个实体之间的关系的至少一个干扰文本;将所述至少一个干扰文本加入至所述原始文本中,得到测试文本;根据所述多跳问答模型从测试文本中推理得到的推理答案评估所述多跳问答模型的抗干扰能力。
[0141]
在本说明书实施例中,上述存储介质包括但不限于随机存取存储器(random access memory,ram)、只读存储器(read-only memory,rom)、缓存(cache)、硬盘(hard disk drive,hdd)或者存储卡(memory card)。所述存储器可用于存储所述计算机程序和/或模块,所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据用户终端的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器。在本说明书实施例中,该计算机可读存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
[0142]
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于装置实施例和设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0143]
本领域技术人员在阅读本说明书文件之后,可以无需创造性劳动想到将本说明书列举的部分或全部实施例进行任意组合,这些组合也在本说明书公开和保护的范围内。
[0144]
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何
设备的组合。
[0145]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0146]
本说明书可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
[0147]
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0148]
虽然通过实施例描绘了本说明书,本领域普通技术人员知道,本说明书有许多变形和变化而不脱离本说明书的精神,希望所附的权利要求包括这些变形和变化而不脱离本说明书的精神。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献