网站的切换语言都是怎么做的,不写代码门户网站建设,教育校园网站建设方案,北京哪有建网站公司或个人的笔记整理 | 叶橄强#xff0c;浙江大学在读硕士#xff0c;研究方向为知识图谱的表示学习和预训练。知识图谱推理是支撑信息提取、信息检索和推荐等机器学习任务的基础组成部分#xff0c;并且由于知识图可以看作知识的离散符号表示#xff0c;自然可以利用符号技术做知识图… 笔记整理 | 叶橄强浙江大学在读硕士研究方向为知识图谱的表示学习和预训练。知识图谱推理是支撑信息提取、信息检索和推荐等机器学习任务的基础组成部分并且由于知识图可以看作知识的离散符号表示自然可以利用符号技术做知识图谱推理任务。但是符号推理对模糊和噪声数据容忍度很低在真正的应用中受到很多限制。而近年来深度学习的繁荣促进了知识图谱神经推理的快速发展它能很好地克服模糊和噪声数据带来的干扰因此具有较强的鲁棒性但与符号推理相比缺乏解释能力。正因为两种方法各有优缺点最近不少研究者将这两种推理方法结合起来进行了努力。该论文对符号推理、神经推理和混合推理在知识图上的发展进行了深入的研究而本文的分享主要聚焦于神经符号混合推理的相关方法。一、推理方法分类推理通常有三种主要的组合方法。1神经推理又称知识图谱嵌入其目的是学习知识图谱中实体和关系的分布嵌入向量在给定头实体和关系的情况下根据嵌入向量推断出答案实体。一般来说现有的神经推理方法可分为基于翻译的模型、乘法模型和深度学习模型。2符号推理其目的是从知识图谱中推导出一般的逻辑规则从给定的头实体派生的实体和遵循逻辑规则的查询关系作为答案返回。现有的符号推理方法主要是基于搜索的归纳逻辑程序设计Inductive Logic ProgrammingILP方法通常是对规则进行搜索和剪枝。3神经符号推理融合了神经推理和符号推理的优点的一种推理方法在下文中详细阐述。三种推理方法具体可以参考表1其中囊括了这三种方法下的主要代表模型表1 推理方法和知识图谱补全方法汇总二、神经符号推理本文的分享主要介绍神经符号推理部分。神经推理和符号推理有各自的特征并有着显著不同的优缺点符号推理擅长逻辑推理具有很强的可解释性但它很难处理实体和关系的不确定性以及自然语言的模糊性即对数据噪声的抵抗能力较差相反神经网络具有很强的容错行能够利用嵌入向量学习抽象语义并通过符号表示来进一步比较和运算这些嵌入向量而不只是实体和关系之间的字面意义。推理方向的最新进展结合了这两种推理方法可以将这些研究成果归纳汇总为三种类别。第一种是以神经推理为目标利用逻辑规则改进神经推理的嵌入称为符号驱动神经推理。第二种是用概率框架代替神经推理即建立一个概率模型来推断答案其中逻辑规则被设计为概率模型中的特征称为符号驱动概率推理。第三种是通过符号推理来推理规则但结合了神经网络来处理数据的不确定性和模糊性。这种方法减少了符号推理的搜索空间称为神经驱动符号推理。1.符号驱动神经推理符号驱动神经推理的基本思想是不仅学习知识图谱中原始观察到的三元组上的实体和关系嵌入而且学习根据一些预定义规则推断出的三元组或基本规则。1KALE模型KALE模型处理两种类型的规则KALE模型找到上述两类规则的所有基本规则为每个基本规则分配一个分数表示满足基本规则的可能性最后学习原始三元组和基本规则的训练集上的实体和关系嵌入。他们采用t-范数模糊逻辑将规则的真值定义为通过特定的基于t-范数的逻辑连接词将其组成部分的真值组成以计算基本规则f1的分数⇒ f2组件其中f表示一个原子即三元组或由逻辑运算关联的多个原子组成的公式{∧, ∨, ¬}。如果上述公式中的f是一个三元组则其得分由TransE方法计算如果f是一个公式则其分数被定义为其组成部分分数的组成2RUGE模型在KALE模型的基础上研究人员进一步提出RUGE模型并将一轮规则注入变为迭代方式。RUGE没有直接将基本规则作为KALE的正实例而是将一些规则派生的三元组作为未标记的三元组注入以更新实体或者关系嵌入。由于未标记的三元组不一定是真的研究人员根据当前的嵌入情况预测了每个未标记三元组的概率然后根据标记的和未标记的三元组更新嵌入。初始规则由AMIE方法获得这样就可以迭代地计算未标记的三元组评分过程和嵌入更新过程。3Wang等人提出的模型KALE模型和RUGE模型将规则或公式的分数计算为其组成部分的分数组成这可能导致规则或公式的高分即使其中的三元组完全不相关因为三元组的分数是分开估计的。为了解决这个问题Wang等人提出将一个三元组或一个基本规则转化为一阶逻辑然后根据一阶逻辑中包含的实体和关系的嵌入通过执行一些向量或者矩阵运算对一阶逻辑进行评分。表2 一阶逻辑的格式表2展示了一阶逻辑的格式表3展示了如何用数学表达式对一阶逻辑进行评分。这样包含在同一规则中的不同组件即三元组直接在向量空间中交互这保证了规则及其编码格式都具有一对一的映射转换。表3 一阶逻辑的数学表达式4IterE模型上述三种方法在学习过程中只推理一次规则然后保持规则不变。因此规则会影响嵌入向量学习但嵌入向量不利于规则的引用因此引出IterE模型。虽然IterE模型也在每次迭代中基于更新的嵌入推断出新的规则但它具体地推断出新的规则并从基于实体和关系嵌入的规则中导出新的三元组然后基于扩展的三元组集更新这些嵌入向量。这两个过程是迭代执行的新的置信规则是根据它们的分数推断出来的分数是通过对规则中包含的关系的矩阵执行一些矩阵运算计算出来的。为了获得初始规则池IterE模型提出了一种剪枝策略其思想与AMIE方法相似但结合了遍历和随机选择操作以平衡潜在规则的搜索过程和高度可能规则的收敛。2.符号驱动概率推理符号驱动概率推理将一阶逻辑与概率图形模型相结合在概率框架下学习逻辑规则的权重从而有效地处理不确定性。这种方法通常是先将规则接地即用知识图谱中的任何实体迭代替换规则原子中的变量直到不能推导出新的事实或者新的三元组然后将概率附加到基本规则上从而限定逻辑规则。在某种意义上逻辑规则的置信度和质量可以定义为预先构建的概率基础图上的概率分布如图1所示。图1 两个规则示例和对应的马尔可夫逻辑网络虚线是与规则R1相关联的组件实线是与规则R2相关联的组件灰色节点是要推断的未观察到的三元组符号驱动概率推理设计概率模型来度量规则的置信度而不是利用嵌入技术来限定规则。在这一节中我们介绍了两种典型的概率模型马尔科夫逻辑网络和ProbLog来解释这类方法的特点然后简要介绍了几种类似的方法。1马尔科夫逻辑网络马尔可夫逻辑网络Markov Logic NetworkMLN是基于预先定义的规则和以知识图谱为单位的事实建立一个概率图形模型然后学习不同规则的权重。具体来说给定一组规则{γi} 每个γi可以被知识图谱的三元组接地。然后根据这些基本规则可以建立如下马尔可夫逻辑网络① 为每个基本规则中的每个基本原子建立一个节点如果以知识图谱为单位观察则该节点的值设置为1否则设置为0。② 当且仅当对应的两个基态原子可同时用于实例化至少一个规则时在两个节点之间建立边。③ 基本规则中的所有节点即基本原子形成一个不一定是最大的组件它对应于一个特征如果基本规则为真则值为1否则为0权重wi与每个规则γi相关联。利用所建立的马尔可夫逻辑网络将网络中所有节点的值X的联合分布定义为其中ni(x)是规则的真实基础数γi而wi是规则对应的权重γi。然后将MCMC算法应用于马尔可夫逻辑网络中的推理并通过优化伪似然测度有效地学习权值。2pLogicNet模型由于三元组间复杂的图形结构马尔可夫逻辑网络的推理过程困难且效率低下。此外知识图谱中缺失的三元组也会影响规则推理的结果。由于最近的嵌入技术可以有效地预测丢失的三元组并且可以用随机梯度进行有效的训练pLogicNet模型提出将马尔可夫逻辑网络和图嵌入技术结合起来来解决上述问题。其基本思想是用马尔可夫逻辑网络定义三元组或者事实的联合分布并将每个逻辑规则与一个权重相关联但通过变分EM算法有效地学习它们。在该算法中E-step推断未观测三元组的合理性其中变分分布由知识图谱嵌入模型参数化如TransE模型等而M-step则通过对观察到的三元组和知识图谱嵌入模型推断出的三元组的伪似然进行优化来更新逻辑规则的权重。3ProbLog模型ProbLog模型是Prolog编程模型的概率扩展。与Prolog模型相比ProbLog模型为每个子句ci增加了一个概率它表示一个规则或一个基本原子。用于派生查询的子句示例即查找满足居住于LeBronS的所有实体e如下所示给定一个查询q三元组成功概率Pq | T定义为式中T{p1:c1…pn:cn}表示原因L⊆ LT{c1…cn}上的概率分布。第一个公式表示查询q的成功概率被分解为查询的所有联合概率和每个可能的原因集L的总和。第二个公式进一步将PqL | T分解为Pq | L和PL | T。Pq | L表示给定原因集L的查询q的概率如果至少有一个答案替换则其值等于1。第四个公式解释了如何计算原因集L的概率。为了计算成功概率Pq | L一个简单的方法是枚举所有可能的逻辑规则L及其实例。显然它在实际应用中效率很低。ProbLog模型根据Prolog的选择性线性定解Selective Linear DefiniteSLD算法为目标查询q构造了一个证明树解决了这个问题。标准SLD解析以自顶向下的方式构造SLD树如图2所示。它首先通过查询初始化根节点然后通过应用每个子句及其实例化递归地创建子目标当到达结束条件时迭代停止。例如子目标为空这意味着找到了可能的答案路径或达到最大树深度。因此每个可能的答案路径都与一组子句{p1:c1…pn:cn} ⊆ T关联。图2 为查询构建的SLD树的示例然后按照公式一到四可以很容易地计算出单个答案路径的成功问题。进一步应用二元决策图Binary Decision DiagramBDD计算多路径的成功概率。SLD树也是其他类似方法的基础如随机逻辑程序模型Stochastic Logic Programs, SLPs和个性化PageRank编程模型Programming with Personalized PageRankProPPR。4其他模型马尔可夫逻辑网络和ProbLog模型都学习规则的概率马尔可夫逻辑网络为所有规则建立全局概率图同时学习所有规则的概率而ProbLog模型为每个查询构建了一个本地SLD树并学习了支持目标查询的原因的问题能力。其他类似方法例如概率数据日志probabilistic DatalogMarkoViews模型随机逻辑程序模型SLPs也将概率附加到子句但在更新这些概率时具有不同的优化框架。例如随机逻辑程序模型定义了一个随机的遍历SLD树的过程在这个过程中通过向上加权所需的应答子句并向下加权其他子句来学习节点上定义的概率分布。使用个性化PageRank编程模型ProPPR是SLP模型的一个扩展它将随机抽样更改为基于个性化PageRank模型Personalized PageRankPPR的策略。他们使用PPR模型根据一些预先定义的特征计算每个子句的概率而不是直接在公式四中设置概率。 OpenKGOpenKG中文开放知识图谱旨在推动以中文为核心的知识图谱数据的开放、互联及众包并促进知识图谱算法、工具及平台的开源开放。点击阅读原文进入 OpenKG 网站。