别人公司网站进不去,wordpress相册页面,北京网站建设比较好的公司,性咨询ChatRule#xff1a;基于知识图推理的大语言模型逻辑规则挖掘 摘要引言相关工作初始化和问题定义方法实验 摘要
逻辑规则对于揭示关系之间的逻辑联系至关重要#xff0c;这可以提高推理性能并在知识图谱#xff08;KG#xff09;上提供可解释的结果。虽然已经有许多努力基于知识图推理的大语言模型逻辑规则挖掘 摘要引言相关工作初始化和问题定义方法实验 摘要
逻辑规则对于揭示关系之间的逻辑联系至关重要这可以提高推理性能并在知识图谱KG上提供可解释的结果。虽然已经有许多努力挖掘有意义的逻辑规则的知识库现有的方法遭受计算密集型搜索的规则空间和缺乏可扩展性的大规模知识库。此外他们往往忽略了关系的语义这是揭示逻辑连接的关键。近年来大型语言模型LLM由于其涌现能力和泛化能力在自然语言处理和各种应用领域表现出令人瞩目的性能。在本文中我们提出了一个新的框架ChatRule释放大型语言模型的能力挖掘知识图谱上的逻辑规则。具体来说该框架是启动与基于LLM的规则生成器利用语义和结构信息的KG提示LLM生成逻辑规则。为了细化生成的规则规则排名模块通过合并来自现有KG的事实来估计规则质量。最后规则验证器利用LLM的推理能力通过思维链推理来验证排名规则的逻辑正确性。ChatRule在四个大型KG上进行了评估w.r.t.不同的规则质量指标和下游任务显示了我们的方法的有效性和可扩展性。
引言
知识图谱KGs以三元组的结构化格式存储大量的现实世界知识。KG推理旨在从现有事实中推断新知识是KG中的一项基本任务对许多应用至关重要例如KG补全问答和推荐。最近越来越需要可解释的KG推理它可以帮助用户理解推理过程并提高高风险场景中的可信度例如医疗诊断和法律的判断。因此逻辑规则这是人类可读的可以推广到不同的任务已被广泛采用的KG推理。例如如图1所示我们可以确定一个逻辑规则GrandmotherXY← MotherXZ∧FatherZY来预测关系“Grandmother”的缺失事实。为了从KG中自动发现有意义的规则进行推理逻辑规则挖掘在研究界得到了极大的关注YangYang和Cohen 2017; Sadeghian等人2019。 早期关于逻辑规则挖掘的研究通常通过发现KG结构中频繁模式的共现来发现逻辑规则。然而他们通常需要列举所有可能的规则并根据估计的重要性对它们进行排名。尽管如此最近的研究已经提出使用深度学习方法来对规则进行排名。它们仍然受到规则详尽列举的限制无法扩展到大型KG。
最近的一些方法通过从KG中采样路径并在其上训练模型来捕获形成规则的逻辑连接来解决这个问题。但是它们通常忽略了关系语义对表达逻辑连接的贡献。例如在常识中我们知道一个人的“父亲”的“母亲”是他的“祖母”。在此基础上我们可以定义一个规则如GrandmotherXY← MotherXZ∧ FatherZY来表示逻辑连接。然而由于KG的关系数量有些人要求领域专家为每个关系注释规则。因此在知识图谱上自动结合结构和语义的关系和发现逻辑规则是必不可少的。
ChatGPT1和BARD2等大型语言模型LLM在理解自然语言和处理许多复杂任务方面表现出强大的能力。在大规模语料库上训练LLM存储了大量的常识知识可用于促进KG推理。同时LLM不是为了理解KG的结构而设计的这使得很难直接应用它们来挖掘KG上的逻辑规则。此外广泛承认的幻觉问题可能使LLM生成无意义的逻辑规则。
为了缓解LLM和逻辑规则挖掘之间的差距我们提出了一个新的框架称为ChatRule它利用语义和结构信息的KG提示LLM在生成逻辑规则。具体来说我们首先提出了一个基于LLM的规则生成器为每个关系生成候选规则。我们从KG中抽取一些路径来表示结构信息然后在精心设计的提示中使用这些路径来利用LLM进行规则挖掘的能力。为了减少幻觉的问题我们设计了一个逻辑规则排序器以评估生成的规则的质量和过滤掉无意义的规则 包括在KG观察到的事实。质量分数进一步用于逻辑推理阶段以减少低质量规则的影响。最后为了去除KG支持但逻辑上不正确的虚假规则我们利用LLM的逻辑推理能力通过思维链CoT推理使用规则验证器验证规则的逻辑正确性。在我们的框架中挖掘出的规则可以直接用于下游任务而无需任何模型训练。在四个大型KG上的大量实验表明ChatRule在知识图完成和规则质量评估方面都显着优于最先进的方法。
本文的主要贡献总结如下
我们提出了一个名为ChatRule的框架该框架利用LLM的优势来挖掘逻辑规则。据我们所知这是第一个应用LLM进行逻辑规则挖掘的工作。我们提出了一个端到端的流水线利用LLM的推理能力和KG的结构信息进行规则生成规则排名和规则验证。我们在四个数据集上进行了广泛的实验。实验结果表明ChatRule的性能明显优于现有的方法。
相关工作
逻辑规则挖掘 逻辑规则挖掘是从知识库中提取有意义的规则的一种方法。传统方法枚举候选规则然后通过计算权重得分来访问它们的质量。随着深度学习的发展研究人员探索了以可微方式同时学习逻辑规则和权重的想法。然而这些方法仍然对规则空间进行大量优化这限制了它们的可扩展性。最近研究人员提出从KG中采样路径并在其上训练模型以学习逻辑连接。RLvLR从子图中采样规则并提出了一个基于嵌入的评分函数来估计每个规则的重要性。RNNLogic将规则生成和规则加权分离可以相互增强减少搜索空间。R5提出了一种强化学习框架它可以在KG上进行搜索并挖掘潜在的逻辑规则。RLogic和NCRL预测了规则体的最佳组成是该领域最先进的方法。然而它们不考虑关系的语义可能导致次优结果。
LLM 大型语言模型LLM正在彻底改变自然语言处理和人工智能领域。许多LLM例如ChatGPT 1、Bard 2、FLAN和LLaMA在各种任务中表现出较强的能力。最近研究人员还探索了将LLM应用于解决KG任务的可能性。为了更好地发挥LLM的潜力研究人员设计了一些带有少量例子的提示或思维链推理以最大限度地发挥他们的能力。然而这些方法不是为逻辑规则挖掘而设计的这需要LLM理解KG的结构和关系的语义以生成有意义的规则。
初始化和问题定义
知识图谱KG 以三元组G {ere′∈ E × R × E}的形式表示事实的集合其中ee′ ∈ E和r ∈ R分别表示实体和关系的集合。 逻辑规则 逻辑规则是一阶逻辑的特殊情况它可以促进KG上的可解释推理。逻辑规则ρ以下列形式陈述逻辑蕴涵 其中bodyρ r1XZ1∧· ·∧rLZL−1Y表示一系列称为规则体的关系的合取rhXY表示规则头L表示规则的长度.如果满足规则体上的条件则规则头上的语句也成立。
该规则的一个实例是通过用KG中的实际实体替换变量X、Y、Z来实现的。例如给定规则GrandmotherXY← MotherXZ1∧FatherZ1Y一个规则实例δ可以是 也就是说如果爱丽丝是鲍勃的母亲鲍勃是查理的父亲那么爱丽丝就是查理的祖母。
问题定义 给定一个目标关系rh ∈ R作为规则头逻辑规则挖掘的目标是找到一组有意义的规则Prh {ρ1· · ·ρK}这些规则捕获了其他关系的逻辑连接以表示KG中的目标关系rh。
方法
在本节中我们将介绍一个被称为ChatRule的框架用于在具有大型语言模型的KG上挖掘逻辑规则。整个框架如图2所示其中包含三个主要组件1基于LLM的规则生成器它利用语义和结构信息生成有意义的规则。2)一个规则排序器用于估计KG上生成的规则的质量以及3一个思想链CoT规则验证器用于验证规则的逻辑正确性。
基于LLM的规则生成器 逻辑规则挖掘的传统研究通常集中在使用结构信息这忽略了关系语义对表达逻辑连接的贡献。为了利用大型语言模型LLM的语义理解能力我们提出了一个基于LLM的规则生成器它利用KG的语义和结构信息来生成有意义的规则。
规则采样器 为了使LLM能够理解规则挖掘的KG结构我们采用广度优先搜索BFS采样器从KG中采样一些闭合路径这些路径可以被视为逻辑规则的实例。给定三元组e1rheL闭合路径被定义为在KG中连接e1和eL的关系r1· · ·rL的序列即 。例如给定一个三元组AliceGrandmotherCharlie闭合路径p可以被发现为 这关闭了KG的三元组爱丽丝祖母查理。通过将三元组视为规则头将闭合路径视为规则体我们可以获得公式2中所示的规则实例δ。
给定一个目标关系rh我们首先从KG中选取一组种子三元组{erhe′}然后进行BFS从中抽取一组长度小于L的闭合路径{p}构成一组规则实例{δ}。接下来我们用变量替换规则实例中的实际实体以获得规则样本Srh {p}。规则样本以顺序的格式传递知识库的结构信息这些信息可以被馈送到大型语言模型中以促进规则生成。
基于LLM的规则生成 在大规模语料库上训练的大型语言模型LLM表现出理解自然语言语义并使用常识知识执行复杂推理的能力。为了合并这个结构和语义信息我们设计了一个精心制作的提示利用LLM规则挖掘的能力。
对于从Srh获得的规则采样器为目标关系rh的每个规则我们通过去除关系名称中的特殊符号将其动词化为自然语言句子这可能会恶化LLM的语义理解。对于原始关系的逆即wife-1我们通过添加inv_符号来表示它。然后我们将语言化的规则样本放置到提示模板中并将它们馈送到LLM中例如ChatGPT来生成规则。图3中示出了规则生成提示和关系“丈夫XY”的LLM的结果的示例。 基于LLM的规则摘要 由于规则样本的数量很大它们不能同时被馈送到LLM中因为超过了上下文限制。因此我们将规则样本拆分为多个查询以提示LLM生成规则。然后我们收集LLM的响应并要求LLM总结结果并得到一组候选规则Crh {ρ}。详细的提示可以在附录中找到。
逻辑规则排名 LLM存在幻觉问题这可能会生成不正确的结果。例如生成的规则husbandXY← husbandXZ1 brotherZ1Y如图3所示是不正确的。因此我们开发了一个规则排序器来检测幻觉并根据KG中的事实估计生成规则的质量。
规则排序器旨在为候选规则集Crh中的每个规则ρ分配质量得分s(ρ)。出于先前的规则挖掘工作, 我们采用四种度量即支持度、覆盖度、置信度和PCA置信度来评估规则的质量。每项措施的详细介绍和例子见附录。
支持度 表示KG中满足规则ρ的事实的数量其定义为 其中e1r1e2· · ·eL-1rLe′表示KG中满足规则体主体ρ的一系列事实erhe′表示满足规则头rh的事实。
显然支持度为零的规则可以很容易地从候选集合中删除而无需任何进一步的细化。然而支持度是一个绝对数字对于KGs中具有更多事实的关系可能更高并提供有偏见的排名结果。
覆盖率通过KG中每个关系的事实数对支持度进行标准化定义为 覆盖率量化了规则ρ所隐含的KG中现有事实的比例。为了进一步考虑规则的不正确预测我们引入了置信度和PCA置信度来估计规则的质量。置信度被定义为在KG中满足规则ρ的事实的数量与规则主体主体ρ被满足的次数的比率其被定义为 置信度假设从规则主体导出的所有事实都应包含在KG中。然而在实践中知识证明往往是不完整的这可能导致证据事实的缺失。因此我们引入PCA置信度来选择可以更好地推广到未知事实的规则。
PCA置信度 被定义为在KG的部分完成中满足规则ρ的事实数与满足规则主体的次数ρ的比率其被定义为 PCA置信度的分母不是从规则主体导出的整个事实集的大小。相反它是基于我们知道的事实的数量是真实的沿着那些我们假设是错误的。因此PCA置信度可以更好地评价不完备知识库中规则的质量和泛化能力。规则质量评估的实验结果也支持这一说法。
规则验证的CoT推理 在逻辑规则排序之后我们获得目标关系rh的一组排序规则Rrh {ρs (ρ) }。虽然我们可以修剪零支持的规则以提高生成规则的质量但重要的是要注意KG中可能存在噪声这可能导致虚假规则的存在。这些规则似乎得到了KG中事实的支持但在逻辑上是不正确的这可能导致下游任务的预测不正确。因此我们利用LLM的推理能力来验证具有思想链CoT推理的规则的逻辑正确性。
对于每个规则ρ ∈ Rrh我们将其馈送到CoT提示模板中并要求LLM验证其逻辑正确性。图4中显示了一个在排名后有8个支持度的虚假规则示例。完整的CoT提示模板见附录。在验证之后我们可以自动删除虚假规则以获得最终规则Prh。
规则逻辑推理 最终的规则可以用于逻辑推理和解决下游任务如知识图完成通过应用现有的算法如正向链接。给定一个查询erh设A为候选答案的集合。对于每个e′ ∈ A我们可以应用Prh中的规则来获得得分 其中bodyρee′表示KG中满足规则主体的路径s(ρ)表示规则的质量分数其可以是收敛、置信度和PCA置信度。然后我们可以根据分数对候选答案A进行排名并选择前N个答案作为最终结果。
实验
数据集 在实验中我们根据先前的研究选择了四个广泛使用的数据集FamilyWN 18 RRFB 15 K237和YAGO 3 -10。数据集的统计总结见表1。
基线 我们将我们的方法与SOTA规则挖掘基线进行比较AIMENeuralLPDRUMRNNLogicRLogic和NCRL在知识图完成和规则质量评估任务上。
度量 对于知识图完成任务我们屏蔽每个测试三元组的尾或头实体并使用每种方法生成的规则来预测它。根据以前的研究我们使用平均倒数秩MRR和命中率N作为评估指标并将N设置为1和10。对于规则质量评估任务我们使用度量例如支持度、覆盖度、置信度和PCA置信度。
实验设置 对于ChatRule分别使用ChatGPT 1和GPT-43作为LLM进行规则生成和验证4。我们选择PCA置信度作为最终的规则排序度量并将最大规则长度L设置为3。在知识图完成任务中我们遵循与先前研究相同的设置。因此我们直接使用这些论文中报告的结果以避免重新实施的偏见。有关设置的详细讨论可参见附录。
知识图谱补全 知识图谱补全是一个经典的任务旨在通过使用基于规则的逻辑推理来预测缺失的事实。该任务已被各种现有的规则挖掘方法所采用如Neural-LPRLogic和NCRL以评估生成规则的质量。我们采用每种方法产生的规则并使用前向链接来预测缺失的事实。结果示于表2中。从结果中我们可以观察到ChatRule在所有数据集上的表现始终优于基线。具体来说传统的AIME方法它只利用结构信息与归纳逻辑编程已经取得了比较好的性能。但是AIME在大型KG中失败例如FB15K-237和YAGO3-10这是由于关系和三元组的数量不断增加。最近的基于深度学习的方法例如Neural-LP、DRUMP和RNNLogic通过利用神经网络的能力来实现更好的性能。然而由于规则搜索空间的密集大小它们在处理大型KG时很容易耗尽内存。通过最先进的方法例如RLogic和NCRL采用闭合路径采样来减小搜索空间但仍然忽略了关系的语义导致性能不佳。相比之下ChatRule可以通过合并KG的结构和语义信息来生成高质量的规则。因此ChatRule可以在所有数据集上实现最佳性能。
规则质量评估 为了进一步证明四项措施的有效性即支持度、覆盖度、置信度和PCA置信度我们使用它们来评估每种方法生成的规则。结果示于表3中。
从结果中我们可以观察到ChatRule可以生成比基线具有更高支持度覆盖率和置信度的规则。具体来说我们可以观察到这些指标的得分与知识图完成的表现一致。这表明所选择的措施可以很好地量化规则的质量。此外ChatRule生成的规则质量优于基线。值得注意的是即使ChatRuleChatGPT在支持度和覆盖率方面取得了更高的分数YAGO 3 -10的知识图谱完成结果仍然被ChatRuleGPT-4击败。这是因为ChatRuleGPT-4生成的规则具有更好的PCA置信度更适合于评估不完整KG中的规则。较高的PCA置信度得分表明ChatRuleGPT-4可以生成具有更好泛化性的规则而不是仅依赖于采样规则在提示中提供。因此ChatRuleGPT-4在知识图完成任务中可以实现更好的性能。
消融研究 分析每个组件。我们首先测试ChatRule中每个组件的有效性。我们使用GPT-4作为LLM和PCA置信度作为规则排序度量。结果示于表4中。GPTzero-shot表示我们直接使用GPT-4生成规则而不需要任何规则样本。规则样本、摘要、排名和验证分别表示ChatRule中提出的组件。
从结果中我们可以观察到ChatRule的性能随着添加每个组件而逐渐提高。具体地说ChatRule的性能显着提高通过添加规则样本这表明了重要的是将图结构信息的规则挖掘。通过应用摘要、排名和验证ChatRule的性能得到了进一步提高。这表明这些组件可以进一步细化规则并提高ChatRule的性能。
排名方式分析 然后我们测试每个措施的有效性即覆盖率、置信度和PCA置信度。这些规则都是由GPT-4在Family和WN 18 RR数据集上生成的。结果示于表5中。从结果中我们可以看到与没有排名措施相比通过应用排名措施ChatRule的所有性能都得到了改善即无。这表明排名措施可以有效地减少低质量的规则的影响。PCA置信度在所有排名措施中达到最佳性能。这表明PCA置信度能够量化不完整KG中规则的质量并选择具有更好的泛化能力的规则这也被选为最终的排名度量。
CoT验证分析 在实验中我们评估了使用不同LLM的性能例如ChatGPT和GPT-4进行CoT规则验证。这些规则都是由GPT-4在Family和WN 18 RR数据集上生成的。结果如表6所示。从结果中我们可以看到GPT 4比ChatGPT实现了更好的性能。这个测试结果表明GPT-4具有较强的逻辑推理能力能够识别隐含的逻辑关系并能检验规则的有效性。
案例研究 我们在表7中展示了在Family和Yago数据集上生成的一些逻辑规则。实验结果表明该方法生成的规则具有良好的可解释性和高质量。例如“wife”直观上是“husband”的逆关系ChatRule在考虑关系语义的基础上成功挖掘出规则husband ← inv_wife。类似地“playsFor”是“isAffiliatedTo”的同义词其构成规则playsFor ← isAffiliatedTo。生成的规则还揭示了隐含的逻辑连接。规则isPoliticianOf ← hasChild ∧ isPoliticianOf表明孩子通常继承父母的政治立场这是由支持和PCA分数支持的。
限制 一个主要的限制是ChatRule严重依赖于关系的语义。即使我们提供采样规则来提示LLM理解图结构如果关系的语义没有明确给出LLM仍然不能生成高质量的规则。如表8所示我们展示了Kinship数据集上的知识图完成结果其中每个关系都由一个模糊的名称表示例如“第1项”和“第2项”。从结果中我们可以看到ChatRule不能优于STOA方法例如RNNLogic和NCRL。在未来我们将探索一种更好的方法例如图神经网络Wu et al. 2020使LLM能够理解图结构并生成高质量的规则即使没有语义。