深入解析知识图谱嵌入:方法、应用及基准

2024年10月17日 由 alex 发表 43 0

介绍

知识图谱嵌入是一个快速发展的领域,在提高大规模知识图谱的可用性和性能方面潜力巨大。Dai 等人对该领域当前最先进的方法、应用和基准进行了全面调查。虽然已经取得了令人印象深刻的进展,但在纳入更多信息、提高推理能力和扩展到新领域方面仍然存在挑战和机遇。随着研究的不断深入,知识图谱嵌入技术的应用范围将不断扩大,预计将会出现更强大、更多用途的方法,从而为各个领域带来新的应用和见解。本文章旨在回顾他们调查的主要发现。


知识图谱嵌入概述

知识图谱嵌入旨在将知识图谱(KG)中的实体和关系表示为连续特征空间中的低维密集向量,同时保留图谱的固有结构和语义。这样就能对大规模知识图谱进行高效计算、存储和推理。嵌入过程通常包括定义实体和关系的编码方案、衡量事实可信度的评分函数,以及通过最小化训练数据上的损失函数来学习嵌入的优化算法。


知识图谱嵌入方法的类别

知识图谱嵌入方法根据其利用的信息类型可大致分为两大类:基于三元组事实的表征学习模型和基于描述的表征学习模型。


基于三元组事实的表示学习模型完全基于知识图谱中观察到的事实来学习实体和关系嵌入,这些事实表示为三元组(h, r, t),其中 h 是头部实体,r 是关系,t 是尾部实体。这些模型旨在捕捉三元组中的固有结构和模式,从而生成有意义的嵌入。基于三元组事实的模型可进一步分为三个子类别: 基于翻译的模型、基于张量因式分解的模型和基于神经网络的模型。


基于描述的表征学习模型利用知识图谱三元组结构之外的额外信息来学习更具表现力和信息量的嵌入。这些模型结合了外部数据源,如实体和关系的文本描述或多跳关系路径,以丰富嵌入过程并捕捉更深层的语义。基于描述的模型可分为两个子类别: 基于文本描述的模型和基于关系路径的模型。


基于翻译的模型

基于翻译的模型在连续向量空间中表示实体和关系,并将关系解释为对实体嵌入的翻译。一般的想法是,尾部实体的嵌入应该接近头部实体的嵌入加上关系嵌入。这些模型的评分函数通常基于翻译后的头部实体与尾部实体之间的距离。


7


这一类中有几个著名的模型,例如:

TransE 是这类模型中第一个也是最简单的模型。它将关系 r 建模为平移向量 r,这样嵌入实体 h 和 t 就可以通过 r 以较低的误差连接起来,即如果(h, r, t)成立,则 h + r ≈ t。然而,TransE 在处理 1 对 N、N 对 1 和 N 对 N 关系时存在局限性。

TransH 通过引入特定关系超平面来解决这些问题。实体在转换操作前被投影到这些超平面上,从而允许实体在不同关系下的不同嵌入。

TransR 扩展了 TransH,允许每种关系都有自己的嵌入空间,并在特定关系空间中执行翻译。这使得该模型能捕捉到更复杂的语义模式。

TransD 将投影矩阵分解为两个向量的乘积,从而简化了 TransR,减少了参数数量,提高了效率。

TransA 引入了一种自适应机制,为每种关系学习最合适的矩阵,为复杂关系建模提供了更大的灵活性。

KG2E 是一种概率嵌入方法,它将实体和关系表示为高斯分布。它可以捕捉知识图谱中的不确定性,并处理 1 对 N、N 对 1 和 N 对 N 等复杂关系。

TransG 将关系建模为高斯分布的混合物,允许关系有多种含义或语义。关系的每个语义成分都以高斯分布为特征,而三元组的得分则根据每个语义成分下的似然值的加权和来计算。


这些基于翻译的模型已被广泛使用,并在链接预测和三元组分类等各种知识图谱任务中表现出良好的性能。不过,与基于张量因子化和神经网络的模型相比,它们在捕捉更复杂的模式和长程依赖关系方面可能会有困难。


基于张量因式分解的模型

基于张量因子化的模型将知识图谱表示为一个三向张量,其中的维度分别对应头部实体、关系和尾部实体。张量中的每个元素表示知识图谱中是否存在三元组(h、r、t)。我们的目标是将这个庞大、稀疏的张量分解成较小、密集的因子矩阵(嵌入),以捕捉知识图谱的潜在语义结构。


8


在知识图谱嵌入中,张量因式分解方法学习实体和关系的低维向量表示(嵌入)。对这些嵌入进行训练,以准确重建原始张量并预测知识图谱中的缺失链接。


基于张量因式分解模型的一般方法包括定义一个评分函数,根据学习到的嵌入来衡量三元组(h、r、t)的可信度。该评分函数旨在为真实的三元组打高分,为错误或缺失的三元组打低分。通过最小化目标函数来优化嵌入,从而提高真三元组的得分,同时降低假三元组的得分。


9


不同的基于张量因子化的模型提出了不同的评分函数和嵌入参数。例如:

RESCAL 使用双线性评分函数,其中每个关系都表示为一个与头部和尾部实体嵌入交互的全等级矩阵。

DistMult 限制关系矩阵为对角线,从而简化了 RESCAL,减少了参数数量,提高了模型效率。

ComplEx 通过使用复值嵌入对 DistMult 进行了扩展,从而可以对非对称关系进行建模。

HolE 使用圆周相关性作为评分函数,可以使用快速傅里叶变换在频域中高效计算。

SimplE 为每个实体学习两个独立的嵌入(一个用于头部角色,一个用于尾部角色),以更好地处理非对称关系。

RotatE 将关系表示为复向量空间中的旋转,其中尾部实体嵌入是通过旋转头部实体嵌入获得的。

QuatE 通过使用四元数嵌入对 RotatE 进行了扩展,从而可以在实体之间进行更具表现力的转换。


在训练过程中,模型通过最小化损失函数来学习实体和关系嵌入,该损失函数用于测量预测分数与真实标签之间的差异(例如,二元交叉熵损失或成对排序损失)。优化通常采用基于梯度的方法,如随机梯度下降法或亚当法。


基于张量因式分解的模型的主要优势之一是能够捕捉各种类型的语义模式和关系,如对称、反对称和组合。这些模型在链接预测和知识图谱补全等任务中表现出很强的性能,往往优于 TransE 等基于翻译的简单模型。


不过,与某些基于神经网络的模型相比,基于张量因式分解的模型可能难以模拟更复杂的多跳关系,也难以捕捉知识图谱中的长程依赖关系。此外,这些模型中的参数数量会越来越大,尤其是像 RESCAL 这样使用全等级关系矩阵的方法,这可能会导致过度拟合,并给大规模知识图谱的计算带来挑战。


基于神经网络的模型

基于神经网络的模型采用各种神经架构来学习实体和关系的表达式嵌入。这些模型可以捕捉知识图谱中的复杂模式和长距离依赖关系。


10


一些突出的例子包括:

SME(语义匹配能量)使用神经网络来学习实体和关系的嵌入。它定义了一个能量函数,用于衡量给定关系的头部和尾部实体之间的兼容性。该模型通过最小化正三元组的能量和最大化负三元组的能量来学习嵌入。

NTN(神经张量网络)使用双线性张量层来模拟实体和关系之间的交互。它将三元组(h, r, t)的得分计算为头部实体嵌入、特定关系张量和尾部实体嵌入之间的双线性乘积的加权和。NTN 可以捕捉复杂的语义模式,但参数较多。

MLP(多层感知器)使用简单的前馈神经网络来学习实体和关系嵌入。它将头部实体、关系和尾部实体的嵌入连接起来,并通过多个全连接层。最后一层产生一个分数,表示三元组的可信度。

NAM(神经关联模型)使用深度神经网络学习实体和关系的嵌入。它首先使用一个连接层将头部实体和关系嵌入相结合,然后将结果通过多个具有 ReLU 激活的隐藏层。最终得分由最后一个隐藏层的输出与尾部实体嵌入之间的点积计算得出。

RMNN(关系记忆神经网络)是对 NAM 的扩展,它引入了特定关系记忆,以捕捉实体之间的长期依赖关系。内存根据输入的实体和关系嵌入进行读取和更新,从而实现更具表现力和上下文感知的表征。

ConvKB(卷积知识库嵌入)将卷积过滤器应用于头部实体、关系和尾部实体的连接嵌入。它首先将串联嵌入重塑为二维矩阵,然后应用多个卷积滤波器捕捉不同的模式。卷积层的输出经过扁平化处理后,通过全连接层产生最终分数。


与基于翻译和张量因式分解的模型相比,这些基于神经网络的模型具有更强的表现力,可以捕捉到更复杂的模式。不过,它们通常需要更多的训练数据和计算资源。具体模型的选择取决于知识图谱的特征以及模型复杂性和性能之间的权衡。


基于文本描述的模型

这些模型结合了与实体和关系相关的文本信息,如实体描述或类型,以增强嵌入的表现力。


11


DKRL(描述-嵌入式知识表示学习)通过将文字描述与传统的KG结构信息结合起来,增强了实体嵌入。传统的 KG 嵌入模型仅依靠三元组结构来学习嵌入,而 DKRL 则通过嵌入实体描述中丰富的文本信息来扩展嵌入。这种方法可以让模型捕捉到更多语义深度和上下文信息,而这些信息往往是 KG 结构本身所缺失的。

DKRL 使用两种编码器来嵌入实体描述: 连续词袋 (CBOW) 和卷积神经网络 (CNN)。CBOW 编码器通过平均描述中的单词嵌入来创建嵌入,这种方法计算效率高,但可能会忽略文本中的复杂模式。相比之下,CNN 编码器对单词嵌入进行卷积过滤,以捕捉分层模式和上下文依赖关系,从而生成内容更丰富、信息量更大的实体嵌入。CBOW 将所有单词独立处理,忽略了文本的顺序和结构,限制了其捕捉详细关系的能力,而 CNN 方法可以识别短语和模式,使其更适合理解自然语言的复杂性。这使得 CNN 编码器能更有效地捕捉 CBOW 可能遗漏的详细语义信息,从而在需要深入理解实体描述的任务中提高性能。

DKRL 的训练过程包括最小化基于边际的排序损失,该损失同时考虑了结构和文本信息。我们的目标是将正三元组排序高于已损坏的(负)三元组,确保学习到的嵌入能准确反映实体的关系和文本上下文。

TEKE(Type-Embodied Knowledge Embedding,类型嵌入式知识嵌入)通过纳入类型信息来规范嵌入,从而增强实体嵌入。这种方法假定同一类型的实体应具有相似的嵌入。通过在损失函数中引入基于类型的正则化项,TEKE 可确保具有相同类型的实体嵌入之间的距离最小化,而不同类型的实体之间的距离最大化。这有助于捕捉实体之间的语义相似性和差异性,从而获得更准确、更有意义的嵌入。

TEKE 模型将基于类型的正则化与 KG 嵌入模型中使用的传统基于边际的排序损失相结合。这两种损失函数的结合确保了模型在尊重语义类型约束的同时,还能从 KG 中的结构信息中学习,从而产生结构和语义都一致的嵌入。


DKRL 和 TEKE 都通过纳入额外的上下文信息来增强传统的知识图谱嵌入方法,但它们采用的方式各不相同。DKRL 整合了实体的文本描述,通过 CBOW 或 CNN 编码器捕捉描述中的复杂模式和层次依赖关系,从而丰富嵌入方法。这种方法利用详细的文本数据来提供更全面的实体表示。相比之下,TEKE 利用类型信息来规范嵌入,确保同一类型的实体具有相似的嵌入,同时区分不同类型。这种方法依靠本体论数据来强制整个知识图谱的语义一致性。DKRL 侧重于通过文本上下文来增强实体表示,而 TEKE 则通过基于类型的正则化来强调结构一致性。这两种方法都具有独特的优势,DKRL 擅长捕捉详细的文本上下文,而 TEKE 则确保图的类型层次结构中的语义一致性。


基于关系路径的模型

这些模型考虑了 KG 中的多跳关系路径,以捕捉实体间更复杂的关系,并能对图中更长的距离进行推理。


PTransE(基于路径的 TransE)是 TransE 模型的扩展,它将关系路径纳入评分函数。给定一个三元组(h, r, t),PTransE 会考虑 h 和 t 之间的直接关系 r,以及连接 h 和 t 的多步关系路径:


12


这里,P(h, t) 是 h 和 t 之间关系路径的集合,R(p|h, t) 衡量给定 (h, t) 的路径 p 的可靠性,fₚ(h, t) 是三元组 (h, p, t) 的得分,其中 p 是路径 p 的嵌入,Z 是归一化因子。


可靠性分数 R(p|h, t) 是通过路径约束资源分配算法计算得出的,该算法会给信息量更大的路径分配更高的分数。路径嵌入是通过使用组合运算符(加法、乘法或递归神经网络 (RNN))组合路径中各个关系的嵌入而得到的。PTransE 的最终评分函数结合了 TransE 评分和基于路径的评分。


13


RPE(关系路径嵌入)是另一种学习关系路径嵌入以捕捉实体间更复杂关系的模型。PTransE 使用预定义的组合算子来组合路径上的关系嵌入,而 RPE 则不同,它使用 RNN 来编码路径信息。


在 RPE 中,路径中的每个关系 r 都表示为一个矩阵 Mᵣ。RNN 具体来说是 LSTM(长短期记忆),它将与路径相对应的关系矩阵序列(Mᵣ₁, Mᵣ₂, ..., Mᵣₙ)作为输入,并输出路径嵌入 p。然后根据路径嵌入 p 和目标关系嵌入 r 之间的相似度计算三元组(h, r, t)的得分。RPE 通过最小化基于边际的排序损失来学习关系和路径嵌入,其目的是为正三元组分配比负三元组更高的分数。


PTransE 和 RPE 都通过利用关系路径来增强知识图嵌入,但使用的方法不同。PTransE 通过使用加法、乘法或 RNN 等组合运算符将路径中单个关系的嵌入结合起来,从而扩展了 TransE 模型。这使得 PTransE 能够捕捉多跳关系,提供额外的上下文。另一方面,RPE 使用 LSTM 编码器,通过顺序处理路径中的每个关系来学习路径嵌入。LSTM 可捕捉关系的顺序和依赖关系,其评分函数基于路径嵌入和目标关系嵌入之间的相似性。PTransE 使用更简单的组成方法,而 RPE 的 LSTM 方法更适合捕捉关系路径中的复杂依赖关系。这两种模型都利用了基于路径的信息,但 PTransE 侧重于直接组合,而 RPE 则利用 LSTM 来编码顺序关系。


通过利用文本描述和关系路径提供的丰富语义信息,这些基于描述的模型在各种 KG 任务(如链接预测、实体分类和知识库补全)中表现出了更好的性能。不过,与基于三重事实的模型相比,它们的计算复杂度也更高,因为需要对文本信息或关系路径进行额外的编码处理。


结论

知识图谱嵌入是一个快速发展的领域,在提高大规模知识图谱的可用性和性能方面潜力巨大。虽然已经取得了令人印象深刻的进展,但在纳入更多信息、提高推理能力和扩展到新领域方面仍存在挑战和机遇。


文章来源:https://medium.com/@EleventhHourEnthusiast/a-survey-on-knowledge-graph-embedding-approaches-applications-and-benchmarks-894b53563cba
欢迎关注ATYUN官方公众号
商务合作及内容投稿请联系邮箱:bd@atyun.com
评论 登录
热门职位
Maluuba
20000~40000/月
Cisco
25000~30000/月 深圳市
PilotAILabs
30000~60000/年 深圳市
写评论取消
回复取消