目录
知识图谱与大模型如何结合?
一、预备知识
1 prompt 提示词
2 AI指令的实用意义
3 AI指令编写的方法,编写AI提示词(Prompt)的一般步骤
4 AI提示词(Prompt)的学习重点与意义:
4 Prompt的应用场景
5 Prompt也存在一些挑战和限制
6 大语言模型的预训练:思维链(Chain-of-thought,CoT)原理详解
6.1 背景
6.2 定义
6.3 思维链用于上下文学习的方法(In-context learning)
6.3.1 Few-shot CoT
6.3.2 Zero-shot CoT
6.4 结论
6.5 未来对思维链的思考
6.6 关键知识点总结
二、大模型可解释性的必要性《LARGE LANGUAGE MODELS AS OPTIMIZERS》
三、翻译与阅读论文:《ChatRule: Mining Logical Rules with Large Language Models for Knowledge Graph Reasoning》
1 摘要
1 摘要提纲
2 引用
2 引用提纲
3 相关工作
3.1 逻辑规则挖掘
3 相关工作提纲
3.1 逻辑规则挖掘
3.2 大语言模型
4 准备工作和问题界定
5 方法
5.1 基于LLM的规则生成器
5.1.1 规则采样器
5.1.2 基于LLM的规则生成
5.1.3 基于LLM的规则摘要
5.2 逻辑规则排序
5.2.1 支持度
5.2.2 覆盖率
5.2.3 置信度
5.2.4 PCA置信度
5.3 用于规则验证的Cot推理
5.4 基于规则的逻辑推理
6 实验
6.1 数据集
6.2 基线
6.3 度量
6.4 实验设置
6.5 知识图谱补全
6.6 规则质量评价
6.7 消融研究
6.7.1 各成分分析
6.7.2排名措施分析
6.7.3 COT验证分析
6.8 案例研究
6.9 局限性
7 Conclusion
8 引用LLM网址
《ChatRule: Mining Logical Rules with Large Language Models for Knowledge Graph Reasoning》:《ChatRule:基于大模型进行知识推理规则挖掘方法》
论文原文pdf下载地址:https://arxiv.org/pdf/2309.01538.pdf
prompt是人工智能提示词,是一种利用自然语言来指导或激发人工智能模型完成特定任务的方法(是一种自然语言处理技术,可以通过提示和激励的方式来帮助人工智能模型更好地理解和响应用户的输入)。是近年来在自然语言处理(NLP)领域兴起的一种新范式,也被称为“预训练-提示-预测”(pretrain-promot-predict)
作用:给AI模型提示输入信息的上下文 和 输入模型的参数信息。训练有监督学习模型或无监督学习模型时,prompt可以帮助模型更好的理解输入意图,并作出相应的响应;此外,prompt还可以提高模型的可解释性和可访问性。
AI提示词的出现,是受到了OpenAI公司开发的GPT-3模型的启发。GPT-3是一个基于Transformer架构的大规模预训练语言模型,拥有1750亿个参数,使用45TB的数据进行训练。具有惊人的泛化能力,可以在零样本或少样本的情况下,通过给定自然语言的提示信息和任务示例,执行任何NLP任务,不需要对模型进行任何微调。
① 帮助预训练模型快速定位关键信息。
② 节约人力成本和时间成本。
③ 可解释性更强。
④ 降低模型因决策不合理而引起的overfitting的风险。
① 明确任务描述:在提交Prompt时,应该尽可能清晰明确地描述任务的具体信息,包括任务目标、所需操作、相关条件等。例如,在与AI聊天机器人交互时,可以通过简单的问题来引导机器理解用户需求。如:“你需要我帮你做什么?” “你需要查询什么信息?” 能够尽量明确任务描述,让机器能够更好地理解用户需求并给出相应建议。
② 使用常用词汇:在提交Prompt时,应使用常见的词汇和语言表达方式,避免使用生僻单词和复杂的句式,以便机器更容易理解。
③ 考虑语境和上下文:在提交Prompt时,应该考虑到所处的语境和上下文环境,以便机器能够从语言环境中获取更多的信息来理解用户的意图。
④ 编写Prompt:根据任务描述,选择合适的词汇和语言表达方式,编写AI提示词(Prompt)。AI提示词(Prompt)应该简洁明了,易于理解,并且与任务描述相关。
一个简单的AI提示词(Prompt)的示例:
当用户输入“查询信息”时,AI提示词(Prompt)应该提示用户输入所需的信息类型,如“查询公司介绍”、“查询产品信息”等。
① 提高效率:AI提示词(Prompt)可以帮助人工智能模型更快速地理解用户意图,提高回答问题和执行任务的效率。
② 降低错误率:AI提示词(Prompt)是一种有监督的学习方法,可以通过回答用户问题来不断改进和优化模型的表现,从而降低错误率。
③ 提高可解释性:AI提示词(Prompt)可以让模型更好地理解输入的意图,从而提高模型的可解释性和可访问性。
④ 节约人力成本和时间成本:使用AI提示词(Prompt)可以避免人工编写Prompt的繁琐过程,节约人力成本和时间成本。
⑤ 增强模型的泛化能力:使用AI提示词(Prompt)可以让模型更好地适应不同的输入,增强模型的泛化能力。
非常丰富。
在聊天机器人领域,Prompt可以用来生成更加人性化、智能的对话;
在搜索引擎领域,Prompt可以用来优化搜索结果的质量;
在智能客服领域,Prompt可以用来提高客服的响应速度和解决率。
甚至在艺术领域,Prompt也可以用来生成艺术作品,比如诗歌、绘画等。
Prompt的设计需要考虑到任务的特定要求和语境,需要具备较高的技术水平和专业知识。
此外,Prompt还需要考虑到隐私和安全等问题,确保AI在使用过程中不会泄露用户的个人信息和敏感数据。
总的来说,Prompt是人工智能领域的一个重要趋势,它可以让AI更加高效、准确、智能化地完成任务,使用AI提示词(Prompt)可以让模型更好地适应不同的输入,提高模型的泛化能力,更好地服务于人类用户,为人类的生活带来更多的便利和创新。随着Prompt技术的不断发展,我们相信它将成为人工智能未来的重要驱动力之一。
以下内容摘抄自:https://baijiahao.baidu.com/s?id=1771926480948343579&wfr=spider&for=pc
在 2017-2019 年之间,随着 Transformer 模型的提出,计算资源与大规模语料库不断出现,自然语言处理领域发生了翻天覆地的变化,传统的全监督学习的范式逐渐达到了瓶颈,很难在传统的训练方式上取得大幅度提升。这时大规模预训练模型的如 Bert、RoBERTa 等模型的出现使得研究方向转向了以预训练模型为基础 + 下游任务 Fine-tune 的范式。
然而随着语言模型规模的不断增大,Fine-tune 的成本变得越来越高,以 GPT-3 为例,其参数量已经达到了惊人的 175B,对于这样大规模的参数,仅依靠传统 Fine-Tune 已经很难对模型起到有效的迁移,且如此大规模的参数量使得梯度的反向传播的代价也急剧增加。在这样的背景下,提示学习应运而生。提示学习通过改造下游任务、增加专家知识等形式,使得目标任务的输入输出更加贴合原始语言模型训练时的数据。
2021 年,提示学习经历了以离散提示学习(提示词的组合)为开始,连续化提示学习(连续空间表示)为复兴的多个阶段,逐步达到高潮。但基于连续空间的提示学习同样存在较多的局限性,比如资源消耗与训练不稳定等多种问题。这一时期,虽然大多数研究者普遍认同提示学习将会带来自然语言处理领域下一代革命,但这一时期大多数研究工作主要还是与模型训练或新的语言模型结构相关。
直到 2022 年,大规模语言模型的效果 “肉眼可见” 的变好,同时随着模型规模的不断增大,模型也变得更好“提示”,尤其是之前一些没有办法做很好的任务不断取得突破。但是大模型在做算术推理、常识推理和符号推理时的表现还不够好。 大模型的 in-context few shot 能力是极强的,但是创建很多的中间步骤用来做监督 finetune 是非常耗时的,而且传统的 prompt 方式在数学计算、常识推理等做的又不好,怎么结合 in-context few shot 和 中间步骤来改善算术推理、常识推理和符号推理等能力是一个问题。思维链的一系列工作就是在这样的大环境下诞生的。
思维链 (Chain-of-thought,CoT) 的概念是在 Google 的论文 "Chain-of-Thought Prompting Elicits Reasoning in Large Language Models" 中被首次提出。思维链(CoT)是一种改进的提示策略,用于提高 LLM 在复杂推理任务中的性能,如算术推理、常识推理和符号推理。CoT 没有像 ICL 那样简单地用输入输出对构建提示,而是结合了中间推理步骤,这些步骤可以将最终输出引入提示。简单来说,思维链是一种离散式提示学习,更具体地,大模型下的上下文学习(即不进行训练,将例子添加到当前样本输入的前面,让模型一次输入这些文本进行输出完成任务),相比于之前传统的上下文学习(即通过x1,y1,x2,y2,....xtest作为输入来让大模型补全输出ytest),思维链多了中间的中间的推导提示,以下图为例:
可以看到,类似的算术题,思维链提示会在给出答案之前,还会自动给出推理步骤:
“罗杰先有 5 个球,2 罐 3 个网球等于 6 个,5 + 6 = 11” “食堂原来有 23 个苹果,用 20 个做午餐,23-20=3;又买了 6 个苹果,3+6=9”
思维链提示给出了正确答案,而直接给出答案的传统提示学习,结果是错的,连很基本的数学计算都做不好。简单来说,语言模型很难将所有的语义直接转化为一个方程,因为这是一个更加复杂的思考过程,但可以通过中间步骤,来更好地推理问题的每个部分。
一个有效的思维链应该具有以下特点:
逻辑性:思维链中的每个思考步骤都应该是有逻辑关系的,它们应该相互连接,从而形成一个完整的思考过程。
全面性:思维链应该尽可能地全面和细致地考虑问题,以确保不会忽略任何可能的因素和影响。
可行性:思维链中的每个思考步骤都应该是可行的,也就是说,它们应该可以被实际操作和实施。
可验证性:思维链中的每个思考步骤都应该是可以验证的,也就是说,它们应该可以通过实际的数据和事实来验证其正确性和有效性。
是ICL 的一种特殊情况,它通过融合 CoT 推理步骤,将每个演示〈input,output〉扩充为〈input,CoT,output〉。
【CoT prompt 的设计】 作为一种直接的方法,研究表明,使用不同的 CoT(即每个问题的多个推理路径)可以有效地提高它们的性能。另一个直观的想法是,具有更复杂推理路径的提示更有可能引发 LLM 的推理能力,这可以导致生成正确答案的准确性更高。 然而,这两种方法都依赖于带标注的 CoT 数据集,这限制了在实践中的应用。为了克服这一限制,Auto-CoT 建议利用 Zero-shot-CoT,通过专门提示 LLM 来生成 CoT 推理路径,从而消除了手动操作。为了提高性能,Auto-CoT 进一步将训练集中的问题划分为不同的聚类,然后选择最接近每个聚类中心的问题,这应该很好地代表训练集中的提问。尽管 Few-shot CoT 可以被视为 ICL 的一种特殊提示情况,但与 ICL 中的标准提示相比,演示的顺序似乎影响相对较小:在大多数任务中,重新排序演示只会导致小于 2% 的性能变化。
【增强的 CoT 策略】 除了丰富上下文信息外,CoT 提示还提供更多选项来推断给定问题的答案。现有的研究主要集中在生成多条推理路径,并试图在得出的答案中找到共识。例如,在生成 CoT 和最终答案时,提出了 self-consistency(自洽性) 作为一种新的解码策略。它首先生成几个推理路径,然后对所有答案进行综合(例如,通过在这些路径中投票来选择最一致的答案)。self-consistency 在很大程度上提高了 CoT 推理的性能,甚至可以改进一些 CoT 提示通常比标准提示差的任务。此外,将自一致性策略扩展到更通用的集成框架(扩展到提示上的集成),发现不同的推理路径是提高 CoT 推理性能的关键。
与 Few-shot CoT 不同,Zero-shot CoT 在 prompt 中不包括人工标注的任务演示。相反,它直接生成推理步骤,然后使用生成的 CoT 来导出答案。其中 LLM 首先由 “Let's think step by step” 提示生成推理步骤,然后由 “Therefore, the answer is” 提示得出最终答案。他们发现,当模型规模超过一定规模时,这种策略会大大提高性能,但对小规模模型无效,显示出显著的涌现能力模式。 为了在更多的任务上解锁 CoT 能力,Flan-T5 和 Flan-PaLM 进一步在 CoT 标注上执行指令调优,并且改进了在不可见任务上的零样本性能。
CoT 对小模型作用不大,模型参数至少达到 10B 才有效果,达到 100B 效果才明显。并且,从小模型的输出可以看出,它们大部分是输出了流畅但不合逻辑的 CoT,因此得到错误的结果。
CoT 对复杂的问题的性能增益更大,例如 GSM8K(更难,因为基线最低)上 GPT-3 和 PaLM 的性能增加了一倍多。而对于 MAWPS-SingleOp(更简单的任务),性能改进非常小甚至是负面的
加上 CoT 的 PaLM 540B 超过了任务特定的用监督学习训练的模型的最优结果。不加 CoT 的话 GSM8K 和 MAWPS 任务上 LLM 的结果比不过最优的监督学习模型。
思维链是解决推理任务时人类思维过程遵循的一系列典型步骤。 它可以帮助我们将一个问题分解成一系列的子问题,然后逐个解决这些子问题,从而得出最终的答案。在大型语言模型中,思维链可以用来引出推理。思维链方法带来以下好处:
CoT 允许模型将多步推理问题分解为中间步骤,这意味着额外的计算可以分配到需要推理的复杂问题上;
CoT 使大语言模型更具可解释性,更加可信,并提供了调试推理路径错误的机会;
CoT 推理能够被用于数学应用题、常识推理和符号操作等任务,并且可能适用任何人类需要通过语言解决的问题;
CoT 可以通过将其加入到 few-shot prompting 示例中,从而在足够大的语言模型中引导出推理能力。
当前的思维链也存在着许多局限性:
首先,尽管设计的思维链是在模拟人类的推理过程,但模型是否真正的学会了推理仍需进一步进行验证。
人工设计思维链仍然是代价过大,大规模的人工标注思维链是不可行的。
思维链只在大规模模型上有效(10B 以上)
(1)什么时候 CoT 对 LLMs 有用
由于 CoT 是一种涌现能力,只对足够大的模型(例如,通常包含 10B 或更多的参数)有积极影响,但对小模型没有影响。此外,由于 CoT 通过中间推理步骤增强了标准提示,因此它主要有效地改进了需要逐步推理的任务,如算术推理、常识推理和符号推理。然而,对于不依赖于复杂推理的其他任务,它可能显示出比标准提示更差的性能,例如 GLUE 的 MNLI-m/mm、SST-2 和 QQP。
(2)为什么 LLMs 可以执行 CoT 推理
关于 CoT 能力的来源,人们普遍假设它可以归因于对代码的训练,因为在代码上训练的模型显示出强大的推理能力。从直觉上讲,代码数据通过算法逻辑和编程流程进行了良好的组织,这可能有助于提高 LLM 的推理性能。然而,这一假设仍然缺乏消融实验的公开报道证据。此外,指令调优似乎不是获得 CoT 能力的关键原因,因为经验表明,对非 CoT 数据的指令调优并不能提高保持的 CoT 基准的性能。
总之,CoT 提示为诱导 LLM 的推理能力提供了一种通用而灵活的方法。也有一些初步尝试将该技术扩展到解决多模态任务和多语言任务。除了将 LLM 与 ICL 和 CoT 直接结合使用外,最近的一些研究还探讨了如何将 LLM 的能力专门化到特定任务,这被称为模型专门化。例如,研究人员通过微调 LLM 生成的 CoT 推理路径上的小规模 Flan-T5,专门研究 LLM 的数学推理能力。模型专业化也可用于解决各种任务,如问答、代码合成和信息检索。
有效的思维链应具备的特点是:逻辑性、全面性、可行性
思维链只能在大语言模型中起作用。
Few-shot CoT是ICL的一种特殊情况。
Zero-shot CoT在prompt中不包括人工标注的任务演示。
CoT使大语言模型更具可解释性,更加可信。
以下内容摘抄自: https://mp.weixin.qq.com/s/NCCoEQs8GKOctx7eMBJy7w
DeepMind团:《LARGE LANGUAGE MODELS AS OPTIMIZERS》(https://arxiv.org/abs/2309.03409 )提出了"提示优化"(OptimizationbyPROmpting,简称OPRO),利用大型语言模型(LLM)作为优化器的简单而有效的方法,其中的优化任务是用自然语言描述。
在每个优化步骤中,LLM会从包含先前生成的解决方案及其值的提示中生成新的解决方案,然后对新解决方案进行评估,并将其添加到下一个优化步骤的提示中,其目标是找到能最大限度提高任务准确性的指令。
通过各种LLM,证明OPRO优化后的最佳提示在GSM8K上优于人类设计的提示达8%,在Big-BenchHard任务上优于人类设计的提示达50%。
例如,用这个新“咒语”(Take a deep breath)结合大家已经熟悉的“一步一步地想”(Let’s think step by step),大模型在GSM8K数据集上的成绩就从71.8提高到80.2分。
这感觉大模型越来越玄学,但从直觉上来说,这种效果应该本质上与其所使用的训练数据有直接关系。
因此,我们更对大模型这种不可解释的黑盒现象表示十分的无奈。
所以,我们再来看看知识图谱与大模型的结合工作,我们知道,在大模型黑盒化的今天,人们越来越需要可解释的KG推理,它可以帮助用户理解推理过程,并提高高风险场景中的可信度,如医疗诊断和法律判断。
而知识图谱推理从现有事实中推断出新知识,是知识图谱中一项有趣的任务,也是许多应用所必需的,例如知识图谱补全、问题解答和推荐。
例如,可以确定一个逻辑 cal规则:GrandMather(X,Y)←Mother(X,Z)∧Father(Z,Y)来预测关系"Grand-Mather"的缺失事实。
进行知识图谱推理规则挖掘,基本思想很简单,给定种子规则,针对规则来生成进一步的规则候选,然后利用打分函数对规则进行打分排序,最终形成最终的挖掘结果。
逻辑规则对于揭示关系之间的逻辑联系至关重要,可以提高推理性能,并在知识图谱( knowledge graphs,KGs )上提供可解释的结果。尽管已经有很多工作在KG上挖掘有意义的逻辑规则,但是现有的方法在规则空间上进行计算密集型搜索,并且对于大规模的KGs缺乏可扩展性。此外,它们往往忽略了关系的语义,而关系的语义对于揭示逻辑联系至关重要。近年来,大型语言模型( Large Language Models,LLMs )由于其涌现性和可推广性,在自然语言处理和各种应用领域中表现出令人印象深刻的性能。在本文中,我们提出了一个新颖的框架,ChatRule,释放了大型语言模型在知识图谱上挖掘逻辑规则的能力。具体来说,该框架由一个基于LLM的规则生成器启动,利用了语义和结构信息。为了精化生成的规则,规则排序模块通过结合已有KG中的事实来估计规则质量。最后,规则验证器利用LLMs的推理能力,通过思维链推理验证排序规则的逻辑正确性。ChatRule在四个大规模的KGs上,通过不同的规则质量度量和下游任务进行评估,表明了我们方法的有效性和可扩展性。
1)背景
逻辑规则 重要!!!
可提高推理性能
可在KGs上提供可解释的结果
2)现有方法:
在规则空间上进行计算密集型搜索
对于大规模的KGs缺乏可扩展性
忽略了关系的语义
3)启发点
LLMs涌现性和可推广性,在NLP及其他领域中表现出impressive性能
4)本文工作
提出了一个ChatRule框架
框架由一个基于LLM的规则生成器启动,利用了和结构信息
规则质量通过KGs中已有的事实来估计
通过思维链推理验证排序规则的逻辑正确性
知识图谱( knowledge graph,KGs )以三元组的结构形式存储了大量的现实世界知识。KG推理旨在从已有的事实中推断出新的知识,是KG中的一项基本任务,对许多应用至关重要,例如KG补全( 2019年曲和唐)、问答( Atif , El Khatib和Difallah 2023)和推荐( Wang et al . 2019)。近年来,对可解释性KG推理的需求日益增加,它可以帮助用户理解推理过程,提高高风险场景下的可信度,如医疗诊断( Liu et al.2021)和法律判决(钟甫宁等2020)。因此,逻辑规则(Barwise1977 )被广泛用于KG推理(Hou et al. 2021; Liu et al. 2022; Wang et al. 2023);例如,由图1,我们可以识别出一条逻辑规则:Grand Mather ( X , Y)←Mother ( X , Z)∧Father ( Z , Y)来预测关系" Grand Mather "的缺失事实。为了从KGs中自动发现有意义的规则进行推理,逻辑规则挖掘在研究社区( Yang , Yang , and Cohen 2017 ; Sadeghian等2019)中获得了重要的关注。
早期的逻辑规则挖掘研究通常通过发现KG结构( Gal ' arraga et al.2013 ; Chen et al.2016)中频繁模式的共现来发现逻辑规则。然而,它们通常需要在KG上枚举所有可能的规则,并通过估计的重要性( Lao和Cohen 2010)对它们进行排序。虽然,最近的研究提出使用深度学习方法对规则进行排序。它们仍然受到穷举规则的限制,无法扩展到大规模的KGs ( Yang , Yang , and Cohen 2017 ; Sadeghian等2019)。
最近的一些方法通过从KGs中采样路径并在其上训练模型来捕获形成规则( Qu et al 2020 ; Cheng et al 2022 ; Cheng , Ahmed和Sun 2022 )的逻辑联系来解决这个问题。但是,它们通常忽略了关系语义对于表达逻辑联系的贡献。例如,在常识中,我们知道一个人的"父亲"的"母亲"就是他的"祖母"。基于此,我们可以定义一个像GrandMather( X , Y)←Mother( X , Z)∧Father( Z , Y)这样的规则来表达逻辑联系。然而,由于KGs中关系的数量,要求领域专家为每个关系注释规则可能是一种负担。因此,自动结合关系的结构和语义来发现知识库中的逻辑规则是非常重要的。
大型语言模型( LLMs )如ChatGPT和BARD在理解自然语言和处理许多复杂任务( Zhao et al.2023)方面表现出强大的能力。在大规模语料库上训练的LLMs存储了大量的常识性知识,这些知识可以用于促进KG推理(潘文卿等2023)。同时,LLMs并不是为了理解KGs的结构而设计的,难以直接应用于挖掘KGs上的逻辑规则。此外,被广泛认可的幻觉问题会使LLMs产生无意义的逻辑规则( Ji et al 2023)。
为了缓解LLMs与逻辑规则挖掘之间的鸿沟,我们提出了一个新颖的框架ChatRule,该框架利用KGs的语义和结构信息来提示LLMs生成逻辑规则。具体来说,我们首先提出了一个基于LLM的规则生成器来为每个关系生成候选规则。我们从KGs中采样一些路径来表示结构信息,然后在一个精心设计的提示中使用这些路径来利用LLMs的规则挖掘能力。为了减少幻觉问题,我们设计了一个逻辑规则排序器来评估生成规则的质量,并通过包含(encompassing:包含,围绕)KGs中的观测事实来过滤掉无意义的规则。在逻辑推理阶段进一步使用质量分数,以减少低质量规则的影响。最后,为了去除KGs支持但逻辑错误的伪规则( Hou et al 2021),我们利用LLM的逻辑推理能力,通过思维链推理( Wei et al 2022),用规则验证器验证规则的逻辑正确性。在我们的框架中,挖掘出的规则可以直接用于下游任务,而不需要任何模型训练。在4个大规模知识图谱上的大量实验表明,ChatRule在知识图谱补全和规则质量评估方面都显著优于现有方法。本文的主要贡献总结如下:
我们提出了一个名为ChatRule的框架,该框架利用LLMs的优势来挖掘逻辑规则。据我们所知,这是第一个将LLMs应用于逻辑规则挖掘的工作。
我们提出了一个端到端的流水线,利用LLMs的推理能力和KGs的结构信息进行规则生成、规则排序和规则验证。
我们在四个数据集上进行了广泛的实验。实验结果表明,ChatRule显著优于现有方法。
1)KG推理应用
KG补全( 2019年曲和唐)
问答( Atif , El Khatib和Difallah 2023)
推荐( Wang et al . 2019)
2)近年来,对可解释性KG推理的需求日益增加,可以帮助用户理解推理过程,提高高风险场景下的可信度,如:
医疗诊断( Liu et al.2021)
法律判决(钟甫宁等2020)
∴ 逻辑规则广泛应用于:KG推理
3)早期的逻辑规则挖掘研究:
通过发现KG结构( Gal ' arraga et al.2013 ; Chen et al.2016)中频繁模式的共现来发现逻辑规则
缺点:
需要在KG上枚举所有可能的规则,并通过估计的重要性( Lao和Cohen 2010)对它们进行排序
4)最近的研究
提出使用深度学习方法对规则进行排序
缺点:
仍然受到穷举规则的限制,无法扩展到大规模的KGs
5)为克服以上缺点,最近的一些方法
从KGs中采样路径并在其上训练模型,捕获形成规则的逻辑联系
缺点:
忽略了关系语义对于表达逻辑联系的贡献。
6)如果考虑关系语义贡献,则:
KGs中关系的数量多,要求领域专家为每个关系注释规则可能是一种负担。
∴ 自动结合关系的结构和语义来发现知识库中的逻辑规则是非常重要的。
7)在大规模语料库上训练的LLMs存储的大量的常识性知识,可以用于促进KG推理。
但
LLMs并不是为了理解KGs的结构而设计的,难以直接应用于挖掘KGs上的逻辑规则
幻觉问题会使LLMs产生无意义的逻辑规则
8)为了缓解LLMs与逻辑规则挖掘之间的鸿沟,提出ChatRule,利用KGs的语义和结构信息来提示LLMs生成逻辑规则。
具体来说,本文
提出了一个基于LLM的规则生成器:为每个关系生成候选规则
为利用结构信息:从KGs中采样一些路径来表示结构信息;在一个精心设计的提示中使用这些路径来利用LLMs的规则挖掘能力
为了减少幻觉问题:设计了一个逻辑规则排序器来评估生成规则的质量
为过滤掉无意义的规则:通过包含(encompassing:包含,围绕)KGs中的观测事实
为减少低质量规则的影响:在逻辑推理阶段进一步使用质量分数
为了去除KGs支持但逻辑错误的伪规则:通过思维链推理( Wei et al 2022),用规则验证器验证规则的逻辑正确性
在本文框架中,挖掘出的规则可以直接用于下游任务,而不需要任何模型训练。在4个大规模知识图谱上的实验表明,ChatRule在知识图谱补全和规则质量评估方面都显著优于现有方法。
本文的主要贡献总结如下:
提出了一个名为ChatRule的框架,利用LLMs的优势来挖掘逻辑规则。
提出了一个端到端的流水线,利用LLMs的推理能力和KGs的结构信息进行规则生成、规则排序和规则验证。
在四个数据集上进行了广泛的实验。实验结果表明,ChatRule显著优于现有方法。
逻辑规则挖掘,专注于从KG中提取有意义的规则,已经被研究了很长时间。传统方法通过枚举候选规则,然后通过计算权重分数( Lao和Cohen 2010 ; Gal ' arraga等2013)来评估候选规则的质量。随着深度学习的推进,研究人员探索了以( Yang , Yang , and Cohen 2017 ; Sadeghian等2019)可微的方式同时学习逻辑规则和权重的思路。然而,这些方法仍然在规则空间上进行了大量的优化,这限制了它们的可扩展性。最近,研究人员提出从KGs中采样路径并在其上训练模型来学习逻辑连接。RLvLR ( Omran , Wang , and Wang 2018)从子图中采样规则,并提出一种基于嵌入的得分函数。RNNLogic ( Qu et al 2020)将规则生成和规则加权分开,可以相互增强,缩小搜索空间。R5( Lu et al . 2021)提出了一种在KG上进行启发式搜索并挖掘潜在逻辑规则的强化学习框架。RLogic ( Cheng et al 2022)和NCRL ( Cheng , Ahmed和Sun 2022 )预测出规则体的最佳组成,是目前该领域最先进的方法。然而,它们没有考虑关系的语义,可能导致次优的结果。
传统方法:
枚举候选规则-->计算权重分数-->评估候选规则的质量
深度学习方法:
以可微的方式同时学习逻辑规则和权重
传统方法、深度学习方法,仍然在规则空间上进行了大量的优化,这限制了它们的可扩展性
最近:
研究人员提出从KGs中采样路径并在其上训练模型来学习逻辑连接
RLvLR:从子图中采样规则,并提出一种基于嵌入的分数函数来估计每条规则的重要性。
RNNLogic:将规则生成和规则加权分开**,这可以相互促进,减少搜索空间。
【RNNLogic:一种规则生成器和逻辑规则推理预测器,它开发了一种基于EM的算法,用于优化和学习高质量的推理规则;【注:EM算法:最大期望算法(Expectation-Maximization algorithm, EM),一类通过迭代进行极大似然估计(Maximum Likelihood Estimation, MLE)的优化算法,通常作为牛顿迭代法(Newton-Raphson method)的替代,用于对包含隐变量(latent variable)或缺失数据(incomplete-data)的概率模型进行参数估计,因其迭代规则容易实现并可以灵活考虑隐变量,EM算法被广泛应用于处理数据的缺失值,以及很多机器学习算法,包括高斯混合模型(Gaussian Mixture Model, GMM)和隐马尔可夫模型(Hidden Markov Model, HMM)的参数估计,是机器学习中使用最多的十大算法之一。】
R5:提出了一种强化学习框架,可启发式地搜索KG并挖掘底层逻辑规则**。
RLogic和NCRL可预测规则体的最佳构成,是该领域最先进的方法。它们没有考虑关系的语义,可能导致次优的结果
Rlogic,引入了一个在采样路径上训练的评分模型,并使用演绎推理来估计每个规则的质量;
NCRL,通过反复合并规则体中的成分来推导规则,从而检测出规则体中表达规则头的最佳成分结构。
最近一些方法解决了这一问题,它们从KG中抽取路径,并对其进行模型训练,以捕捉形成规则的逻辑联系。但是,他们通常忽略了关系语义对表达逻辑联系的贡献。
大型语言模型正在给自然语言处理和人工智能领域带来革命性的变化。(如ChatGPT , Bard , FLAN,LLa MA)
最近,研究人员还探索了将LLMs应用于解决KG任务(潘文卿等2023)的可能性。
为了更好地挖掘LLMs的潜力,设计了一些小样本提示词( Brown et al 2020)或思维链推理提示词( Wei et al 2022),以最大限度地发挥其能力。
然而,这些方法并不是针对逻辑规则挖掘而设计的,要求LLMs既要理解KGs的结构,又要理解关系的语义,才能生成有意义的规则。
知识Graphs( KGs ) 以三元组的形式表示事实集合,G = { ( e , r , e′) ⊆ ε × R × ε },其中e、e′∈ε和r∈R分别表示实体和关系集合。
逻辑规则是一阶逻辑的特例(Barwise1977 ),可以促进对KGs的可解释推理 ( Yang , Yang , and Cohen 2017)上的可解释性推理。逻辑规则ρ以如下形式表示逻辑蕴涵
ρ := rh (X, Y ) ← r1(X, Z1) ∧ · · · ∧rL(ZL-1, Y ) (1)
其中body ( ρ ):= r1(X, Z1) ∧ · · · ∧rL(ZL-1, Y )表示一系列称为规则体的关系的合取,rh (X, Y )表示规则头,L表示规则长度。如果规则体上的条件得到满足,那么规则头上的陈述也成立。
该规则的一个实例是用KGs中的实际实体替换变量X,Y,Z*实现的。例如,给定一个规则Grand Mather( X , Y)←Mother( X , Z1)∧Father( Z1、Y),一个规则实例δ可以为
Grandmather(Alice, Charlie)←Mother(Alice, Bob) ∧ Father(Bob, Charlie), ( 2 )
也就是说,如果Alice是Bob的母亲,Bob是Charlie的父亲,那么Alice就是Charlie的祖母。
问题定义:给定一个目标关系rh ∈R作为规则头,逻辑规则挖掘的目标是找到一组有意义的规则 = Prh{ ρ1 ,· · ·,ρK }来捕获其他关系的逻辑联系,以表示KGs中的目标关系rh。
在这一部分,我们将介绍我们提出的框架ChatRule,用于在具有大型语言模型的KG上挖掘逻辑规则。整体框架如图2所示,包含三个主要部分:1 )基于LLM的规则生成器,利用语义和结构信息生成有意义的规则。2 )一个规则排序器来评估生成的规则在KG上的质量,3 )一个思维链( CoT )规则验证器来验证规则的逻辑正确性。
图2:ChatRule的整体框架。1 )对于给定的目标关系rh,我们首先从知识图谱中抽取少量的规则实例。2 )促使大型语言模型(例如, ChatGPT)生成一组粗候选规则。3 )我们提出了一个规则排序器来估计KGs中基于事实生成的规则的质量。4 )利用思维链推理验证了排序规则的逻辑正确性。5 )最终的规则可以应用于逻辑推理和解决下游任务,如知识图谱补全。
传统的逻辑规则挖掘研究通常集中于使用结构信息( Gal ' arraga et al.2013 ; Cheng , Ahmed和Sun 2022 ),忽略了关系语义对表达逻辑联系的贡献。为了利用大语言模型( Large language models,LLMs )的语义理解能力,我们提出了一种基于LLM的规则生成器,该生成器同时利用了KGs的语义和结构信息来生成有意义的规则。
为了使LLMs能够理解用于规则挖掘的KG结构,我们采用广度优先搜索( BFS )采样器从KG中采样一些闭合路径,这些闭合路径可以作为逻辑规则( Omran , Wang , and Wang 2018 ; Cheng et al 2022)的实例。给定一个三元组(e1、rh、eL),闭合路径被定义为KGs中连接和的关系序列r1,· · ·,rL,即e1--r1→e2--r2-→· · · rL-→eL。例如,给定一个三元组(Alice, GrandMother, Charlie),可以找到一条闭合路径p:
从而闭合了KGs中的三元组(Alice, GrandMother, Charlie)。通过将三元组作为规则头,闭路径作为规则体,我们可以得到方程( 2 )中的规则实例δ。
【即,规则头:(Alice, GrandMother, Charlie)
====》规则实例δ:Grandmather(Alice, Charlie)←Mother(Alice, Bob) ∧ Father(Bob, Charlie)
】
给定一个目标关系,我们首先从KGs中选择一组种子三元组{ ( e ,rh , e′) },然后利用BFS采样一组长度小于L的闭路径{ p }构成一组规则实例{ δ }。然后,用变量替换规则实例中的实际实体,得到规则样本 Srh = { ρ }。规则样本以序列的形式表达了KG的结构信息,这些结构信息可以被输入到大语言模型中以促进规则的生成。
在大规模语料库上训练的大型语言模型( Large Language Models,LLMs )表现出理解自然语言语义的能力,并且能够利用常识知识(周黎安等2020 ; Tan et al.2023)进行复杂的推理。为了对结构进行整合并利用LLMs进行规则挖掘的能力,在语义信息方面,我们设计了一个精心设计的提示。对于目标关系rh的规则采样器得到的Srh中的每一条规则,我们通过移除关系名中的特殊符号将其动词化为自然语言句子,这可能会恶化LLMs的语义理解。对于一个原始关系(即 )的逆序,我们通过添加一个" inv "符号将其动词化。然后,我们将口头化的规则样本放入提示模板中,并将其输入到LLMs (例如, ChatGPT)中生成规则。关系"丈夫( X , Y) "的规则生成提示和LLMs结果的例子如图3所示。
图3:关系"丈夫( X , Y) "的规则生成提示和LLMs结果的示例。
规则生成提示:
逻辑规则定义了两个实体X和Y之间的关系。每条规则都以逻辑蕴涵的形式写入,它指出如果右边(规则体)上的条件被满足,那么左边(规则头)上的语句就成立。
现在我们有以下规则样本:
丈夫( X , Y) < - -妻子( X , Y)
丈夫( X , Y) < - -父亲( X , Z _ 1) &女儿( Z _ 1 , Y)
...
丈夫( X , Y) < - -父亲( X , Z _ 1) &姐姐( Z _ 1、Z _ 2) &女儿( Z _ 2 , Y)
基于以上规则,请生成许多最重要的规则头部:'丈夫( X , Y) '
输出:
丈夫( X , Y) < - -妻子( X , Y)
丈夫( X , Y) < - -父亲( X , Z _ 1) &女儿( Z _ 1 , Y)
丈夫( X , Y) < - -侄子( X , Z _ 1) &姑姑( Z _ 1 , Y)
丈夫( X , Y) < - -丈夫( X , Z _ 1) &弟弟( Z _ 1、Z _ 2)
...
由于大量的规则样本,它们不能被同时输入到LLMs中,从而超出了上下文限制。因此,我们将规则样本拆分为多个查询,以提示LLM生成规则。然后收集LLMs的响应,请LLMs对结果进行汇总,得到一组候选规则Crh = { ρ }。详细的提示可参见附录。
众所周知,LLMs具有幻觉问题,这可能会产生错误的结果( Ji et al 2023)。例如,在图3的结果中所显示的生成规则"丈夫( X , Y)←丈夫( X , Z1) &兄弟( Z1 , Y) "是不正确的。因此,我们开发了一个规则排序器来检测幻觉,并根据KGs中的事实来估计生成规则的质量。规则排序器旨在为候选规则集Crh中的每个规则ρ分配一个质量分数s ( ρ )。受先前规则挖掘工作( Gal ' arraga等2013)的启发,我们使用四种度量,即支持度、覆盖率、置信度和PCA置信度,来评估规则的质量。各项措施的详细介绍和示例见附录。
表示KGs中满足规则ρ的事实个数,定义为
supp ( ρ ):= # ( e , e′):∃( e , r1 , e2)∧,· · ·,∧( eL-1 , rL , e′):body ( ρ )∧( e , rh , e′)∈G,( 4 )
其中,( e1 , r1 , e2),· · ·,( eL-1 , rL , e′)表示KGs中满足规则body ( ρ )的一系列事实,( e , rh , e′)表示满足规则head rh的事实。
显然,具有零支持度的规则可以很容易地从候选集中剪枝出来,而不需要任何进一步的精化。然而,支持度是一个绝对数字,对于KGs中事实较多的关系而言,支持度可能更高,并提供有偏的排序结果。
覆盖率通过KGs中每个关系的事实数来规范支持度,定义为
覆盖率量化了规则ρ所隐含的KG中存在事实的比例。为了进一步考虑规则的错误预测,我们引入置信度和PCA置信度来估计规则的质量。
定义为KGs中满足规则ρ的事实数量与规则体( ρ )满足的次数之比,定义为
置信度假设从规则库中导出的所有事实都应该包含在KGs中。然而,实践中KGs往往是不完整的,这可能导致证据事实的缺失。因此,我们引入PCA置信度来选择能够更好地泛化到看不见的事实的规则。
定义为KGs部分完成时满足规则ρ的事实数与规则体( ρ )满足的次数之比,定义为
PCA置信度的分母不是来自规则体的整个事实集的大小。相反,它是基于我们知道的事实数量是真的,以及我们假设的事实数量是假的。因此,PCA置信度能更好地估计不完备KGs中规则的质量和可推广性。规则质量评估的实验结果也支持了这一说法。
经过逻辑规则排序,我们得到了目标关系rh的一组排序规则Rrh = { ( ρ , s ( ρ) ) }。虽然我们可以对支持度为零的规则进行剪枝,以提高生成规则的质量,但需要注意的是,KGs中可能存在噪声,会导致伪规则的存在。这些规则在KGs中似乎得到了事实的支持,但在逻辑上是错误的( Hou et al 2021),这可能会导致下游任务中错误的预测。因此,我们利用LLM的推理能力,使用思维链( CoT )推理( Wei et al 2022)来验证规则的逻辑正确性。
对于每一条规则ρ∈Rrh,我们将其输入到CoT提示模板中,并要求LLM验证其逻辑正确性。排序后有8个支持度的伪规则的例子如图4所示。完整的CoT提示模板见附录。验证结束后,可以自动去除伪规则,得到最终的规则Prh。
图4:规则"丈夫( X , Y)←侄子 ( X , Z1) & 姑姑 ( Z1 , Y) "的CoT规则验证提示示例及结果。
Cot规则验证提示
逻辑规则定义了两个实体X和Y之间的关系,现在请逐步分析这种关系规则路径,检查其是否正确。规则:丈夫( X , Y) < - -侄子( X , Z _ 1) &姑姑( Z _ 1 , Y)
输出
我们对给定的规则进行逐步分析:
1 . ' 侄子( X , Z _ 1) ':这个条件暗示了存在一个关系,其中X是Z _ 1的侄子。换句话说,Z _ 1是X的父亲的舅舅或姑姑。
2 . ' 姑姑( Z _ 1 , Y) ':这个条件暗示了存在一种关系,其中Z _ 1是Y的姑姑,换句话说,Z _ 1是Y的父亲的姐姐。
现在,将这两个条件结合在规则中:
3 . "丈夫( X , Y) ":这个条件意味着存在这样一种关系,其中X是Y的丈夫。
给定的规则似乎描述了一种情况,根据给定的条件,如果X是某人( Z _ 1 )的侄子,Z _ 1是某人( Y )的姨妈,那么X是Y的丈夫。然而,这个结论在逻辑上并没有从前提中得到遵循。
因此,对该规则的分析揭示了它是(不正确的)。
最后的规则可以用于逻辑推理和解决下游任务,例如知识图谱补全,通过应用现有的算法,如前向链( Salvat和米尼耶1996)。给定一个查询( e、rh、?),设A为候选答案集合。对于每一个e′∈A,我们可以应用Prh中的规则来获得分数
式中,body ( ρ ) ( e , e′)表示满足规则体的KGs中的路径,s ( ρ )表示规则的质量分数,可以是收敛的,也可以是置信度,也可以是PCA置信度。然后,根据得分对候选答案A进行排序,选择前N个答案作为最终结果。
在实验中,我们根据之前的研究( Cheng et al 2022)选取了4个广泛使用的数据集:Family ( Hinton等( 1986 ))、WN18RR (德特默斯等2018)、FB15K237 (图塔诺瓦和陈2015)和YAGO3 - 10 (苏查内克、Kasneci和Weikum 2007)。数据统计汇总如表1所示。
家庭( Hinton等( 1986 ))是一个知识图谱,它定义了家庭中成员之间的关系,例如"父亲","母亲"和"姑姑"。
WN18RR (德特默斯等2018)是一个英语词汇知识图谱,旨在根据单词之间的语义关系来组织单词。词之间通过一系列关系连接,包括"上位词","派生词"等。
FB15k-237 (图塔诺瓦和陈2015)是从Freebase中提取的知识图谱的子集,它收集了广泛的主题范围内的数据和237种不同的关系。
YAGO3-10 (苏查内克、Kasneci和Weikum 2007)是由Wikipedia,词网和GeoNames等多个数据源构建的另一个大规模知识图谱,它包含许多关系,例如"出生在","生活在"和"...的政治家"。
我们将我们的方法与SOTA规则挖掘基线:AIME ( Gal ' arraga等2013),NeuralLP ( Yang , Yang , and Cohen 2017),DRUM ( Sadeghian等2019),RNNLogic ( Qu et al 2020),RLogic ( Cheng et al 2022)和NCRL ( Cheng , Ahmed和Sun 2022 )在知识图谱补全和规则质量评估任务上进行了比较。
AIME ( Gal ' arraga等2013)是一种常规的逻辑规则挖掘方法,通过归纳逻辑编程从KG中发现规则;
Neural LP ( Yang , Yang , and Cohen 2017)提出了一种神经逻辑编程,以端到端的差分方式学习逻辑规则;
DRUM ( Sadeghian等2019)将Neural LP与LSTM和注意力机制相结合,挖掘可变长度规则;
RNNLogic ( Qu et al 2020)提出了一个规则生成器和一个带有逻辑规则的推理预测器。它开发了一种基于EM的算法来优化和学习用于推理的高质量规则。
Rlogic ( Cheng et al 2022)引入了一个在采样路径上训练的评分模型,并使用演绎推理来估计每个规则的质量。
NCRL ( Cheng , Ahmed和Sun 2022 )通过递归地合并规则体中的成分来推断规则,从而检测出一个规则体的最佳组成结构,用于表达规则头。
对于知识图谱完成任务,我们屏蔽每个测试三元组的尾部或头部实体,并使用每个方法生成的规则进行预测。根据之前的研究(Cheng,Ahmed,和Sun 2022),我们使用平均倒数排名(MRR)和hits@N作为评价指标,并将N设置为1和10。对于规则质量评估任务,我们使用前上一节关于规则排序中讨论的度量(例如,支持、覆盖率、置信度和PCA置信度)。
对于ChatRule,我们分别使用ChatGPT和GPT - 4作为LLMs进行规则生成和验证。我们选择PCA置信度作为最终的规则排序度量,并将最大规则长度L设置为3。在知识图谱补全任务中,我们遵循与先前研究( Cheng et al 2022 ; Cheng , Ahmed和Sun 2022 )相同的设置。因此,我们直接使用这些论文中报告的结果,以避免重新实施偏倚。关于设置的详细讨论可以在附录中找到。
知识图谱补全是利用基于规则的逻辑推理对缺失事实进行预测的经典任务。该任务已被各种现有的规则挖掘方法所采用,如Neural - LP ( Yang , Yang , and Cohen 2017),RLogic ( Cheng et al 2022)和NCRL ( Cheng , Ahmed和Sun 2022 ),以评估生成规则的质量。我们采用每种方法生成的规则,并使用前向链( Salvat和米尼耶1996)来预测缺失的事实。结果见表2。
从结果中,我们可以观察到ChatRule在所有数据集上始终优于基线。具体来说,传统的AIME方法仅利用了归纳逻辑编程的结构信息,已经取得了较好的性能。但是,AIME在大规模的KGs (例如, FB15K - 237和YAGO3 - 10)中由于关系和三元组数量的增加而失败。最近基于深度学习的方法(如Neural - LP,DRUMP,andRNNLogic )通过利用神经网络的能力来实现更好的性能。然而,由于规则搜索空间的密集性,它们在处理大型KG时很容易成为内存溢出。现有的(例如, RLogic和NCRL)方法通过近路径采样来缩小搜索空间,但仍然忽略了关系的语义,从而导致次优的性能。相比之下,ChatRule通过结合KGs的结构和语义信息,可以生成高质量的规则。因此,ChatRule可以在所有数据集上达到最好的性能。
为了进一步说明(即支持度、覆盖率、置信度和PCA置信度)在规则排序中采用的4种度量方法的有效性,我们用它们来评估每种方法生成的规则。结果见表3。
从结果中,我们可以观察到ChatRule可以生成支持度、覆盖率和置信度均高于基线的规则。具体来说,我们可以观察到度量的得分与知识图谱补全中的表现是一致的。这说明所选取的度量指标能够很好地量化规则的质量。此外,ChatRule生成的规则质量优于基准规则。值得注意的是,即使ChatRule ( ChatGPT )在YAGO3 - 10的支持度和覆盖度上取得了较高的得分,其知识图谱补全结果仍然被ChatRule ( GPT-4 )击败。这是因为ChatRule ( GPT-4 )生成的规则具有更好的PCA置信度,更适合于不完备KG中规则的评估。较高的PCA置信度得分表明,ChatRule(GPT-4)可以生成具有更好的泛化能力的规则,而不是仅仅依赖于提示中提供的样本规则。因此,ChatRule (GPT-4)在知识图补全任务中可以取得更好的性能。
我们首先测试ChatRule中各个组件的有效性。我们使用GPT - 4作为LLM,PCA置信度作为规则排序度量。结果见表4。
GPT (零样本学习)是指在没有任何规则样本的情况下,直接使用GPT - 4生成规则。规则样本、摘要、排序和验证分别表示ChatRule中提出的组件。
从结果中我们可以观察到ChatRule的性能是随着各个组件的加入而逐渐提高的。具体来说,通过增加规则样本,ChatRule的性能得到了显著的提高,这表明了融入图结构信息对于规则挖掘的重要性。通过使用摘要、排序和验证,ChatRule的性能得到了进一步的提升。这说明这些组件可以进一步细化规则,提高ChatRule的性能。
然后,我们测试了规则排序中采用的每个度量(即覆盖率、置信度和PCA置信度)的有效性。这些规则都是由GPT - 4在Family和WN18RR数据集上生成的。结果见表5。
从结果可以看出,与没有使用排序测度(即,无)相比,使用排序测度后,ChatRule的所有性能都得到了提升。这表明排序度量可以有效地降低低质量规则的影响。在所有排序测度中,PCA置信度取得了最好的表现。这说明PCA置信度能够量化不完备KGs中规则的质量,选择泛化性更好的规则,也被选为最终的排序指标。
在实验中,我们评估了使用不同的LLMs (例如ChatGPT和GPT - 4)进行CoT规则验证的性能。这些规则都是由GPT - 4在Family和WN18RR数据集上生成的。结果见表6。
从结果可以看出,GPT4比ChatGPT取得了更好的性能。这说明GPT-4具有更好的逻辑推理能力,能够识别隐含的逻辑联系,检查规则的有效性。
我们在表7中给出了在Family和Yago数据集上生成的一些逻辑规则。结果表明,本文方法生成的规则既具有可解释性,又具有较高的质量。例如,"妻子"直观上是"丈夫"的反向关系,ChatRule在考虑关系语义的情况下成功挖掘出了"丈夫←inv妻子"规则。类似地,' playFor '是' isAffiliatedTo '的同义词,构成规则playFor←isAffiliatedTo。生成的规则也揭示了隐含的逻辑联系。规则为PoliticianOf←hasChild∧isPoliticianOf表示子女通常继承父母的政治立场,支持度和PCA得分都支持这一观点。
一个主要的限制是ChatRule严重依赖于关系的语义。即使我们输入采样规则来促使LLMs理解图结构,如果关系的语义没有明确给出,LLMs仍然无法生成高质量的规则。如表8所示,我们展示了Kinship数据集(科克和多明戈斯2007)上的知识图谱补全结果,其中每个关系用一个模糊名称(例如, "词条1 "和"词条2 ")表示。
从实验结果可以看出,ChatRule算法的性能并不优于STOA算法(例如, RNNLogic和NCRL)。在未来,我们将探索一种更好的方法(例如图神经网络( Wu et al 2020 ) ),使LLMs能够理解图结构,并在没有语义的情况下生成高质量的规则。
在本文中,我们介绍了一种新的方法,叫做ChatRule,以弥补KG上逻辑规则挖掘的不足。在ChatRule中,我们提出了一个基于LLMs的规则生成器,该生成器融合了语义和结构信息,以生成有意义的规则。此外,还开发了一个规则排序器和一个CoT规则验证器来评估规则的质量并剔除错误的规则。
在多个数据集上的大量实验表明ChatRule可以为下游任务生成高质量且可解释的规则。未来,我们将探索集成高级模型来增强LLMs对结构信息的理解,提高规则挖掘的性能。
ChatGPT:https://openai.com/blog/chatgpt
BARD:https://bard.google.com/
ChatGPT4:https://openai.com/gpt-4
创作不易,您的鼓励是我创作做大的动力!!!
点个关注再走呗~