基于循环一致性损失的知识图谱嵌入的研究
A Study of Knowledge Graph Embedding Based on Cyclic Consistency
DOI: 10.12677/airr.2024.134085, PDF, HTML, XML,    科研立项经费支持
作者: 李迦龙, 郭中华*, 蔺金元:宁夏大学物理与电子电气工程学院,宁夏 银川
关键词: 知识图谱TransEConvE循环一致性Knowledge Graph TransE ConvE Cyclic Consistency
摘要: 基于生成对抗网络中的循环一致性原则,提出了一个基于循环一致性损失的知识图谱嵌入模型。该模型首先使用ConvE模型利用头实体和关系构造的“图片”对尾实体进行预测,再利用尾实体和关系构造的“逆图片”对头实体进行预测。同时根据循环一致性原理,构造了ConvE模型的一个新的损失函数,解决了网络的可逆性。在WN18、FB15k以及YAGO3-10三个数据集上设计实验,证明了模型有效地缩短了头实体和原头实体的语义空间距离。
Abstract: Based on the cyclic consistency principle in generative adversarial networks, a knowledge graph embedding model based on cyclic consistency loss is proposed. Firstly, the ConvE model is used to predict the tail entity by using the “picture” constructed by the head entity and the relationship, and then the “inverse picture” constructed by the tail entity and the relationship is used to predict the head entity. According to the principle of cyclic consistency, a new loss function of ConvE model is constructed to solve the reversibility of the network. Experiments are designed on WN18, FB15k and YAGO3-10 data sets, and it is proved that the model can effectively shorten the semantic space distance between the header entity and the original header entity.
文章引用:李迦龙, 郭中华, 蔺金元. 基于循环一致性损失的知识图谱嵌入的研究[J]. 人工智能与机器人研究, 2024, 13(4): 822-836. https://doi.org/10.12677/airr.2024.134085

1. 引言

将知识图谱嵌入到连续向量空间中,引起了人们对知识库完成的兴趣。近年来,大型知识库被开发用于存储常识的结构化信息,如Freebase等。KG表示为有向多关系图,即知识图谱,其中实体和关系分别表示为节点和不同类型的边缘。它们通常由三元组结构的众多事实组成:即<头实体,关系,尾实体>。通过丰富的事实知识进行组织和存储,知识图谱在近年来的各种自然语言处理(Natural Language Processing, NLP)应用中发挥着至关重要的作用,包括问答系统、机器阅读、信息检索、语义搜索和个性化推荐等。许多大型知识图谱已经建成,有数百万个实体和关系。然而,现有的事实和新创造的知识太广阔,因此在现实世界中遗漏了许多有效的三元组,即三元组不完备,需要进行补全操作。例如,在Freebase中超过70%的人员条目中,国籍或出生地被遗漏。

鉴于上述知识图谱存在的问题,例如三元组不完备等,很多专家学者提出了很多方法进行补全或者预测。这些方法统称为知识图谱嵌入。嵌入的方法可以大致分为四类,即基于向量平移的方法、基于卷积神经网络的方法、基于图神经网络的方法和联合嵌入知识图谱和逻辑规则的方法。

TransE [1]是第一篇使用翻译(Translation)模型来做知识图谱嵌入研究的论文。该方法模型简单,易于训练,且具有很强的解释性。其基本思想是将头实体、关系和尾实体分别表示为向量。然而TransE仅可以处理1-1关系模式,而对复杂关系,例如,1-N、N-1和N-N关系模式,则效果不佳。后续的多项研究成果均以TransE模型为基础,进行扩展,包括使用投影向量或矩阵将头实体和尾实体嵌入转换为关系向量空间等。这期间出现了很多以Trans开头的模型,例如:TransH [2]、TransR [3]和TransD [4]。TransH将关系视为超平面,并将头部和尾部实体投射到特定关系的超平面中。虽然TransH模型允许每个实体在不同关系下有不同的表示,但它仍在同一个语义空间中构建实体和关系,这在一定程度上限制了TransH的表示能力。TransR将实体和关系分别投射到不同的空间中,并在对应的关系空间上进行转换。在相同关系下,头实体和尾实体共享相同的投影矩阵。但是,关系的头实体和尾实体的类型或属性可能非常不同。从实体空间到关系空间的投影是实体与关系之间的交互过程,因此TransR仅将投影矩阵与关系关联是不合理的。与TransE和TransH相比,由于引入了空间投影,TransR模型的参数明显更多,计算复杂度也更高。TransD通过将投影矩阵分解为两个向量的乘积,进一步简化了TransR。

虽然平移模型使用简单的操作和有限的参数来学习嵌入,但它们会产生较低质量的表示。最近的研究表明,基于卷积神经网络(Convolutional Neural Network, CNN)的模型可以生成更丰富,更具表现力的特征嵌入,因此在关系预测方面也表现良好。Dettmers等人提出了ConvE [5],这是第一个将CNN应用于KG任务的模型。它的特点是将头实体和关系构造成“图片”,并利用卷积网络计算该图片的特征。然后将尾实体看为“标签”用于分类。这样就构成了监督学习的数据集。而整个过程也没有再使用翻译模型。它使用堆叠的2D卷积来重塑实体和关系表示,从而提高其表达能力,同时保持参数效率。ConvKB [6]是另一种基于卷积的方法,它应用宽度卷积在堆叠的实体、关系和对象嵌入上。

图神经网络(Graph Neural Network, GNN) [7]是将数据构成有向图的一种方法,而知识图谱本身就是有向图。因此该网络用于知识图谱嵌入研究,具有先天优势。GNN存在两种流行变体,即图卷积网络[8] (Graph Convolutional Network, GCN)和图注意网络[9] (Graph Attention Network, GAT)。现有方法要么通过仅关注实体特征来学习KG嵌入,要么通过以不相交的方式考虑实体的特征和关系来学习KG嵌入。

知识图谱嵌入模型[10]试图结合其他类型的可用知识,例如关系路径、关系类型约束、实体类型和实体描述等,来学习更好的嵌入。通常基于马尔可夫逻辑网络的逻辑规则已被广泛用于知识推理和知识获取。最近的研究表明,包含背景知识(例如逻辑规则)可以提高下游机器学习任务中嵌入的性能。然而,在他们的工作中,规则与嵌入方法分开建模,作为后处理步骤,因此无助于获得更好的嵌入。Rocktäschel等人提出了一个名为LR-KGE的新的联合模型。该模型将规则共同编码到嵌入中。但是,他们的工作侧重于关系提取任务,并为实体对创建嵌入,因此无法发现未配对实体之间的关系。

现有的知识图谱存在不完整性,例如属性缺失或者关系缺失等问题。同时现存的知识图谱还存在大量错误的关系或者属性值。为了解决上述问题,本文提出了一种基于循环一致性思想的卷积神经网络:首先在正向通道中,将输入通过复杂的非线性变换f,诸如神经网络等,得到输出域的数据 y ˜ 。将y y ˜ 的欧几里得空间距离 d 1 近似为0,则有 y=f( x ) 。接着在反向通道中,将该输出数据 y ˜ 经过之前复杂的非线性变换f的逆变换f',得到新的输入域数据 x ˜ 。那么将x x ˜ 的欧几里得空间距离 d 2 近似为0,则有 x= f ( y )= f ( f( x ) ) 。因此f可以看成是由数学x到数据y的变换。同理,f'也可以看成是数据y到数据x的变换。这种设计直接解决了网络的可逆性,循环一致性任务同时也间接保证了网络可以学习到一个平滑的形变场,即帮助网络排除那些非循环一致的变换。此外这种设计并不会增加模型的参数。

2. 基于循环一致性的嵌入模型

2.1. TransE模型算法

该算法由Bordes等人于2013年提出。当年它是为了解决多关系数据处理问题而提出的。TransE的直观含义是将实体和关系通过TransE模型变换为分布式矢量,并且通过训练保持各个矢量之间存在一定的欧几里得几何关系。每个三元组实例中的关系被视为实体头部到实体尾部的转换。通过不断训练模型,调整hrt的矢量表示,最终使(h + r)尽可能地等于t,即h + r = t

TransE的评价指标是一个得分函数。该函数定义为h + rt之间的距离。三元组越接近事实,得分函数越小。相反,如果三元组与事实越不符,距离就越远,得分也越高。但是现存的数据集并没有与事实不符的三元组,因此该论文创新性地提出了负样本的概念。负样本就是不符合事实的三元组样本,它是通过采样真实三元组样本,并通过随机交换头实体或者尾实体,或者随机交换关系来构成的。当然这种构成方式存在一定的风险。例如,如果(h, r, t1)和(h, r, t2)均是正确的,则该随机置换出来的负样本依然是真实的三元组。所以该论文的作者们将这些少量的正确三元组去掉,进而构成了负样本。TransE模型如表1所示。

这个算法具体描述如下:

首先,确定训练集,包括实体集和关系集,以及裕量 γ ,嵌入维度k

接着初始化关系向量与实体向量。默认使用均匀分布进行初始化,并进行归一化。

然后进入循环体:采集小批量样本(该算法有助于加快训练速度),并初始化数据集。

再次进入子循环体:构造负样本,并和正确样本构造成数据集。

结束该子循环体。

Table 1. Implementation process of TransE algorithm

1. TransE算法实现过程

TransE算法步骤

输入训练集 S={ ( h,r,t ) } ,实体和关系集EL,裕量 γ ,维度dim.k。

1

初始化r 均匀分布 ( 6 k , 6 k ) ,每一个 rL

2

归一化 rr/ r 每一个 rL

3

初始化e 均匀分布 ( 6 k , 6 k ) 每一个实体 eE

4

归一化 ee/ e 每一个实体 eL

5

循环:

6

小样本采样 S batch 样本 ( S,b ) //抽取一个大小为b的mini批次

7

初始化三元集合 T batch

8

( h,l,t ) S batch 循环

9

构造负样本 ( h ,l, t ) 样本 ( S ( h,l,t ) )

10

构造三元组对集合 T batch T batch { ( ( h,l,t ),( h ,l, t ) ) }

11

结束循环

12

嵌入w.r.t至 ( ( h,l,t ),( h , l , t ) ) T batch [ γ+d( h+l,t )d( h +l, t ) ] +

13

结束循环

更新嵌入并根据其在验证集上达到的效果选择是否结束当前循环体。

对于一个三元组 ( h,r,t ) ,通过更换头实体或尾实体得到负样本。这种构造负样本的方式每次只能替换头实体或者尾实体。

2.2. ConvE模型

ConvE模型,该模型使用嵌入的二维卷积来预测知识图谱中缺失的链接。ConvE是用于链路预测的最简单的多层卷积结构:它由单个卷积层、用于嵌入维度的投影层和内积层组成。

瑞士大学的蒂姆·德特默斯(Tim Dettmers)在其发表于2018年AAAI的论文中提出了ConvE (Convolutional Embedding)。该文献使用二维卷积网络处理知识图谱。从那时起,将知识图谱与各种神经网络相结合的工作逐渐兴起。最初出现的是卷积模型,然后是基于注意力机制的模型和胶囊网络模型等等。事实上,在TransE的时候,神经网络已经被用来表示知识图谱,但它并不像目前使用的网络形式那样多样化。

ConvE的原理就是头实体和关系转化为二维向量,然后运用卷积层和全连接层连接信息,最后拿矩阵与头尾实体进行运算来判断三元组可信度。总的来说就是使用二维卷积代替一维卷积,通过在模型之间加入额外的相互作用点,提高了模型的表达能力。例如,考虑到这种情况,连接两条嵌入线1D,例如ab,维度n = 3,如公式(1)所示。

( [ aaa ];[ bbb ] )=[ aaabbb ] (1)

一个滤波大小为k = 3的填充一维卷积将能够模拟这两个嵌入之间在串联点周围的相互作用(相互作用的数量与k成比例)。如果连接(即堆栈)两排2D嵌入维数m × n,其中m = 2和n = 3,如公式(2)所示。

( [ a a a a a a ];[ b b b b b b ] )=[ a a a a a a b b b b b b ] (2)

填充二维卷积的滤波器尺寸为3 × 3,能够模拟整个连接线的相互作用(相互作用的数量与nk成正比)。可以将这一原理扩展到交替模式,如公式(3)所示。

[ a a a b b b a a a b b b ] (3)

在这种情况下,二维卷积可以模拟ab之间的多重相互作用(mnk的比例相互作用)。因此,与一维卷积相比,二维卷积可以提取更多的相互作用。同样的原理也可以推广到更高维的卷积,将这留给未来的工作。

知识图谱 G={ ( h,r,t ) }×R× 可以形式化为一组三元组(事实),每个三元组(事实)包含一个关系 r 和两个实体 h,t ,它们被称为三元组的主体和客体。每个三元组 ( h,r,t ) 表示实体ht之间的r型关系。

链接预测问题可以形式化为点学习分类问题,以便学习标点函数 Ψ:ε××ε 给定输入三元组 x=( h,r,t ) ,其分数 Ψ( x ) 与编码x为真的可能性成正比。

神经链预测模型[11]可被视为一个由编码组件和评分组件组成的多层神经网络。给定三元组输入 ( h,r,t ) ,编码组件映射实体 h,t 及其分布式集成表示,以及 e h , e t k 。在评分组件中,使用 Ψ r 函数标记两个实心插入项 e h e t 。将 ( h,r,t ) 的评分定义为 Ψ( h,r,t )= Ψ r ( e h , e t )

表2中,总结了不同链接预测模型的评分函数。向量 e s e o 表示主体对象的合并,其中 e s , e o k 是聚合的, e s , e o k 是所有其他模型中的, x,y,z = i x i y i z i 表示点的三线性积*是卷积算子;f是一个非线性函数。

Table 2. The spatial complexity of ConvE model is compared with other models

2. 对比ConvE模型与其他模型的空间复杂度

模型

得分函数 Ψ r ( e h , e t )

空间复杂度

TransE

e h + r r e t p

O( n e k+ n r k )

DistMult

e h , r r , e t

O( n e k+ n r k )

ConvE

f( vec( f( [ e h ; r r ] * ω ) )W ) e t

O( n e k+ n r k )

注: n e n r 分别表示实体和关系类型的个数, n e =| ϵ | n r =| R |

在ConvE模型中,首先对实体和关系的嵌入进行重塑和拼接,然后将得到的矩阵用作卷积层的输入;生成的特征映射张量被向量化并投射到k维空间,并与所有候选对象嵌入匹配。如图1所示。

2.3. 基于循环一致性构造损失函数

循环一致性损失出自CycleGAN。CycleGAN的基本结构是由两个GAN组成,构成一个环形网络。

Figure 1. Workflow of universal crawler and restricted crawler

1. 通用爬虫和限定爬虫的工作流程

图2所示。

Figure 2. Schematic diagram of recurrent consistency generative adversarial network

2. 循环一致性生成对抗网络示意图

其中G表示生成器。 G X,Y 表示将X域中的数据转至Y域中去, G Y,X 表示将Y域中的数据转至X域中去。 D x D y 分别代表 G X,Y G Y,X 的判别器。循环一致性损失的出现是为了避免生成器 G X,Y G Y,X 把所有数据转换到另一个域内,即XY能从源域顺利地转换到目标域中,同时也能够顺利地转换回来。

对两个GAN进行对抗训练时,若只使用对抗损失,则不能保证学习的映射将在期望的输出y中生成输入x。为了进一步提高对抗训练的准确性,减少可能的映射函数空间,得到的映射函数 G X,Y ( ... ) G Y,X ( ) 也必须满足循环一致性条件。如图3所示。

X域内的数据x转换到Y域内变成x',如公式(4)所示。

x G X,Y ( x ) G Y,X [ G X ,Y( x ) ] x (4)

Figure 3. Forward loop consistency loss

3. 向前循环一致性损失

其中x趋近于x',近似相同,这样做可以避免将X域中的所有数据都转换到Y域中而形成另一种固定的数据形式。同理将Y域内的数据y转换到X域内变成y',如图4所示。

Figure 4. Backward loop consistency loss

4. 向后循环一致性损失

它的变化过程如公式(5)所示。

y G Y,X ( y ) G X,Y [ G   Y,X ( y ) ] y (5)

那么循环一致性损失公式如公式(6)所示。

loss s cycle ( G X,Y , G Y,X )= E x P access { | G Y,X [ G X,Y ( x ) ]x | 1 }+ E y P day { | G X,Y [ GY,X( y ) ]y | 1 } (6)

其中 | | 1 表示为 L 1 范数。 E x ( ) 表示为在x采样下的“ ”的期望值。 P data( x ) 表示为x的概率分布;那么 x~ P data( x ) 表示为随机变量服从 P data( x ) 的采样。同理可知 P data( y ) 表示为y的概率分布;那么 y~ P data( y ) 表示为随机变量服从 P data( y ) 的采样。

循环一致性的损失保持了xy输入与x'y'输出之间的高度一致性,从而使生成器学习更有针对性,最终的损失函数如公式(7)所示。

los s al ( G X,Y , G Y,X , D x , D y )=los s CAN1 ( C X,Y , D y ,x,y )+los s GAW2 ( G Y,X , D x ,y,x )+λlove s cycle ( G X ,Y, G Y ,X ) (7)

其中 λ 是控制系数(一般取值为10),用来控制对抗网络与循环一致性损失在最终损失中的比例。

2.4. 模型构建

根据循环一致性以及ConvE模型,本文构建了一个新的卷积神经网络模型。具体来说,对于语义匹配任务,获得的实体应该与一对一映射约束一致。相似性的初始度量遵循从一到多的规则。得分最高的对应关系可被视为输入值,每个特征可对应于图5(a)所示的多个特征。因此,引入循环一致性策略来鼓励一对一匹配。与图像之间最接近的相互匹配过程类似,估计两种特征表示之间的关联关系以施加其一对一的匹配约束,并计算关联p→q和p←q,如图5所示。

图5中每个初始三元组都包含从原始三元组到目标三元组的所有成对的单向分数。特征表示p可以匹配多个特征。循环一致性约束用于鼓励图5(b)中的一对一匹配。

Figure 5. (a) cyclic consistency semantic matching; (b) cyclic consistency semantic matching

5. (a) 循环一致性语义匹配;(b) 循环一致性语义匹配

本文建立了一个基于卷积和完全耦合的神经网络连接预测模型。模型的主要特征是分数由嵌入二维卷积决定的。从形式上讲,评价函数定义如公式(8)所示。

Ψ r ( e h , e t )=f( vec( f( [ e h ¯ , r r ¯ ] * ω ) )W ) e t (8)

其中 r r k 是一个依赖于r的关系参数, e h ¯ r r ¯ 分别表示 e h r r 的二维重构:如果 e h , r r k ,则 e h ¯ , r r ¯ k w × k h ,其中 k= k w × k h

前向传递过程中,模型在两个嵌入矩阵中进行行向量搜索操作,一个是实体矩阵,记作 E | ε |×k ,另一个是关系矩阵,记作 R | R |× k ,其中kk'为实体和关系的嵌入维数, | ε | | R | 表示实体和关系的个数。然后该模型将 e h ¯ r r ¯ 连接起来,并将其作为输入到带有滤波器 ω 的二维卷积层。该层返回一个特征映射张量 τ c×m×n ,其中c是维数为mn的二维特征映射的数量。然后将张量 τ 重塑为向量 vec( τ ) cmn ,然后使用矩阵 W cmn×k 进行的线性变换将其投影到k维空间,并与嵌入对象 e o 匹配。通过内积。卷积滤波器的参数和矩阵 W 与实体so的参数以及r关系无关。

为了训练模型参数,激活函数应用了对数sigmoid函数 σ( . ) ,即 p=σ( Ψ r ( e s , e o ) ) ,并最小化下列二元交叉熵损失,如公式(9)所示。

( p,t )= 1 N i ( t i log( p i )+( 1 t i )log( 1 p i ) ) (9)

其中t是标签向量,对于1-1评分,维度为 | x | ,对于1-N评分,维度为 1×N ;向量t的元素是存在关系1的,否则为0。

模型使用整流的线性单元作为非线性f,以获得更快的训练。以及在每层之后进行批量归一化,以稳定、规范化并提高收敛速度。通过使用dropout在几个阶段对构建的模型进行规整。本文在以下方面使用dropout嵌入,例如卷积后的特征图谱操作,以及全连接层后的隐藏单元层。使用Adam作为优化器,并使用标签平滑来减少由于标签饱和而导致的过拟合现象。

与其他链接预测模型不同的是,将一对实体和一个关系作为一个三元组 ( h,r,t ) 并对其进行标记(得分1-1),将一对实体 ( h, r ) 同时对所有实体或 tε 进行标记(得分1-N)。如果在高端GPU上分析1-1得分,并使用批量大小和128嵌入大小,那么在FB15k的训练通道和卷积模型评估需要2分钟和3小时。使用1-N评分,相应的数字是45秒和35秒,在评估时间方面有超过300倍的显著改善。此外,这种方法可以扩展到大型知识图谱,并提高了收敛的速度。对于批处理量为128的单步前进或后退,从N = 100,000到N = 1000,000实体,计算时间只从64 ms增加到80 ms,换句话说,实体数量增加10倍,计算时间只增加25%,证明了该方法的可扩展性。

如果不使用1-N的评分,而是使用1-(0.1N)的评分,也就是针对10%的实体的评分,可以计算出一个快25%的前向—后向通道。然而,在训练集上的收敛速度要慢200%左右。因此,1-N得分有一个类似于批量归一化的额外效果,提升了一些计算性能,大大增加了收敛速度,也获得了更好的性能。这项技术一般可以应用于任何1-1评分模型。这个加快训练和评估的实用技巧可以应用于任何1-1评分模型,比如绝大多数的链接预测模型。

3. 实验与结果分析

3.1. 实验数据集

实验所用数据集具体信息如下。

WN18是WordNet的一个子集,由18个关系和40,943个实体组成。151,442个三元组中的大部分由连词和超词关系组成,由于这样的原因,WN18倾向于遵循一个严格的层次结构。

FB15k是Freebase的一个子集,包含约14,951个实体,有1345种不同关系。这个知识图谱中的很大一部分内容描述了关于电影、演员、奖项、体育和运动队的事实。

YAGO3-10是YAGO3的一个子集,由每个实体至少有10种关系组成。它有123,182个实体和37个关系。大多数三元组涉及人们的描述性属性,如公民身份、性别和职业。

Countries是一个基准数据集,对于评估模型学习实体和关系之间的长期依赖关系的能力非常有用。它由三个子任务组成,这些子任务以一种循序渐进的方式增加难度,其中找到解决方案的最小路径长度从2增加到4。

Toutanova和Chen在2015年首次指出WN18和FB15k通过逆向关系存在测试丢失的问题:通过在训练集中倒置三元组可以获得大量测试三元组。例如,测试集通常包含 ( h,r,t ) 这样的三元组,而训练集包含它们的反向关系 ( t,r,h ) 。为了创建没有该属性的数据集,Toutanova和Chen引入了FB15k-237 (FB15k的子集),然后删除了逆向关系。

Toutanova和Chen指出,WN18和FB15k训练数据集中94%和81%的测试泄漏是逆向关系,也就是说,这些数据集中94%和81%的三元组是逆向关系,并且与测试集相关。例如,如果知道hyponym是hypernym的逆关系,那么测试三元组(猫科动物,hyponym,老虎)可以很容易地映射到训练三元组(老虎,hypernym,猫科动物)。这是非常有问题的,因为在这些数据集中运行良好的链接预测器只能了解哪些关系与其他关系相反,而不能对实际的知识地图进行建模。

为了评估问题的严重性,本文构建了一个简单的基于规则的模型,该模型仅基于反馈。该模型自动从训练集中提取反向关系:指定两个关系对 r 1 , r 2 R ,检查 ( h, r 1 ,t ) 是否表示 ( t, r 2 ,h ) ,反之亦然。

假设逆向关系随机分布在训练集、验证集和测试集中,因此期望逆向关系的数量与训练集和总数据集的大小成正比。因此,如果 ( h, r 1 ,t ) ( t, r 2 ,h ) 至少同时出现的频率为 0.99( f v + f t ) ,其中 f v f t 是检查集和测试集在数据集总大小中的比例,将检测到反向关系。匹配这一标准的关系被认为是彼此的反义词。

在测试中,检查三元组在测试集之外是否有反面匹配:如果发现与k匹配,将从第一个k级匹配中进行采样;如果找不到匹配,将为测试三元组选择随机级别。

3.2. 评价指标

为了评估各类模型在知识图谱三元组抽取上的性能,本文采用链接预测方法给出TransE模型,DistMult模型,ConvE模型以及CCO模型在各种性能指标上的横向对比结果。具体步骤为对数据集中的三元组缺失的头实体或者尾实体进行预测。给定待测试的三元组样本 ( h,r,t ) ,依次将实体集e中的实体取出,替换给定的三元组的头实体或尾实体。然后上文定义的评分函数计算这些错误的三元组和给定三元组的分数,并将分数按照降序进行排列。不同模型下三元组样本的评分函数越高,说明该模型在该任务上的表现越好。本节具体采用MR (Mean rank),MRR (Mean Reciprocal Ranking),hit@3,hit@10四个指标来衡量模型性能水平。具体定义如下:

Mean rank:

平均排序(Meam rank, MR),它被定义为测试集中所有三元组的算数平均值,其公式如公式(10)所示。

Meamrank= 1 | T test | ( h,τ,t )= T test 1 2 ( ran k r,t ( h )+ran k h,r ( t ) ) (10)

其中 T test 代表三元组集合, | T test | 代表三元组集合个数, rank 代表指三元组的链接预测排名。Mean rank数值越小,模型的链接预测性越好。首先对于每个测试三元组,以预测尾实体为例,将 ( h,r,t ) 中的t用知识图谱中的每个实体来代替,这样可以得到一系列的分数,之后按照升序将这些分数排列。需要知道的是f函数值是越小越好,那么在上个排列中,排的越前越好。去看每个测试三元组中正确答案也就是真实的t到底能在上述序列中排多少位,比如说t1排100,t2排200,t3排60……,之后对这些排名求平均,Mean rank就得到了。

Mean Reciprocal Ranking:

平均倒数排序(Mean Reciprocal Ranking, MRR),它定义为测试集所有三元组倒数的算术平均值,即公式(11):

MRR= 1 | T test | ( h,r,t ) T test 1 2 ( 1 ran k r,t ( h ) + 1 ran k h,r ( t ) ) (11)

与MR相比,MRR的平滑性较好,很难出现异常值。MRR取值范围为 MRR( 0,1 ] ,值越大,模型的链接预测性越好。MRR是一种国际上用于评估搜索算法的机制,即第一个结果对应的分数为1,第二个匹配的分数为0.5,第n个匹配的分数为1/n。如果没有匹配,句子分数为0。最终分数是所有分数的总和。

hit@k:

hit@k表示在测试过程中,单个排序位于前k的三元组比率,即公式(12):

hit@k= 1 | T test | | h,r,t | T test 1 2 ( | ( h,r,t )|ran k r,t ( h )k |+| ( hr,r,t )|ran k h,r ( t )k | ) (12)

hits@k数值越大,模型的预测性越好。k通常取1、3和10。还是按照上述进行f函数值排列,然后去看每个测试三元组正确答案是否排在序列的前十,如果在的话就计数+1。最终排在前十的个数/总个数就是Hit@10。

3.3. 实验环境与参数配置

本文的实验是基于TensorFlow框架完成的,具体的实验环境如表3所示。

在超参数设置方面:对于ConvE模型为了便于GPU进行运算,将图像大小设置为2的次幂。然后卷积核使用三种(1 × 1、3 × 3和5 × 5)。接着使用补0,充分利用边缘信息,使输入大小保持恒定不变。最后将卷积核的个数设置为2的次幂,其他参数设置信息如表4所示。

Table 3. Experimental environment

3. 实验环境

环境

版本

Python

3.6

Elasticsearch

7.10.1

Numpy

1.20.3

Jieba

0.39

Pandas

1.1.5

Rank-bm

0.2.1

Scikit-learn

0.24.1

Scipy

1.5.4

Table 4. Model parameter table

4. 模型参数表

超参数

配置

Learning rate

0.001

Batch size

20

Dropout rate

0.5

Optimization

ADam

Iterations

1000

Shaking_ind2

0.1

3.4. 结果分析

对于ConvE模型参数效率而言,如表5所示,FB15k-237中的ConvE (参数为0.23 M)在五个指标中的三个指标上的表现优于DistMult (参数为1.89 M)。然而,参数为0.46 M的ConvE模型在FB15k-237上获得了最优的结果,达到了0.425Hits@10。与最佳模型R-GCN相比,其参数超过8 M,达到0.417Hits@10。总的来说,ConvE的参数效率是R-GCNs的17倍以上,参数效率是DistMult的8倍以上。对于整个Freebase来说,这些模型的大小对于R-GCNs来说将超过82 GB,对于DistMult来说将超过21 GB,而ConvE只有5.2 GB。

在网格搜索的基础上,根据平均互换等级(MRR)选择原有ConvE模型的超参数。网格搜索有以下超参数范围:嵌入剔除{0.0, 0.1, 0.2},特征图剔除{0.0, 0.1, 0.2, 0.3},投影层剔除{0.0, 0.1, 0.3, 0.5},嵌入大小{100, 200},批次大小{64, 128, 256},学习率{001, 003}和标签平滑度{0.0, 0.1, 0.2, 0.3}。

除了网格搜索之外,还研究了模型中二维卷积层的修改。特别是,尝试用全连接层和一维卷积替换它;然而,这些修改会降低模型的预测精度。

在WN18、YAGO3-10和FB15k上,以下参数的综合效果更好:嵌入剔除0.2,特征图剔除0.2,投

Table 5. Comparison of DistMult model and ConvE model parameters

5. DistMult模型与ConvE模型参数对比

模型

参量

嵌入度

hit@3

hit@10

DistMult

1.89 M

128

0.25

0.41

0.95 M

64

0.25

0.39

0.23 M

16

0.17

0.31

ConvE

5.05 M

200

0.35

0.49

1.89 M

96

0.35

0.49

0.95 M

54

0.33

0.46

0.46 M

28

0.30

0.43

0.23 M

14

0.28

0.40

影层剔除0.3,嵌入大小200,批次大小128,学习率0.001,标签平滑度0.1。对于Countries数据集,将嵌入剔除增加到0.3,将隐性剔除增加到0.5,并将标签平滑度设置为0。根据验证集上的共同水平(WN18, FB15k, YAGO3-10)和AUC-PR (Countries)的平均统计数据,每三个周期使用早期停止对验证集进行评估。与其他数据集不同,对于Countries而言,结果的方差很高,因此平均执行10次,可以产生95%的置信区间。对于训练1-1后的距离和复杂结果,使用嵌入大小100来优化AdaGrad (Duchi、Hazan和Singer,2011),通过强制实体嵌入的L2准则为1来规范模型。

将参数标度与实验结果进行比较,验证了构造的ConvE模型使用较少的参数可以获得更好的实验结果。

Table 6. (a) Link prediction results for WN18; (b) Link prediction results for FB15k

6. (a) WN18的链接预测结果;(b) FB15k的链接预测结果

(a)

WN18

MR

MRR

hit@3

hit@10

TransE

251

-

-

0.892

DistMult

902

0.822

0.914

0.936

ConvE

504

0.942

0.968

0.969

CCO

567

0.861

0.947

0.955

(b)

FB15k

MR

MRR

hit@3

hit@10

TransE

125

-

-

0.471

DistMult

97

0.654

0.733

0.824

ConvE

64

0.745

0.801

0.873

CCO

78

0.633

0.698

0.701

将各种模型在预测任务中的性能联系起来,构造的ConvE模型在各种性能指标中取得了良好的效果。下面是表格最后一行的解释,逆模型。统计数据显示,在WN18和FB15k数据集中,训练集中94%和81%的三元组逆向关系出现在测试集中,这可以在数据集中获得良好的表现,但只了解到一个关系是其他逆向关系,而不是真正的知识图谱。如果三元组 ( h, r 1 ,t ) ( h, r 2 ,t ) 共同出现频率至少为 0.99( f v + g t ) ,则认为是互逆关系,其中 f v g t 是检查集和测试集的频率。在测试过程中,如果测试集中的三元组与测试集外的三元组匹配,并可以找到k,则选择匹配项中的topk,否则随机选择一个。

四类模型在WN18RR和FB15k-237数据集上的具体链接预测结果如表7所示。

Table 7. (a) Link prediction results of WN18RR; (b) Link prediction results for FB15k-237

7. (a) WN18RR的链接预测结果;(b) FB15k-237的链接预测结果

(a)

WN18RR

MR

MRR

hit@3

hit@10

TransE

3288

0.231

0.352

0.480

DistMult

5110

0.430

0.430

0.490

ConvE

5277

0.460

0.440

0.499

CCO

5168

0.395

0.391

0.393

(b)

FB15k-237

MR

MRR

hit@3

hit@10

TransE

355

0.295

0.291

0.464

DistMult

254

0.241

0.263

0.419

ConvE

246

0.316

0.350

0.491

CCO

263

0.201

0.235

0.383

将逆关系去掉之后,各个模型在数据集上的表现有所改观,但是CCO模型在FB15k-237上的表现并不好。

将测试三元组与所有其他未出现在训练、验证或测试集中的候选三元组进行排名。候选三元组是通过将测试三元组的主语或宾语与知识图谱中的所有实体互换而得到的。在标准基准FB15k和WN18上的结果见表6;在去掉逆向关系的数据集上的结果见表7;在YAGO3-10和Countries上的结果见表8

构造的ConvE模型在FB15k和WN18的许多不同指标上都达到了先进水平。然而,没有发现YAGO3-10和FB15k-237之间的逆向关系。Toutanova和Chen在推导FB15k-237时使用的程序并不能排除某些对称关系,例如“类似”关系。这些关系的存在解释了逆向模型在WN18RR中的良好得分,该得分通过相同的程序获得。

在YAGO3-10上,构造的ConvE模型的所有指标都达到了最先进的性能,在FB15k和WN18上的一些指标也达到了最先进的性能。在Countries上,解决了S1和S2的挑战,在S3上表现良好,得分高于其他模型,如DistMult、TransE、CCO。

Table 8. (a) Link prediction results for YAGO3-10; (b) Link prediction results for Countries

8. (a) YAGO3-10的链接预测结果;(b) Countries的链接预测结果

(a)

YAGO3-10

MR

MRR

hit@3

hit@10

DistMult

5926

0.34

0.38

0.54

ConvE

1676

0.44

0.49

0.62

CCO

4335

0.25

0.31

0.49

(b)

Countries

AUC-PR

S1

AUC-PR

S2

AUC-PR

S3

DistMult

1.00 ± 0.00

0.72 ± 0.12

0.52 ± 0.07

ConvE

1.00 ± 0.00

0.99 ± 0.01

0.86 ± 0.05

CCO

-

-

-

4. 结论

本文将TransE、DistMult和ConvE模型进行对比。ConvE使用的参数较少;通过1-N的评分更快;它通过多层非线性特性具有表现力;最先进的结果是在不同的数据集上获得的,并且仍然可以大规模地扩展到知识图谱。

在分析中,与普通的链路预测DistMult相比,ConvE的性能可以部分地解释为它能够对具有高独立性(递归)的节点进行建模。

于是在ConvE模型中,基于循环一致性原理构造出新型训练模型。解决了网络的可逆性问题,同时也帮助网络排除一些非循环一致的变换。实验结果表明,在使用相同的数据集的情况下ConvE相较于TransE等模型取得了更好的效果。

5. 结语

本文所做的模型复现与对比实验是在个人计算机上实现的,经济上的成本基本为零。只需先构建实验模型,再将实验所用的数据集依次放入实验模型中进行链接预测即可。

从目前看来,本文所做的实验是数据对比和数据结果分析,为日后知识图谱方面的应用和研究有着参考价值。例如,在金融领域,根据贷款信息构建的知识图谱可用于评估借款人的欺诈风险。城际出行方面,可以通过域地图构建的知识图谱,给出两地之间的最优路径。也可以探寻两地之间有多少条可通路径。还可以使用在公安领域,通过分析通话对象的特征来判断此类通话是否存在非法行为(传销、诈骗等)。

本文所做的实验是基于循环一致性的知识图谱嵌入研究。随着时代的进步,对于知识图谱的研究与应用在渗透进入每一个行业领域。在实际应用之前,需要做一系列的测试和对比,找出最优的模型以便于之后模型的改进或者实际应用。本文就针对TransE模型和ConvE模型进行测试对比,找出知识图谱嵌入模型的优缺点,并分析这些模型的优缺点,为之后知识图谱的应用做一些参考。

基金项目

2024年教育部实验教学和教学实验室建设研究项目:“数字赋能 + 双图谱”的新工科实验教学体系研究——以电气信息类专业为例(SYJX2024-216)。

NOTES

*通讯作者Email: 12022130643@stu.nxu.edu.cn

参考文献

[1] 张正航, 钱育蓉, 行艳妮, 等. 基于TransE的表示学习方法研究综述[J]. 计算机应用研究, 2021(3): 656-663.
[2] 昌攀, 曹扬. 改进的TransH模型在知识表示与推理领域的研究[J]. 广西大学学报(自然科学版), 2020, 45(2): 321-327.
[3] Zhang, Z., Jia, J., Wan, Y., Zhou, Y., Kong, Y., Qian, Y., et al. (2021) TransR*: Representation Learning Model by Flexible Translation and Relation Matrix Projection. Journal of Intelligent & Fuzzy Systems, 40, 10251-10259.
https://doi.org/10.3233/jifs-202177
[4] Scott, S.D. and Choi, K.H. (2022) MicroRNA-122 and Poly-C Binding Protein-2 Regulate Hepatitis C Replication by Binding to Overlapping Sites on the 5’ Untranslated Region of the Viral Genome. Biophysical Journal, 121, 206a-207a.
https://doi.org/10.1016/j.bpj.2021.11.1707
[5] 余晓鹏, 何儒汉, 黄晋, 等. 基于改进Inception结构的知识图谱嵌入模型[J]. 计算机应用, 2022, 42(4): 1065-1071.
[6] Pornprasit, C., Kiattipadungkul, P., Duangkaew, P., Tuarob, S. and Noraset, T. (2020) Enhancing CNN Based Knowledge Graph Embedding Algorithms Using Auxiliary Vectors: A Case Study of Wordnet Knowledge Graph. 2020 17th International Conference on Electrical Engineering/Electronics, Computer, Telecommunications and Information Technology (ECTI-CON), Phuket, 24-27 June 2020, 763-766.
https://doi.org/10.1109/ecti-con49241.2020.9158288
[7] Pang, L. (2022) Intelligent Big Information Retrieval of Smart Library Based on Graph Neural Network (GNN) Algorithm. Computational Intelligence and Neuroscience, 2022, Article ID: 1475069.
https://doi.org/10.1155/2022/1475069
[8] Gao, J., Liu, X., Chen, Y. and Xiong, F. (2022) MHGCN: Multiview Highway Graph Convolutional Network for Cross-Lingual Entity Alignment. Tsinghua Science and Technology, 27, 719-728.
https://doi.org/10.26599/tst.2021.9010056
[9] Zheng, Z., Li, J., Zhu, L., Li, H., Petzold, F. and Tan, P. (2022) GAT-CADNet: Graph Attention Network for Panoptic Symbol Spotting in CAD Drawings. 2022 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), New Orleans, 18-24 June 2022, 11737-11746.
https://doi.org/10.1109/cvpr52688.2022.01145
[10] 饶国政, 许国顺. 基于实体与关系聚合图的知识图谱嵌入模型[P]. 中国专利, CN114564623A. 2022-03-10.
[11] 袁立宁, 李欣, 王晓冬, 等. 图嵌入模型综述[J]. 计算机科学与探索, 2022, 16(1): 59-87.