知识图谱嵌入(KGE),也称为知识表示学习(KRL)或多关系学习,是一种机器学习任务,旨在学习知识图谱中实体和关系的低维表示,同时保留其语义。通过将符号图数据转换为稠密数值向量,KGE使知识图谱能够用于各种应用,如链接预测、三元组分类、实体识别、聚类和关系抽取。该方法属于更广泛的表示学习领域,并与现代机器学习技术密切相关,这些技术用于人工智能系统。
知识图谱在形式上定义为实体、关系和事实的集合,其中每个事实是一个三元组(头实体,关系,尾实体),表示两个实体之间的链接。这种结构通常使用资源描述框架(RDF)表示法来表达。知识图谱以结构化形式表示领域特定知识,允许在细化后推断新知识。然而,实际应用面临数据稀疏和计算效率低下的挑战。KGE通过将每个实体和关系嵌入到选定维度的向量中来解决这些问题,从而实现高效计算和泛化。
知识图谱的嵌入是一个函数,将每个实体和关系转换为给定维度的向量,该维度称为嵌入维度。实体和关系可以使用不同维度进行嵌入。生成的嵌入向量随后可用于下游任务。知识图谱嵌入具有四个方面的特征:表示空间(实体和关系的低维空间)、评分函数(三元组嵌入的优劣度量)、编码模型(嵌入表示如何交互)以及附加信息(任何丰富表示的额外图数据,通常通过专门的评分函数集成)。
嵌入过程
所有创建知识图谱嵌入的算法都遵循通用方法。首先,嵌入向量被初始化为随机值。然后,使用三元组训练集进行迭代优化。在每次迭代中,从训练集中采样一批三元组,并通过将头实体或尾实体(或两者)替换为另一个实体来生成损坏的三元组,从而创建虚假事实。原始三元组和损坏三元组被添加到训练批次中,并通过优化评分函数来更新嵌入。迭代在达到停止条件时结束,通常基于训练集的过拟合。最终,学习到的嵌入应从训练三元组中提取语义信息,并正确预测未见过的真实事实。
通用过程可以用伪代码概括。给定训练集、实体集、关系集和嵌入维度,算法随机初始化嵌入。当停止条件未满足时,从训练集中采样一个批次。对于批次中的每个三元组,采样一个损坏事实,并将原始和损坏的三元组添加到训练批次中。然后更新嵌入以最小化评分函数,该函数衡量真实三元组相对于损坏三元组的合理性。
评分函数和模型
评分函数是KGE的核心,因为它们评估三元组嵌入表示的优劣。不同模型提出不同的评分函数和编码机制。早期模型如TransE将关系表示为嵌入空间中的平移,其中头实体向量加上关系向量应近似于尾实体向量。其他模型,如DistMult和ComplEx,使用双线性或复值评分函数来捕获更丰富的交互。更近期的方法引入神经网络架构,包括深度学习模型,以学习非线性嵌入。这些模型在表示空间上有所不同,从欧几里得空间到复数或双曲空间,并且在处理不同关系类型的能力上也有所差异。
编码模型定义了实体和关系嵌入如何交互。一些模型使用加法或乘法交互,而其他模型采用张量分解或神经网络层。评分函数和编码模型的选择影响嵌入的表达能力和计算效率。例如,表达能力更高的模型可以捕获复杂的关系模式,但可能需要更多训练数据和计算。该领域持续发展,较新的模型集成附加信息,如实体类型、文本描述或时间约束,以提高性能。
应用
知识图谱嵌入支持广泛的应用。链接预测是主要任务,模型预测实体之间的缺失链接,有助于完善不完整的知识图谱。三元组分类涉及判断给定三元组是真是假,有助于事实验证。实体识别和聚类利用嵌入来分组相似实体或识别文本中的实体。关系抽取使用嵌入来识别非结构化数据中实体之间的关系。这些应用在大型语言模型训练等领域至关重要,其中知识图谱提供结构化事实信息,以及在需要知识推理的生成式AI系统中。
在实践中,KGE已应用于推荐系统、问答和药物发现。例如,嵌入可以表示用户-项目交互或分子结构,从而实现高效相似性搜索。低维向量也与标准机器学习流程兼容,允许与其他模型集成。截至2020年代初,KGE技术已被谷歌DeepMind和OpenAI等公司纳入工业系统,通常与Transformer架构结合以增强推理能力。
挑战和未来方向
尽管取得了成功,KGE仍面临若干挑战。现实世界知识图谱中的数据稀疏性限制了学习嵌入的质量,因为许多实体和关系只有少量观察到的三元组。可扩展性是另一个问题,因为在大图上训练需要大量计算资源。处理多关系和异构数据,如时间性或不确定性事实,仍是一个活跃的研究领域。此外,评估嵌入并非易事,因为标准基准可能无法捕获语义保留的所有方面。
未来方向包括开发更可解释的嵌入、整合外部知识源以及提高对噪声数据的鲁棒性。研究也在探索将KGE与神经网络模型(如残差网络和U-Net架构)集成,尽管这些在其他领域更为常见。使用数据增强技术和课程学习策略可能有助于解决稀疏性问题。随着人工智能系统变得更加知识驱动,KGE可能在使机器理解和推理结构化信息方面发挥越来越重要的作用。