APP下载

融合GAT 和CapsNet 的链接预测研究*

2022-03-16王凯莉周子力陈丹华周淑霄

通信技术 2022年2期
关键词:三元组胶囊实体

王凯莉,周子力,陈丹华,周淑霄

(曲阜师范大学 网络空间安全学院,山东 曲阜 273165)

0 引言

知识图谱(Knowledge Graph)是人工智能研究和智能信息服务的基础核心技术,可以应用于信息检索、新闻推荐和自然语言处理等任务中。然而,即使是最先进的知识图谱也会出现不完整的情况,这就需要对知识图谱进行补全。链接预测(Link Prediction,LP)旨在预测给定的两个实体之间的关系,是知识补全任务中的关键技术之一。

传统的链接预测嵌入模型主要是几何模型如TransE、TransR 等和张量分解模型如DistMult、HolE 等,若使用简单的向量加减法,产生低的嵌入表达只能捕获实体间浅层的线性关系。近年来随着深度学习的快速发展,大量的深度学习模型用于补全知识图谱。但是,深度学习模型[1]也只是独立地处理知识图谱三元组,无法捕捉到组与组之间更为复杂、深层的关系。

为了解决现有的知识图谱补全模型难以收集到三元组邻域间隐藏信息以及组与组之间的关系的问题,提出了一种融合图注意力网络(Graph Attention Networks,GAT)[2]和胶囊神经网络(Capsules Neural Networks,CapsNet)[3]的链接预测模型。注意力机制[4]可以为邻居节点分配不同的权重,与图卷积网络(Graph Convolutional Network)[5]将所有相邻节点视为同等重要不同。图注意力网络改变每个节点的重要性级别,利用节点结构、属性和关系类型来获取三元组之间的关系。胶囊神经网络[3]能够更好地建模神经网络中内部知识表示的分层关系,提升链接预测的准确性和命中率。

1 相关工作

基于深度学习的链接预测模型主要思路是利用神经网络的学习能力来建模三元组。按照链接预测的推理结构,知识图谱嵌入模型主要分为基于卷积神经网络的方法的模型和基于胶囊神经网络的方法的模型。

1.1 基于卷积神经网络的方法

2018 年,Dettmers 等人[6]提出第一个应用卷积操作来完成链接预测任务的嵌入模型——ConvE,并利用卷积层来提取三元组实体与关系的交互特征。但ConvE 关注的是嵌入三元组(vℎ,vr,vt)中vℎ或vr中的不同维度条目之间的局部关系。为解决此问题,同年,Nguyen 等人[7]提出使用卷积神经网络处理链接预测任务的嵌入模型——ConvKB,将每个三元组表示为3 列矩阵输入卷积层进行特征提取,因此ConvKB 拥有更强的特征提取能力,链接预测方面也表现出了更好的性能。2019 年,Jiang 等人[8]以最大化实体与关系交互为目标,提出一种自适应卷积嵌入模型——ConvR,该模型将实体嵌入和关系嵌入表示为不同维数的一维向量进行投影提取交互特征,因此关系的各部分都与实体的整个表示的各部分都能得到交互特征,而不仅仅集中于某些特定的位置,这些卷积特征最终被投影并与物体的表示相匹配。

1.2 基于胶囊神经网络的方法

基于卷积神经网络的嵌入模型,没有考虑三元组之间的关系,因此无法封装KG 中给定实体附近固有的潜在结构信息。2019 年,Nguyen 等人[9]提出使用胶囊神经网络建模三元组关系的嵌入模型——CapsE,将每个三元组表示为一个三列矩阵,其中每个列向量表示一个元素的嵌入,将矩阵作为卷积层的输入,得到不同的特征图并映射成相应的胶囊,应用路由算法来指定从一层胶囊到下一层胶囊的链接,因此CapsE 可以提取三元组部分和整体的内在潜语义空间关系,最大化提取实体与关系、组与组之间的交互特征。2020 年,陈恒等人[10]尝试增加胶囊神经网络层数使其更大程度地获取深层信息,提出了基于四元数的胶囊神经网络嵌入模型QuaR,可以在嵌入三元组中提取更多的特征信息。

现有的深度学习嵌入模型,要么只关注实体特征,不考虑多边邻域的关系;要么独立地处理三元组的关系,学习不到组与组的特征。因此,本文提出了一种融合GAT 和CapsNet 新型嵌入模型来处理知识图谱链接预测任务。

2 模型

本节先介绍本文中使用的符号及其定义,然后简要介绍图注意力网络[2]和胶囊神经网络[3],最后提出一种融合GAT和CapsNet的知识图谱嵌入模型,并列出算法描述。

2.1 背景知识

本文将一个知识图谱表示为G={ε,ℜ,T},其中ε、ℜ、T分别表示实体、关系和实体的集合,如图1所示。(ℎ,r,t)表示ℎ∈ε、t∈T之间存在关系r∈ℜ,知识图谱将该知识存储为(姚明,配偶,叶莉),其中姚明为头实体,叶莉为尾实体,配偶称为关系。vℎ、vr、vt分别表示ℎ,r,t的唯一的k维嵌入,一个三元组(ℎ,r,t)的嵌入表示为(vℎ,vr,vt),定义一个三元组嵌入的三重向量对实体特征向量和关系特征向量的连接进行线性变换。

图1 知识图谱表示示例

LP 是用来预测三元组(ℎ,r,t)中缺失的关系r的任务,与现实中问答系统的实际任务相呼应。例如补全三元组(姚明,?,叶莉),即相当于回答了“姚明与叶莉的关系是什么?”这一问题。

2.2 本文模型

GAT[2]可以将邻居节点的特征以不同的权重聚合到新的节点上,CapsNet[3]可以获取到三元组之间的潜在关系特征。本文模型整体框架如图2所示。

图2 模型整体框架

如图3 所示,定义了一个图注意力网络单元来处理三元组,由TransE[11]训练得到的实体嵌入、关系嵌入作为初始嵌入输入,黑色圆圈为实体嵌入,白色圆圈为关系嵌入,每个嵌入三元组(vℎ,vr,vt)经过全连接拼接到一起输入第一层的图注意力层,得到新的灰色圆圈嵌入,该嵌入详细学习过程如图3 所示。降维后经过多层图注意力层操作,得到高维向量后经过增维操作喂入解码器。

图3 图注意力机制

此外,设置了8 层卷积层和两层胶囊层,将增维后的实体与关系的特征向量通过8 层卷积操作得到8 个特征图分解成K个胶囊,其中所有特征映射的同维条目被封装到一个相应的胶囊中。每个胶囊可以捕捉到嵌入三元组中相应维度条目中的更多的特征,这些特性被推广到第二层的一个胶囊,它产生一个向量输出,其长度被用作三重的分数。该分数用来评估三元组的合理性,最终实现使用胶囊神经网络来执行关系处理进行链接预测。

本文将在2.2.1 节和2.2.2 节对模型的主要部分进行详细阐述。

2.2.1 编码器

模型引入了GAT[2],首先定义了一个新的图注意力单元来加权两个相邻实体之间的注意值,如图3 所示。

本模型使用TransE[11]训练的实体嵌入和关系嵌入作为初始嵌入输入,输入的特征集为。定义了一个三元组的三重向量来对实体特征向量和关系特征向量的连接进行线性变换来学习这些嵌入。一个三元组的嵌入表示为:

对于每个实体节点,逐个计算其邻居们(j∈Ni)和其自己之间的相关性:

式中:W为权重矩阵,用于特征增强;a(·)为映射函数。a(·)函数把拼接后的高维特征映射到一个表示学习到头实体ℎ、尾实体t与关系r之间的实数上,然后使用softmax 函数计算邻域值,对这个值进行归一化,计算方式为:

式中:σ(·)为激活函数,表示任意非线性函数;为的邻域节点特征向量。融合了邻域信息的嵌入输出特征,采用多头注意力(Multi-head)来稳定学习过程,串联K个注意头的多头注意过程为:

式中:H为头实体嵌入表示的集合;T为尾实体嵌入表示的集合;k为第k个注意力机制计算节点i到节点j之间边的归一化注意力系数,i∈H∪T,j∈H∪T;W k为第k个注意力机制对应的线性变换矩阵。为防止维度过大导致过拟合,嵌入向量到最后一层的输出采用平均运算来实现多头注意,计算方式为:

模型借鉴Bordes 等[11]训练loss 的思想,使用hinge-loss 学习实体和关系嵌入来训练编码器,令为无效三元组中关系的嵌入,计算方式为:

式中:γ>0 为边缘超参数;S为有效三元组的集合;S′为无效三元组的集合。

2.2.2 解码器

模型使用CapNet[3]作为解码器,设置了8 层卷积层和两层胶囊层。使用unsqueeze函数对GAT 编码得到的实体与关系的特征向量增加维度送入卷积层,并分析每个维度上的三重的全局嵌入特性,得分函数为:

式中:Ω为滤波器组的卷积层的共享参数;*为卷积算子;capsnet()为胶囊网络操作;g为激活函数,使用的是ReLu 函数。

将GAT 编码器编码得到的实体与关系的特征向量增加维度变换得到一个二维矩阵A,其中,Ai,:∈R1×3代表A的每行。将矩阵A送入卷积层,使用滤波器ω∈R1×3对Ai,:进行重复卷积操作。Ω表示为滤波器的集合,|Ω|=N为集合中滤波器的数量,将产生的N个特征图q=[q1,q2,…,qk]∈Rk输入胶囊层进行处理,其中qi=g(ω·Ai,:+b),该式子中的·表示点乘,b∈R是偏置值,g为非线性函数,使用的是ReLu 函数。

然后采用两层胶囊层来处理特征向量,这些胶囊由卷积操作得到的N个特征图q=[q1,q2,…,qk]∈Rk重构得到。第一层胶囊层的每个胶囊i∈{1,2,…,K}产生一个矢量输出ui∈RN×1,用权重矩阵Wi∈Rd×N乘以矢量输出ui∈RN×1产生矢量∈Rd×1,对矢量∈Rd×1求和得到一个矢量s∈Rd×1作为第二层胶囊的输入。然后,胶囊执行非线性压缩函数,产生一个向量输出e∈Rd×1,其中的变换为e=squasℎ(s)。squasℎ(s)为对向量进行压缩的压缩函数,即,其含义为矢量s的模长越长则其代表的特征越强,输出值越大。ci是耦合系数。因此,矢量u所代表的特性被推广到第二层的胶囊,产生一个向量输出,其长度被用作三元组的分数,计算方式为:

对于解码器的loss 训练,使用Adam 优化器[12]通过最小化损失函数来训练解码器:

式中:S和S′分别为有效三元组和无效三元组的集合。S′是通过破坏S中的有效三元组生成的。

2.3 算法描述

本模型的算法对输入的三元组嵌入赋予不同的权值进行聚合,并使用胶囊神经网络学习每个特征向量,进行迭代更新,其长度作为三元组的分数判定正确性。

3 实 验

3.1 数据集

实验使用了2 个基准数据集:WN18RR[7]、FB15K-237[13]。2018 年,Dettmers 等人[7]提出:WN18[14]和FB15 中的链接预测任务存在可逆关系问题,这些可逆关系会影响链接预测任务的结果。因此,本文使用的WN18RR 和FB15K-237 是WN18 和FB15K删除了可逆关系之后的子集,可以使得链接预测任务更加准确。表1 是WN18RR 和FB15K-237 的统计数据。

表1 实验数据集

3.2 评估指标

链接预测任务,旨在给定三元组(ℎ,?,t)中,预测缺失的关系r。对于每一个测试三元组(ℎ,r,t),用模型预测出来的关系r′作为候选项,组成三元组(ℎ,r′,t)计算得分。评估指标有三种:平均排序(Mean Rank,MR),平均倒数排序(Mean Reciprocal Rank,MRR),命中率(Hits@10)。MR 是将评分函数计算的分数按照升序排列,排名越靠前预测效果越好。MRR 与MR 类似,MRR 的值越高意味着模型效果越好。Hits@10 是指正确的关系排名在前10 的比例。

为了评估本文的模型,选择了TransE、DistMult[15]、ComplEx[16]、ConvE、ConvKB、R-GCN、CapsE、QuaR[10]、A2N[17]这几类知识图谱补全模型进行对比。

3.3 参数设置

实验遵循首先训练GAT 来编码知识图谱中实体和关系的信息,其次训练CapsNet 解码器来执行关系预测任务。实验使用TransE 训练的实体嵌入、关系嵌入作为初始嵌入,嵌入维度为K=(100,200),使用Adam 优化所有参数,初始学习率设置为0.001。GAT 编码器使用超参数训练3 600 次,设置批处理大小batchsize 为128,权重ω初始化 为5e-6,并使用L2 范数约束。CapsNet 解码器使用超参数训练200 次,初始学习率设置为0.000 8,设置批处理大小batchsize 为64,权重ω初始化为1e-5,同样使用L2 范数约束。由于网络结构过大,实验在CapsNet 解码器的卷积层每一层都使用Dropout 操作以防止过拟合,设置为0.5。

3.4 结果和分析

表2、表3 展示的结果清楚地表明了本文所提出的方法在WN18RR 的测试集指标和FB15k-237测试集部分指标显著优于最优的结果。表中加粗的为最优得分。

表3 WN18RR 链接预测测试结果对比

3.4.1 FB15k-237 链接预测测试结果对比分析

在表2 中,是FB15k-237 在已知头实体和尾实体的情况下,预测关系的测试结果。

表2 FB15k-237 链接预测测试结果对比

本文方法在MR 和Hit@10 两个指标上均显著优于最先进的结果。在MR 指标上,本文模型比现存效果最好的模型ConvE 有7.9%的提高,说明基于CNN 的嵌入模型相比融合GAT 和CapsNet 的链接预测模型忽视了不同维度的特征关系,而本文融合GAT 和CapsNet 的链接预测模型对于组与组之间的关系提取效果远优于基于CNN 的嵌入模型,更容易获得全局的嵌入信息。

在Hit@10 指标上,本文模型比现存效果最好的模型CapsE 有6.6%的提高,说明本文融合图注意力网络和胶囊神经网络比单独的胶囊神经网络更能捕获实体邻域中的实体和关系特征,这是因为本方法为同一邻域内的节点分配了不同权重,实现了对邻居节点的加权聚合,解决了高层特征与低层特征之间位置关系容易模糊的问题。

在MRR 这个指标上略低于模型QuaR,排名第二。嵌入模型QuaR 为基于四元数的胶囊神经网络嵌入模型,其增加了胶囊神经网络的层数,使得模型可以在嵌入三元组中提取更多的特征信息。由此可知,本方法在这两个实验指标上优于大多数其他嵌入模型,这也说明本方法在提取实体嵌入和关系嵌入不同维度的交互特征方面的性能强大。

3.4.2 WN18RR 链接预测测试结果对比分析

在表3 中,是WN18RR 在已知头实体和尾实体的情况下,预测关系的测试结果。

本文模型在MR 指标上具有显著优势,比现存效果最好的模型QuaR 有4.1%的提高。说明在WN18RR 这类关系较少的数据集上,融合图注意力网络和胶囊神经网络的嵌入模型比增加胶囊神经网络的层数,能够更好地抓取三元组中关键的特征信息。

在MRR 和Hit@10 两个指标上,本文模型表现出的性能优越性不够明显,略低于基于CNN 的嵌入模型ConvE 和ConvKB,因为本方法胶囊神经网络对卷积操作后的特征图进行封装压缩导致某些关系特征信息丢失,使得在WN18RR 这一数据集上的MRR 和Hit@10 两个指标上表现性能略低于基于CNN 的模型。

WN18RR 训练集有40 943 个实体,但是关系的类型仅有11 种,分析可知:本文的模型提取实体与关系的交互特征,在较多关系的数据集上拥有显著的优势。由于WN18RR 这一类数据集中关系数量较少而实体数量又比较多,训练集数据也不如FB15k-237 这类数据集多,所以并不能很好地体现本文模型的优越性。

4 结语

本文针对现有的链接预测模型不能有效考虑三元组之间潜在关系的问题,提出了面向知识图谱补全融合GAT 和CapsNet 的链接预测方法。该方法的主要创新点在于定义了适用于三元组的图注意力网络的单元,并将其用于编码交互特征,使模型获得更强的鲁棒性。使用胶囊神经网络解码嵌入特征,既能够更好地提取三元组的全局中的位置特征,又能捕获本身的局部特征,实现节点权值的自适应匹配和三元组位置特征的矢量学习,提高链接预测的准确率。

在未来的研究中将继续优化本方法,更好地捕获实体与关系的潜在特征,如可以使用预训练模型BERT 输入嵌入或使用调节负采样方法来提高链接预测的准确性。此外,在实验中发现该模型对三元组实体预测、三元组分类等任务也有良好的效果,未来的研究中将尝试将本文方法拓展应用于其他任务。

猜你喜欢

三元组胶囊实体
时光胶囊
特征标三元组的本原诱导子
时光胶囊
前海自贸区:金融服务实体
关于余挠三元组的periodic-模
实体书店步入复兴期?
一个时态RDF存储系统的设计与实现
两会进行时:紧扣实体经济“钉钉子”
振兴实体经济地方如何“钉钉子”
三元组辐射场的建模与仿真