异构知识图谱_basedir

异构知识图谱_basedir知识链增强模型回答事实问题的准确性

在这里插入图片描述

阿里达摩院和南洋理工大学等机构2024发表在ICLR的论文,全新知识链框架,有效提升大语言模型的事实正确性
CoK(chain-of-knowledge) 包括三个阶段:推理准备、动态知识适配和答案整合。

与之前主要使用非结构化数据的研究不同,CoK 还利用了如 Wikidata 和表格这样的结构化知识源,提供了更可靠的事实信息。为了在动态知识适配阶段访问非结构化和结构化知识源,我们提出了一个自适应查询生成器(AQG),它可以生成各种类型查询语言的查询,包括 SPARQL、SQL 和自然语言句子。

此外,为了最小化推理之间的错误传播,CoK 使用逐步纠正推理。广泛的实验表明,CoK 在不同领域的知识型任务上一致提高了 LLMs 的表现。

介绍

  • adaptive query generator (AQG) 自适应查询生成器
  • rationales 基本原理
  • SPARQL:是一种用于查询RDF(Resource Description Framework)数据的语言。RDF是一种将信息表示为主题-谓词-对象三元组(triplets)的标准模型,广泛用于描述Web资源的元数据。经典的是维基百科数据(你只需要通过WQS提供的界面或API发送SPARQL查询即可。这意味着你可以访问和分析Wikidata中存储的全部公开数据,而无需在本地安装或管理大型数据库。)

如图1所示,给定一个问题,“导演《异类》的阿根廷演员是哪一年出生的?。”这个问题需要有事实知识才能回答,而最高级的LLM通常会给出错误的答案。虽然LLM具有从训练数据中召回信息的卓越能力,但有效地更新或控制这些模型中的事实知识仍然具有挑战性。

在这里插入图片描述图1:不同方法的比较。(a)自验证COT (b)验证与编辑 (c)COK
1、图中a
理由:首先,执导《异类》的阿根廷演员是费尔南多·比里。
其次,Fernando Birri出生于1925年。
答案是1925年
2、图中b
在a基础上验证问题,提出两个问题:谁导演的?Fernando Birri啥时候出生?
然后是检索和编辑回答。这里Fernando Birri啥时候出生导致了错误的传播
3、图中c
首先根据问题 识别领域:事实(维基数据、维基百科)
有个自己的理由。然后是检索两块
Retrieve (Wikidata) 1: SELECT ?answer WHERE { wd:El Tio Disparate wdt:director
?answer . } -> Palito Ortega
Retrieve (Wikipedia) 1: Who directed El Tio Disparate? ->
El Tio Disparate is directed by Palito Ortega
最后得到正确推理。COT第二步如上。

具有自一致性的CoT首先用于生成初步的基本原理,确定相关的知识领域,并选择缺乏多数共识的答案进行进一步处理。
在后续的动态知识适应阶段,采用自适应查询生成器(AQG)对所选领域内的知识源生成查询。为了有效地检索异构格式的知识,AQG可以自适应地生成相应类型的查询,如SPARQL和自然语句(见图2)。随后,通过执行生成的查询,获得支持知识并用于编辑第一个基本原理(即将导演从Fernando Birri改为Palito Ortega);它确保错误不会传播到第二个基本原理的下一代。然后将相同的过程应用于编辑第二个基本原理。最后,通过正确的推理链,CoK推导出最终答案。

在这里插入图片描述
图2:我们提出的知识链(CoK)框架,包括(I)推理准备,(II)动态知识适应,以及(III)答案整合。自然句。

考虑到不同的知识来源需要不同的查询语言,AQG在生成查询中起着至关重要的作用。AQG是多功能的,既可以是像Llama-2这样的微调模型,也可以是像ChatGPT这样的现成LLM。AQG是多功能的,可以在微调模型和黑盒llm之间无缝转换;CoK逐步纠正基本原理,确保先前基本原理的不准确性不会传播到后续步骤;我们对跨越一系列领域的知识密集型任务进行了广泛的实验,包括事实、医学、物理和生物。

知识链框架

在第一阶段,给定一个知识密集型问题,CoK生成初步的基本原理(rationales),即CoT推理链中的推理单元/句子,并在识别相关知识领域的同时给出答案。对于答案不能产生多数共识的问题,进入动态知识适应阶段,利用自适应查询生成器(adaptive query generator, AQG)生成查询,从已识别领域的知识来源中检索知识。根据检索到的知识逐步修改和生成基本原理[The rationales are progressively revised and generated based on the retrieved knowledge.]。然后根据修正后的基本原理推导出最终答案。

推理准备阶段

在现实场景中,当面对复杂的知识密集型问题时,有必要在产生最终答案之前生成中间基本原理。此外,在深入研究外部知识来源以解决问题之前,确定相关的知识领域以进行有效检索是至关重要的。

推理准备阶段由推理生成和知识领域选择两个基本组成部分组成。

表1:SPARQL基本原理生成的查询、执行结果和格式化知识的示例。 -RDF查询语言
在这里插入图片描述
Reasoning Generation:采用self-consistency 来确定是否需要外部知识来回答问题。在对各种推理路径和答案进行抽样时,发现self-consistency 与准确性高度相关。因此,保持高一致性的预测不需要修改。只有答案“不确定”的问题,即一致性低于特定阈值的问题,才会进行进一步的处理。这种过滤技术被发现在识别先前作品的错误预测方面很有用

Knowledge Domain Selection:为了确保检索到与问题最相关的知识,我们引入了知识领域选择步骤。如图2所示,CoK集成了四个不同的知识领域:事实、医学、物理和生物学。此外,回答一个问题可以识别多个领域。举例来说,当被问到“谁提出了解释潮汐成因的理论?”,回答这个问题需要物理学(月球的引力引起潮汐)和事实(艾萨克·牛顿首先提出了万有引力并解释了天体施加的潮汐力)领域的知识。知识领域的选择是通过语境学习来完成的。

2、动态知识适应阶段

一旦获得了初步的基本原理和识别的知识领域,下一阶段是动态的知识适应,即基于检索到的知识对基本原理进行校正**。为了减少错误传播,CoK依次进行知识检索和理论修正。前面更正的基本原理用于生成下一个基本原理,然后进行相同的知识检索和更正步骤**。

Knowledge Retrieval :在推理准备阶段识别出与问题相关的领域后,利用这些领域内的所有知识来源进行知识检索。知识检索包括两个步骤:查询生成和查询执行

A) 查询生成: 根据知识源的性质,每个知识源都会链接到最合适的查询语言,这可以是结构化的查询语言,比如SPARQL或SQL,也可以是非结构化的,如自然语言句子。例如,Wikidata就链接到SPARQL查询,因为它包含了知识图谱。flashcard source则链接到自然语言句子查询,因为它采用的是自然语言句对的格式。在表1中展示了一个为SPARQL生成的查询示例。1 例如,给定一个句子“Souleyman Sane的儿子,Leroy Sané,是一位职业足球运动员。”, a SPARQL query, “SELECT ?answer WHERE {wd:/Souleymane San´e/ wdt:/child/ ?answer.}”被生成出来,用于从Wikidata检索相关知识。为了促进结构化和非结构化查询的生成,使用了一个自适应查询生成器(AQG)。AQG是一个多功能的插件组件,它可以是一个定制的微调模型,也可以是一个现成的LLM。具体在下面会讲述

B)查询执行:一旦生成了查询,接下来的步骤就是执行查询,以获取知识并将其转换为格式化的知识(参见表1)。设计了一个专门的方法来执行查询并为每种查询语言格式化结果。对于SPARQL查询,最初执行实体链接以用id替换实体跨度,然后通过调用wikidata.org的API获取结果。对于SQL查询,它们直接执行到获取结果,可以是一个奇异值,也可以是原始表的一个子集。然后将SPARQL和SQL的结果格式化为标记文本。对于自然句子查询,通过句子相似度匹配或利用搜索引擎从特定领域的知识来源检索知识

理由修正:现有的方法,如ReAct在整个过程中将所有检索到的信息保存在上下文中,无论它是否包含推理错误。这通常会导致错误传播并误导后代。为了克服这一弱点,CoK涉及一个渐进的基本原理纠正步骤。给定当前的基本原理和来自各种知识来源的格式化知识,将生成一个正确的基本原理来替换当前的基本原理。这一步骤有助于纠正任何事实错误并防止错误传播。

Next Rationale Generation :使用问题和前面更正的基本原理,生成下一个基本原理,并为新的基本原理重复该过程,直到产生最终答案

3、自适应查询生成器

CoK整合了来自四个不同领域的异构知识来源,包括事实、医学、物理和生物学。这些知识来源中的每一个都需要使用唯一的查询语言进行检索,这种查询语言可以是结构化的,也可以是非结构化的。因此,我们设计了自适应查询生成器(AQG),以方便不同知识来源的查询生成

a) 非结构化查询语言
自然语言句子是人类搜索信息最自然的方式。AQG利用两种不同的方法基于知识来源生成非结构化查询。A)对于一般的事实性知识来源,如Wikipedia,使用ChatGPT。B)对于特定领域的知识来源(例如,Flashcard, ScienceQA Physics, ScienceQA Biology),使用ChatGPT可能会导致幻觉,因为它可能没有对特定领域的全面知识。因此,我们使用LoRA对输入文本和输出查询对LLaMA2-7B进行指令调优。此外,训练数据的领域与各自的知识来源是一致的。因此,AQG具备了生成更精确查询所需的知识

b) 结构化查询语言
查询非结构化的知识来源往往导致检索不相关和冗余的信息。另一方面,结构化的知识来源(例如,维基数据和表格)提供直接的事实结果。为了生成结构化查询,AQG基于查询语言使用了两种方法。

A)在生成SQL等常用查询语言时,我们使用ChatGPT。根据经验推断,ChatGPT在其预训练期间包含SQL,这使其在生成SQL查询方面具有优势(OpenAI, 2023)。
所有相关的细节都包含在提示符中,以提高查询生成的精度。
例如,在生成SQL查询时,我们同时包含表模式和数据片段。

B)对于像SPARQL这样不太常见的语言,我们使用带有句子-SPARQL对的LoRA对LLaMA-2-7B进行指令调优。收集训练数据以匹配基本原理的逻辑粒度,从而促进更准确的查询生成。例如,在SPARQL中,训练数据和基本原理在每个句子中都包含单个实体和关系。Inspired by chain-ofhindsight(Liu et al, 2023)的启发,除了给出正确的查询,我们还附加了否定示例,例如“不正确的查询:…”在指令微调时。
在这里插入图片描述
为了创建指令调优数据集,我们使用了LC-quad (Trivedi等人,2017)和KQA-pro (Cao等人,2022)数据集的过滤版本。该数据集由作为输入的自然问题和作为输出的相应SPARQL查询组成。在训练之前,我们用实体和关系范围替换SPARQL查询中的实体和关系id。这种修改允许模型更有效地学习SPARQL查询的语义含义。在推理阶段,我们利用实体链接将跨度转换回id。表8提供了数据集的大小

4、实验

Models :在我们的实验中,我们使用ChatGPT (gpt-3.5-turbo-0613)作为推理准备和答案巩固阶段的黑盒LLM。为了确保再现性,我们将所有代的解码温度固定为0。除了自一致性步骤外,我们将温度设置为0.7,允许按照Wang等人(2023)的建议对五个基本原理和答案进行抽样。当少于一半的答案同意3时,我们用CoK编辑结果。

Knowledge Sources :我们为每个领域选择权威的知识来源。具体来说,对于事实领域,我们使用维基数据、维基百科和维基表;在医疗领域,我们使用医疗Flashcard和UpToDate;物理方面,我们参考《科学qa物理》和《物理课堂》;在生物学方面,我们使用ScienceQA生物学和CK-12。

我们将CoK与广泛使用的基线和最先进的方法进行比较,以提供更全面的概述:
a)标准提示(Standard)直接预测答案(Ouyang et al, 2022)。
B)思维链(Chain-of-thought, CoT) (Wei et al ., 2022)在最终答案之前生成若干中间基本原理,以提高LLM的复杂推理能力。
C)具有自一致性的CoT (CoT- sc) (Wang et al ., 2023)取代了CoT中的朴素贪婪解码,对不同的基本原理集进行采样,并输出最一致的答案。
D)验证和编辑(VE) (Zhao et al ., 2023c)是一种最先进的、基于成本的框架,它寻求通过使用外部知识进行后期编辑来提高预测事实性。
E) ReAct (Yao et al ., 2023)将agent思想和开放领域知识搜索结合起来,得到最终答案。
根据基线,我们使用少镜头设置进行评估,并确保所有方法使用相同数量的演示样本。

CoK不仅在多步推理数据集(HotpotQA)上有效,而且在单步推理数据集(FEVER)上也具有准确的检索能力。在特定领域的数据集上,如MedMCQA和MMLU Physics and Biology,在3发和6发设置下,CoK的平均准确率比CoT基线提高了4.9%。

表2:各领域的主要实验结果。Acc。:准确性。完全匹配。

在这里插入图片描述
由于ReAct中的结果是在PaLM模型上报告的(Chowdhery等人,2022),为了增加一个更合理的视角,我们报告了在CoT-SC基线之上获得的性能改进。在FEVER上,CoK显示出3.5%的改进,这与ReAct获得的4.2%的改进相当。这是由于与HotpotQA相比,FEVER的多跳数较少,因此从改进的CoT中获益较少。VE对所有基本原理并行地进行知识检索和编辑,ReAct将过去的错误留在提示符中,这可能导致错误传播。CoK通过渐进式知识适应缓解了这个问题。同样值得注意的是,CoK的成本比ReAct低得多

表3:基于检索的方法对FEVER和HotpotQA的结果。
在这里插入图片描述

表4:在MedMCQA上使用单个或多个知识领域和来源的结果(3-shot)。
在这里插入图片描述
单知识源 vs. 多知识源
在 CoK 框架中,有一个关键步骤是用来选择每个问题的适当知识领域的。这一步骤对于确保 CoK 能够检索到最相关的知识以纠正解释并准确回答问题至关重要。一个问题可能会选择多个知识领域,并且在每个领域内可能有多个知识来源。如图 3 所示,我们展示了每个数据集识别出的领域分布情况。值得注意的是,我们发现 CoK 主要为每个数据集选择了一个知识领域,而只有少数情况需要多个领域。例如,对于 MedMCQA,主要知识领域是医学,有 17.8% 的问题还将生物学作为相关领域。
在这里插入图片描述
表4:在MedMCQA上使用单个或多个知识领域和来源的结果(3-shot)。
在这里插入图片描述

此外,我们进行了消融实验来证明利用多个领域的必要性。如表 4 所示,与仅使用医学领域知识相比,CoK 使用来自生物学领域的额外知识进一步提高了 1.3% 的性能。这表明,跨越多个领域的知识对于回答某些问题是必要的,这一结果强调了整合各种知识领域的必要性。

在一个领域内,存在许多可信的知识来源,一个单一来源不可能涵盖该领域的所有知识。因此,在一个领域内利用多个知识来源是重要的。例如,如表 4 所示,与仅使用 Flashcard 相比,当同时利用 Flashcard 和 UpToDate 作为医学知识来源时,CoK 的性能提高了 2.1%。

5.2并行vs动态知识适应

如前所述,动态知识适应有助于CoK防止错误传播,这里我们将进一步了解它带来了多少改进。如表5所示,采用动态知识适应后,CoK的绩效比CoT提高了4.2%。但是,由于错误传播,并行编辑会导致较差的性能

CoK有效地提高了LLM在知识密集型任务中的表现,但我们也对减少产生的基本原理的幻觉感兴趣。因此,我们进行定量和定性评估,以评估事实的准确性。

定量评价:为了自动评估CoK如何减少模型输出中的幻觉,我们采用了一种现有的事实检查方法来比较原始和修正的基本原理。具体来说,我们使用ProgramFC (Pan等人,2023),这是一种最先进的方法,用于判断关于维基百科的主张的真实性。如表6所示,我们观察到,与HotpotQA数据集上的CoT-SC基线相比,CoK提高了事实准确性。值得注意的是,与基本原理1相比,基本原理2的CoT-SC的事实准确性降低了,这可能由于误差传播。另一方面,对于第二个基本原理,CoK的事实准确性略有提高,这表明纠正以前的基本原理有助于LLM在未来的步骤中生成更多的事实基本原理

表6:HotpotQA上基本原理的事实准确性对比。
在这里插入图片描述
人为评估:请志愿者进行了真实性评估。具体来说,我们随机选择了 CoK 在 HotpotQA 和 FEVER 数据集上输出的 100 个回答。其中 50 个 CoK 输出导致了错误答案,另外 50 个导致了正确答案。然后,我们要求志愿者选择其中更符合事实的推理链,以及这个更好的推理链是否可能导致更好的答案输出。从表 7 的结果中,我们可以观察到,志愿者一致确认 CoK 生成的推理链在事实上是一致的,而 CoT(普通的推理链)则不是。即使在 CoK 生成了答案错误的情况下,人们仍然相信 44% 的时间,CoK 生成的推理链在事实一致性上得到了改善,尽管它可能不包含正确答案所需的信息。

在这些实例中(答案错误,但事实性有提升),人们有 73% 的时间相信这些更符合事实的推理链本应导致更准确的答案。这意味着,即使 CoT 的质量已经得到改善,许多失败案例仍然是由推理错误造成的。

表7:人类对推理链真实性的研究结果
在这里插入图片描述

今天的文章异构知识图谱_basedir分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/82315.html

(0)
编程小号编程小号

相关推荐

发表回复

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