结合知识图谱:快速而准确的方法
知识图谱是一种能够比传统数据库更轻松捕捉复杂关系的信息表示方式。在某中心,知识图谱被用于表示某电商网站产品类型的层次关系、某音乐和视频平台创作者与内容的关系,以及智能助手问答服务的通用信息等。
扩展知识图谱通常需要将其与另一个知识图谱集成。但不同的图谱可能对相同实体使用不同的术语,这可能导致集成过程中的错误和不一致。因此需要自动化的实体对齐技术,即确定不同图谱中哪些元素指向相同的实体。
在一篇被国际互联网大会接受的论文中,我们描述了一种新的实体对齐技术,该技术考虑了实体名称附近图结构的信息。在涉及两个电影数据库集成的测试中,我们的系统在精确召回曲线下面积(PRAUC)指标上比十个基线系统中表现最好的系统提高了10%。
尽管系统性能有所提升,但仍保持较高的计算效率。其中一个用于比较的基线系统是基于神经网络的DeepMatcher系统,该系统专门为可扩展性而设计。在涉及电影数据库和音乐数据库的两项任务中,我们的系统相比DeepMatcher将训练时间减少了95%,同时在PRAUC方面提供了巨大改进。
为了实现我们的模型,我们使用了一个名为DGL(深度图库)的新开源工具,该工具由某云服务机构的研究人员开发。
图是一种数学对象,由节点(通常描绘为圆圈)和边(通常描绘为连接圆圈的线段)组成。网络图、组织架构图和流程图是熟悉的图示例。
我们的工作专门解决了合并多类型知识图谱的问题,即节点代表多种类型实体的知识图谱。例如,在我们处理的电影数据集中,一个节点可能代表演员、导演、电影、电影类型等。边表示实体之间的关系——出演、导演、编写等。
我们的系统是图神经网络的一个例子,这是一种最近在图相关任务中流行的神经网络类型。为了了解其工作原理,考虑包含所谓“邻域”的示例图。这是一个两跳局部图,意味着它包含连接到中心节点的节点(一跳)和连接到这些节点的节点(两跳),但不会通过知识图谱进一步扩展。
使用标准图神经网络时,第一步(称为0级步骤)是嵌入每个节点,或将其转换为固定长度的向量表示。该表示旨在捕获对网络任务(实体对齐)有用的节点属性信息,并在网络训练期间学习。
在1级步骤中,网络考虑中心节点及其一跳邻居节点。对于每个节点,它产生一个新的嵌入,该嵌入由节点的0级嵌入与其直接邻居的0级嵌入之和连接组成。
在2级步骤(两跳网络中的最后一步)中,网络为中心节点产生一个新的嵌入,该嵌入由该节点的1级嵌入与其直接邻居的1级嵌入之和连接组成。
在我们的实验中,标准图神经网络实现表现不佳,因此我们进行了两项重要修改。
第一项是跨图注意力机制。在1级和2级聚合阶段,当网络对每个节点的邻居嵌入求和时,它会基于与另一个图的比较对这些和进行加权。
跨图注意力机制因此强调了图之间的对应关系,并弱化了差异。毕竟,图之间的差异正是首先结合它们信息的原因。
然而,这种方法存在一个主要问题:有时图之间的差异比它们的对应关系更重要。因此我们的网络还包括一个自注意力机制。
在训练期间,自注意力机制学习实体的哪些属性对于将其与看起来相似的实体区分开来最重要。
这两项修改是我们模型与十个基线系统相比性能提升的主要原因。最后简要说明我们用于提高模型计算效率的几种技术之一。尽管为了实体对齐的目的,我们比较两跳邻域,但我们不一定包含给定实体的整个两跳邻域。我们对邻域中包含的节点数量设定了上限,并使用加权采样来选择要包含的节点。
样本权重与共享相同关系的邻居节点数量呈反比关系。以这种方式限制邻域大小可以防止我们方法的计算复杂性失控。