基于对比学习的全局增强动态异质图神经网络

2023-08-15 02:54焦鹏飞高梦州张纪林
计算机研究与发展 2023年8期
关键词:快照异质注意力

焦鹏飞 刘 欢 吕 乐 高梦州 张纪林 刘 栋

1 (杭州电子科技大学网络空间安全学院 杭州 310018)

2 (杭州电子科技大学计算机学院 杭州 310018)

3 (河南师范大学计算机与信息工程学院 河南新乡 453007)

4 (数据安全治理浙江省工程研究中心 杭州 310018)(pjiao@hdu.edu.cn)

网络(network)或图(graph)具有对实体及实体之间关系的通用建模能力,被广泛应用于描述现实世界网络,如社交网络、互联网和交通网络等[1-5].为了捕获图数据中丰富的结构信息和语义信息,图表示学习( graph representation learning)近年来引起了广泛的研究热忱,并在许多领域展现出其显著的性能优势[6],如生物信息、智能交通、推荐系统等[7-9].尽管取得了诸多重要成就,目前大部分图表示学习研究集中于单一节点类型的静态同构图(homogeneous static graph).然而,现实世界中广泛存在着包含多种类型的动态演化实体及其交互关系的复杂系统.如图1所示,学术网络中包含“作者”(A)、“论文”(P)、“会议”(V)3种类型的节点和“撰写/被撰写”“发表/被发表”等类型的动态交互关系,通过静态同构图结构难以对其进行良好建模.而动态异质图(heterogeneous temporal graph, HTG)由于包含动态演化的多种类型的实体及其交互关系,可以自然地对此类包含多节点和边类型的动态复杂系统进行建模[10].

Fig.1 Academic network heterogeneous temporal graph图1 学术网络动态异质图

另一方面,当前针对动态异质图的表示学习方法主要采用半监督学习(semi-supervised learning)范式[11],即结合无标签拓扑结构和标签信息来指导学习.这类方法通过良好学习输入图数据和监督信号之间的映射关系,在特定任务上通常有着较高的准确率.然而,高质量标签数据通常昂贵而稀缺,需要耗费大量的人力资源和领域知识[12-13].同时,在动态异质图数据中往往仅包含单一节点类型的静态标签数据,例如,学术网络异质图中通常仅包含“作者”节点的“研究领域”作为标签信息,并且此类静态标签无法反映网络随时间变化的动态性.因此,对于异质语义信息丰富的动态异质图数据,难以通过这类标签数据作为监督信息得到异质图中所有类型节点的动态表示.此外,在半监督学习范式下学习得到的节点表示往往还存在泛化性较差的问题.

针对半监督学习的问题,自监督学习(selfsupervised learning)范式提出通过从数据中产生监督信号来指导学习过程,在计算机视觉、自然语言处理等领域取得了显著成就[14-15].其中,对比学习(contrastive learning)是自监督学习的一类经典方法,其通过构造正负样本对并最大化正样本对之间的一致性完成自监督学习[13].尽管对比学习比自监督学习取得了明显的性能提升,但目前的相关研究仍主要集中于同质图数据,对动态异质图中包含的复杂的异质性和动态性信息进行自监督学习存在2点挑战:

1)在异质性方面.如何自适应地捕获不同动态异质图中包含的异质性信息是挑战之一[11,16-17].对于动态异质图每个快照的异质性信息的挖掘质量将影响最终的动态表示质量.对于单快照的异质图,基于元路径(meta-path)的方法是目前常用的异质语义信息挖掘方式[16,11],然而该类方法得到的表示质量严重依赖于元路径的设计,并且往往只能得到单一节点类型的语义相关性.此外,设计能够有效反映语义信息的元路径需要异质图数据的专家经验,对于异质拓扑较复杂的图数据的元路径设计存在一定困难.

2)在动态性方面.如何从大量的历史快照中捕获有价值的历史信息,从而支撑动态预测性任务是另一项挑战[18-20].真实世界中复杂系统往往存在随时间动态变化的特性,因此对其建模得到的异质图数据随时间而不断发生演化.如图1所示,随着学术网络中作者撰写和发表论文的增长,动态异质图数据不断新增边,并且这种动态演化呈现出类型相关的规律性.从动态异质图的历史演化中捕获这种快照间的演化关系对于动态性预测任务至关重要.

因此,本文设计了一种基于对比学习的全局增强动态异质图神经网络,其能够自适应地捕获动态异质图数据中存在的丰富异质性,是动态性信息的自监督方法.具体地,为了建模网络的异质性,本文在每个时间快照内通过层次注意力机制聚合每个节点及其邻域的节点特征,即空域消息传递,从而得到在当前时间快照中的局部拓扑表示;为了更好地融合历史信息,在时间维度上通过注意力机制聚合时间窗内的局部表示来捕获多时间快照网络的动态性特征;为了避免节点表示过度关注低阶结构,通过对比学习策略完成时序性局部表示和全局表示的互信息最大化,从而使得节点包含更多的全局性信息;使用一个简单的解码器通过节点表示来生成未来时刻的异质拓扑结构,并与真实的拓扑结构计算重构误差,完成模型的优化.

为了验证模型有效性,本文在3个真实世界动态异质图数据集上进行了多项实验.实验结果表明,相比于基线模型,本文提出的模型在动态链路预测实验中的AUC指标上得到了平均3.95%的性能提升.总结而言,本文的贡献有3点:

1)研究了现有表示学习无法综合处理动态性和异质性的问题,提出了一个基于对比学习的动态异质图表示学习方法.

2)基于对比学习及层次注意力实现了全局增强动态异质图神经网络模型,其包含扰动图生成、动态异质图编码和生成-对比联合优化3个模块.

3)在3个数据集上进行了全面的实验来验证模型的有效性,实验结果表明本文提出的动态异质图表示方法在动态链路预测任务上相比于基线模型有了明显的性能提升.

1 相关工作

图表示学习旨在学习一个能够将离散的图数据映射为低维嵌入表示的映射函数,使得低维嵌入表示能够良好地反映图数据包含的拓扑结构、原始特征和语义信息[6].本节介绍基于图神经网络的方法和基于对比学习的图对比学习方法.

1.1 图神经网络

图神经网络通过将图表示学习与深度神经网络方法相结合,近年来在许多领域展现出了卓越的性能,成为图数据表示与挖掘的主要方式[6,21-23].根据图数据中是否存在多种节点和边类型,可以将现有的表示学习方法分为面向包含单一节点和边类型的同质图神经网络和面向多类型的异质图神经网络.

在同质图表示学习方面,GCN[24]提出通过谱图卷积的一阶近似在图结构数据上进行高效逐层传播从而完成图数据的半监督学习.为了进一步提升表达能力,VGAE[25]提出通过将GCN编码器[24]与变分自编码器[26]相结合完成图数据的无监督学习.另一方面,GraphSAGE[27]在图结构中采样指定数目的邻域节点进行消息传递并通过多种方式的聚合操作完成图数据的归纳式学习.为了使模型关注于最相关的邻域节点,GAT[28]通过注意力机制计算不同邻居的注意力系数来为不同节点分配不同的重要性.在动态图方面,EvolveGCN[29]通过使用循环神经网络来建模不同时间快照下的GCN模型参数.此外,DySAT[30]提出在每个快照上通过在结构自注意力机制得到的节点表示的基础上,利用时序自注意力机制进行时间维度的节点聚合.然而,此类同质图神经网络假设图结构中节点和边类型均为单一类型,因此无法有效处理类型丰富的异质图数据.

在异质图表示学习方面,metapath2vec[31]提出通过基于元路径指导的随机游走来采样节点的异质上下文信息,并通过skip-gram[32]模型进行节点嵌入的学习.为了更好地利用知识图谱异质图中多类型关系的输入特征,R-GCN[33]通过对不同类型的邻域节点使用不同的权重矩阵进行图卷积聚合.为了能够对异质图数据中不同邻域的节点分配不同的注意力权重,HAN[34]提出通过元路径将异质图转化为多个元路径图并通过节点级注意力机制进行邻域聚合,并通过语义级注意力机制聚合不同元路径表示从而得到最终表示.为了同时考虑不同边类型的重要程度,HGT[35]提出为不同节点类型和边类型分别计算注意力权重并进行异质注意力聚合.为了处理包含动态信息的异质图数据,DHNE[36]通过元路径指导的时序随机游走来采样时域和空域上下文信息并通过skip-gram[32]模型来学习节点嵌入.类似地,THINE[37]同样通过时序随机游走序列来采样动态异质邻域序列,并通过Hawkes过程和注意力机制聚合随机游走序列得到节点表示.DyHNE[10]通过对不同元路径图的一阶和二阶近似和加权求和来捕获结构和语义信息,并通过扰动更新的方式捕获动态变化.HTGNN[38]提出通过层次注意力机制来捕获每个时间快照和不同时间的节点表示.目前,异质图神经网络的研究主要关注于静态的异质图数据,这些方法无法从历史演化过程中捕获动态性信息.此外,基于元路径的方法如HAN[34]、DHNE[10]等,其有效性较依赖于关于图数据的专家经验和人工设计[16],并且此类方法通常只得到单一类型的节点表示,无法完成涉及多类型节点的下游任务.

1.2 图对比学习

图对比学习方法主要关注于不依赖人工标注信息的数据增强策略和代理任务的设计[12-13].根据图数据的类型,这里将对比学习方法分为针对同构图数据的方法和针对异质图数据的方法.

针对同构图的方法中,GraphCL[39]通过4种图增强方式得到原始图的2个增强视图,并分别计算2个视图的图表示,最终通过最大化相同原始图表示之间的互信息进行对比学习.DGI[40]提出通过特征扰动得到负图,并通过以无监督的方式最大化原始图的局部拓扑表示和全图总结表示之间的互信息得到能够反映图结构信息的节点表示.类似地,MVGRL[41]通过图数据增强得到原始图的2个视角,通过最大化图2视图之间的互信息完成对比学习.

Fig.2 Overall structure of the globally enhanced heterogeneous temporal graph neural networks based on contrastive learning图2 基于对比学习的全局增强动态异质图神经网络整体结构

尽管上述针对同构图的方法通过自监督学习取得了较高的准确率,但这些方法只能处理节点和边类型单一的同构图数据,无法建模异质图数据中存在的丰富结构和语义信息.

针对异质图的对比学习,HDGI[42]提出通过元路径图以及2层注意力机制来得到节点表示,并采用与DGI[40]类似的对比策略完成局部表示与全局特征的互信息最大化.此外,HeCo[43]提出了一种异质图的网络模式与元路径图双视角的对比机制,并最大化2个视角下共有元路径数较多的样本之间的互信息完成对比学习.

上述针对异质图的对比学习方法尽管取得了明显的性能提升,然而它们均通过元路径图建模异质性,其有效性依赖于元路径的设计,在缺乏关于异质图数据的专家经验或面对较复杂的异质图数据时此类方法的性能优势较为有限.此外,此类方法均只建模元路径中较关键的某单一节点类型,因此无法完整指导图神经网络模型学习异质图中所有类型的节点表示.

2 定 义

该节阐释了本文所涉及的基本概念定义,本文所使用的符号表示及其含义如表1所示.

Table 1 Notations and Their Meanings表1 符号表示及其含义

定义1.异质图.异质图定义为包含多种节点和边类型的图G={V,E,X},其中V和E分别为该异质图中所包含的节点集合和边集合,X∈R|V|×D为节点特征矩阵,D为 初始特征向量维度.此外,通过映射函数ϕ(v):V→A和 ψ(e):E→R可以将节点v∈V和边e∈E映射为其所属节点类型集合A和 边类型集合R,并且节点和边类型集合满足|A|+|R|>2.

本文通过“首节点-边-尾节点”三元组的类型进行边类型描述,如对于边e=(i,j),其三元组边类型为r=〈ϕ(i),ψ(i,j),ϕ(j)〉,以三元组边类型r连接的邻域节点集表示为.

定义2.动态异质图.动态异质图定义为一系列随时间动态演化的异质图快照序列G={G(1),G(2),…,G(T)},其中T为时间窗大小,即动态异质图所包含的时间快照个数,动态演化包含节点和边随时间动态增加与删除.

对于电子器件工作散热导致的热应力,分两步进行分析。先计算由于器件工作产热导致的瞬态热传导问题。设每个器件功率1 W,产热热源均匀分布在IC中心的芯片中。在整体灌装结构的外边界上设置对流换热边界条件,即热流密度正比于边界与周围环境的温度差,对流换热系数取为200 W/(m2·K)。环境温度与初始温度均为20 ℃。计算结束条件为各部分温度都达到稳态,实际模拟中各个单元温度变化率不超过10-3℃/s时即可认为达到稳态。接下来将计算得到的温度场导入准静态分析步进行热应力计算,得到结构在每一时刻的热应力分布。

定义3.动态异质图表示学习.动态异质图表示学习的目标是学习一个将动态异质图映射至低维表示的非线性映射函数f:G→H,其中H∈R|V|×d(d≪D)为节点的低维表示矩阵,d为表示向量维度,并且该节点表示能够捕获动态异质图G中包含的拓扑结构、语义信息以及时序依赖信息,从而能够用于完成时序预测式的下游任务.

3 动态异质图表示方法

为了解决现有方法在建模动态异质图时面临的问题,本文提出基于对比学习的全局增强动态异质图表示方法,方法总体结构如图2所示.本节首先概述模型的总体流程,然后分别详述模型的3个主要模块:扰动图生成、动态异质图编码和生成-对比联合优化.

3.1 概 述

本文提出的动态异质图表示方法总体结构采用自动编码-解码架构.1)对于输入的动态异质图G=,扰动图生成模块根据输入的动态异质图快照生成其扰动图.2)对于原始动态异质图G 及其对应的扰动图,分别通过L层动态异质图编码模块对二者进行编码表示,从而得到原始图和扰动图的动态异质局部节点表示矩阵H和.3)使用异质图readout 函数g对原始图的局部表示H池化得到关于原始动态异质图G 的全局表示向量hg.然后通过互信息最大化对比学习策略,即训练概率判别函数D完成局部表示和全局表示hg之间的互信息最大化,完成对动态异质图表示的全局增强.4)将原始图的动态节点局部表示矩阵H输入异质图解码器从而生成未来时刻的异质图拓扑结构并完成预测任务.为了对模型参数进行优化,本文将生成图重构误差最小化与对比学习互信息最大化作为目标函数进行自监督联合优化.

3.2 扰动图生成

本节将描述采用的对比学习中扰动图负样本的生成策略.为了使得从动态异质图数据中学习到的节点表示不仅能够捕获低阶的成对拓扑结构,还能包含更多的空域和时域的全局性信息,此处采用了特征扰动的方式得到结构与特征无关的负样本图.具体地,对于动态异质图的每个图快照G(t)={V(t),E(t),X(t)},1≤t≤T,对其特征矩阵X(t)进行类内特征扰动:

对每个异质图快照进行式(1)的类内特征扰动后可以得到扰动动态异质图为扰动后的特征矩阵.为了将分布在不同特征空间的节点投影至同一隐藏空间便于后续运算,此处对不同类型的节点特征分别进行投影:

其中Wϕ(i)∈Rd×D和bϕ(i)∈Rd分别为关于节点类型ϕ(i)的可训练特征转换投影矩阵和偏置矩阵;σ(·)为非线性激活函数,如ReLU.

3.3 动态异质图编码

动态异质图编码模块用于将投影后的节点特征与空域异质拓扑结构和空域时序依赖信息相融合,从而得到包含拓扑结构、语义信息和时序依赖关系的动态异质图表示.具体地,对于输入的动态异质图及其投影后的特征矩阵,本文首先通过空域内的双层注意力消息传递分别得到各快照内的节点表示,然后通过时域注意力机制聚合不同快照间的节点信息.通过动态异质图编码,可以有效融合在T个快照的空域一阶邻域特征信息,堆叠多层后即可自适应地捕获包含高阶邻域的动态性表示.

该模块用于捕获动态异质图快照内部的结构信息和语义信息.由于异质图快照中节点间通常以异质的三元组边类型相连,即通过多种类型的边与多种类型的邻域节点连接,因此其包含的语义信息存在明显的差异.此外,尽管通过相同三元组边类型连接,同一类型的不同节点对于目标节点也存在不同重要性.因此,对于异质图快照的目标节点,本文以三元组边类型作为划分,通过三元组组内和三元组组间双层注意力机制捕获结构和语义信息.

组内注意力机制旨在通过注意力机制为相同三元组连接模式的不同节点分配不同的注意力权重,并通过消息传递机制将邻居节点的特征传递至目标节点.具体地,对于与目标节点i通过某三元组边类型r相连的邻域节点集Nir,通过组内注意力机制对其聚合为:

其中,ar∈R2d为关于三元组r的可学习的转换矩阵;σ(·)为非线性激活函数LeakyReLU.

得到目标节点i关于所有三元组边类型邻域的节点表示后,为了区分来自不同三元组边类型的节点表示的重要性,此处通过三元组边类型的组间注意力机制进行聚合:

其中r∈R为异质图包含的三元组边类型集合,βi,r为目标节点i关于三元组边类型r的注意力权重系数,其计算公式为:

其中,cr∈Rd为关于三元组边类型r的可学习的转换向量;WR∈Rd×d和bR∈Rd为所有三元组共享的转移矩阵和偏移向量;R为所有三元组边类型构成的集合;σ(·)为非线性激活函数tanh.

在每个时间快照上通过三元组内和组间的双层注意力消息传递,可以自适应地捕获快照内部包含的拓扑结构和语义信息.

3.3.2 时域消息传递

该模块用于捕获动态异质图快照间的时序依赖信息.在动态异质图的快照间,由于动态性会导致拓扑结构的不断演化.这种快照间的演化关系蕴含着某些时序上的依赖信息,为了区分不同快照之间的不同重要性程度从而更好捕获这种时序依赖关系,本文采用时序自注意力机制并进行时域上的消息传递.

与循环神经网络依时间推移顺序处理时序数据的方式不同,时序注意力机制可以对动态异质图多个时间快照进行并行处理.为了在并行运算中保持快照之间的时间次序,首先为每个节点在不同快照上得到的表示添加时序位置信息:

其中,WT∈Rd×d和bT∈Rd为快照间共享的转移矩阵和偏移向量;为添加时序位置编码后的第t个时序快照得到的节点表示向量;p(t)∈Rd为时序位置编码向量,其第k位的计算公式为:

在为节点表示添加时序位置信息后,为了区分不同时序快照得到的节点表示的重要性程度,此处使用时间维度注意力机制完成跨快照的消息传递与聚合:

其中,WQ∈Rd×d和WK∈Rd×d均为时域共享的查询向量和键值向量转移矩阵.

3.3.3 自适应时空编码

通过空域和时域消息传递,可以得到目标节点i在T个快照中的一阶邻域信息.为得到多阶邻域的语义信息,可以通过堆叠L层空域及时域消息传递过程.为了防止图神经网络堆叠过多而产生的过平滑等问题,此处采用门控残差连接机制得到当前层的输出表示.具体地,通过一个可训练的更新阈值δϕ(i)自适应地控制关于该层所得候选表示的更新程度:

其中,δϕ(i)为关于类型ϕ(i)的更新程度的可学习变量;为目标节点i的通过空域和时域消息传递得到的候选表示;Wϕ(i)∈Rd×d为关于上一层输入的节点表示的转移矩阵.在进行下一层空域-时域消息传递时,目标节点i将当前层得到的输出特征作为输入特征,从而自适应地捕获空域-时域语义信息.

最终,经过L层空域-时域消息传递后通过对所有历史快照编码进行求和:

其中,hi∈Rd为目标节点i关于输入动态异质图G=的动态嵌入表示,由所有节点得到的表示矩阵记为H.对于扰动图,本文使用共享的动态异质图编码器进行同样的建模过程,其对应的得到的节点表示矩阵记为.

3.4 生成-对比联合优化

本节将对动态异质图编码模块的生成-对比联合优化策略进行描述.为了自监督地训练动态异质图编码模块,使得其得到的所有类型的节点表示具有动态预测能力,本文通过一个异质图编码器将节点表示向量生成为未来时刻的异质拓扑结构.具体地,对于节点对(i,j),通过其节点对表示计算边概率为:

其中,MLP(·)为根据节点对表示向量计算对应边是否存在多层感知机模型函数;‖代表拼接运算;σ(·)为计算边存在概率的非线性激活函数sigmoid.进而,通过动态异质图编码器得到的表示矩阵预测未来时刻拓扑结构的目标函数为:

其中,Q表示负采样中负样本数相比于正样本数的倍数,Pn为负采样分布.

此外,由于动态异质图编码得到的节点表示仅通过未来时刻的拓扑结构进行自监督训练,这样会导致节点表示易于过多关注低阶的成对关系.因此,为了引入全局的高阶信息来增强节点的动态异质表示向量,本文通过对比学习的方式进行局部和全局表示的互信息最大化.

首先,为了得到关于动态异质图的空域和时域的全局表示,本文通过readout函数由动态异质编码部分得到的节点表示hi得到全局表示hg:

其中,V(T)代表第T个时间快照下的节点所构成的集合,hi表示学习得到的节点i的向量表示.

为了实现动态异质图局部表示和全局表示互信息最大化,本文引入了一个判别器D(·,·),通过判别局部表示和全局表示是否来自于同一动态异构图作为代理任务完成互信息的最大化.具体地,对于原始动态异质图和扰动图得到的表示向量与全局表示向量的判别目标函数为:

最终,通过联合生成损失和对比损失得到整体目标函数为:

其中,λ为超参数,其用来平衡生成损失和对比损失,关于其取值选择见本文4.4节实验分析部分.

3.5 复杂度分析

本文提出模型的时间效率较高,其时间开销主要由空域、时域消息传递及损失函数计算产生,其中不同时间快照下的空域消息传递过程可以通过并行计算进行优化.具体地,各部分中特征投影部分的复杂度为O(|V|Dd),组内注意力机制部分复杂度为O(|E|d),组间注意力机制部分复杂度为O(|R|d),时域注意力机制部分复杂度为O(|V|Td),重构损失复杂度为O(|E|d),对比损失复杂度为O(|V|d).总体而言,模型时间复杂度为O(|V|Dd+|V|Td+|E|d),与图数据中节点数目和边数目呈线性关系,时间效率较高.

4 实 验

4.1 数据集

为了验证所提模型的有效性,本文采用了3个真实世界数据集进行实验,关于数据集快照数、平均节点数等统计信息如表2所示.

Table 2 Statistics on Three Real-world Datasets表2 3个真实世界数据集的统计信息

下面分别介绍本文实验中使用的3个数据集:

1)Yelp是一个商家评价平台,本文将用户、商家和评级建模为3种类型的节点并按照评价时间构造了9个动态异质图快照.

2)DBLP是一个记录计算机科学期刊、会议论文等内容的引文平台,本文将作者、论文和会议3类节点及其关系构造异质图并按照时间划分为了12个异质图快照.

3)AMiner是一个学术搜索引擎,与DBLP类似,将作者、论文和会议3类节点按照论文发表时间划分为了12个异质图快照.

本文使用了8个基线模型来进行对比.其中包含4个同构图神经网络模型VGAE,GAT,DGI和EvolveGCN,以及4个异质图神经网络模型metapath2vec,R-GCN,HGT和HTGNN.为了得到多类型节点的输入特征,本文通过异质图嵌入方法metapath2vec学习异质网络嵌入表示并作为初始化特征.对于基线模型中的静态模型,本文将用于训练的动态异质图的多个快照合并至同一图结构中,以此取消其动态特性.对于同质图模型,实验中忽视了动态异构图中的节点及边类型,使其成为仅包含单一节点和边类型的同质图数据,以此取消其异质性.

4.2 实现细节及参数设置

对于动态链路预测及动态新链路预测任务,本文使用了同样的实验设置完成实验.为适应基线模型对于输入数据的要求,对于同质图神经网络基线模型,如VGAE,GAT,DGI等,实验中直接去除了图数据中的节点类型及边类型信息;对于静态模型,如GAT,metapath2vec,R-GCN等,实验中模拟静态图的建模方式,将所有时刻的边数据合并成为一张图完成训练.对于metapath2vec模型,单点随机游走次数设为40,随机游走步长度设为60,对于学术网络数据集DBLP和AMiner采用{APVPA, PVAVP, VAPAV}作为元路径,对于Yelp数据集采用{BSUSB, SUBUS,UBSBU}作为元路径.为了公平地对比模型性能,本文提出模型和基线模型的表示向量维度均设置为32.其余参数在实验中均遵循了各方法所报告的最佳配置.

本文模型的动态异质图编码层数L在3个数据集中均设置为2.对于模型注意力机制,本文在3个数据集中设置随机丢弃率Dropout为0.2,注意力头数均设置为4.在式(14)中,目标函数中的负采样倍数Q设置为5.为了优化目标函数,本文使用Adam优化器进行模型参数的优化,初始学习率和权重衰减系数分别设置为5E-3和5E-4.为了防止模型训练过拟合,本文设置初始训练轮数为1 000,并根据训练集损失值的变化情况采用训练早停策略防止模型退化及过拟合.

本文实验环境的操作系统为Ubuntu 20.04.3 LTS,服务器处理器为Intel®Xeon®Silver 4210R CPU @2.40 GHz,本文实验使用NVIDIA GeForce RTX 3 090 GPUs显卡进行训练,其CUDA版本为11.6.本文采用深度学习框架PyTorch 1.12.0和深度图框架 Deep Graph Library (DGL) 0.8.2实现模型并完成实验.

4.3 动态链路预测

在动态链路预测实验中,本文首先通过提出的模型对动态异质图得到的编码表示来预测时刻T+1的异质图拓扑结构,从而评估模型对异质性和动态性信息的建模能力.在实验中,我们将每个数据集的后3个时间快照作为测试集并报告其平均结果,其余快照作为训练集优化模型参数.

此外,为了进一步探究模型的动态预测能力,本文还评估了模型对于新增链路的预测性能,其中新增链路指存在于时刻T+1且不存在于输入图数据中的边集合.本文重复进行了5次动态链路预测和新链路预测实验,本文模型和基线模型得到的AUC和AP指标的均值和标准差结果如表3和表4所示.通过实验分析,可以得到4点结果:

Table 3 AUC and AP Scores of the Dynamic Link Prediction Task表3 动态链路预测任务的AUC和AP分数%

Table 4 AUC and AP Scores of the Dynamic New Link Prediction Task表4 动态新链路预测任务的AUC和AP分数%

1)VGAE,GAT和DGI等面向同构图的方法由于无法对数据中的异质性建模,无法更好地捕获异质图中的结构和语义信息,因此其结果普遍劣于异质图方法.由于引入了邻域注意力机制,GAT在2种链路预测任务的大部分数据集中均有明显的性能提升.

2)R-GCN和HGT等异质图方法通过建模异质性信息,性能优于大部分同构图模型.通过引入元路径信息,metapath2vec方法较于VGAE等同构图方法在Yelp数据集性能有所提升,然而在DBLP和AMiner数据集中性能不佳,这表示异质信息对于建模异质图十分重要,并且不同数据集中元路径对性能影响较大,需要根据图数据进行良好设计.

3)由于对图数据中的动态性进行建模,Evolve-GCN在新链路预测中相比较于未考虑动态性的DGI和VGAE模型有部分性能提升.由于同时考虑了动态性和异质性,HTGNN在大部分实验中的结果优于其余基线模型.

4)本文提出的方法通过动态异质图编码模块良好捕获了动态异质图数据中的动态结构和语义信息,相比于GAT等同构图模型有明显的性能提升.此外,不同于HTGNN仅关注成对的节点关系,本文模型通过动态局部和全局的互信息最大化,在节点表示中引入了动态全局性信息,在3个数据集中均有明显的性能提升.

4.4 参数敏感性分析

本节对于模型的主要参数进行敏感性分析,其中包括动态异质图神经网络层数L、表示向量的向量维度d、损失函数平衡系数λ以及时间窗大小T.参数敏感性实验结果如图3~5所示.通过实验分析可以得到4点结果:

Fig.3 Parameters sensitivity analysis on DBLP dataset图3 DBLP数据集参数敏感性分析

1) 图神经网络层数L.通过堆叠多层空域和时域消息传递图神经网络可以捕获多阶邻域的信息,本文对模型在堆叠1~5层图神经网络时的性能进行实验.结果表明,堆叠多层时3个数据集均在一定程度上提升了模型性能.然而,堆积的层数过多对模型性能提升不明显(如图3所示),甚至性能有所下降(如图4和图5所示),本文认为这是由于过平滑现象所导致的性能下降.为观察式(11)中门控残差机制对模型性能的影响,本文进行了单独的消融实验,如图6所示,在L= 2时,门控残差机制在3个数据集上的实验结果均优于消融后的结果,并且门控残差机制还使得结果方差减小,提升了模型稳定性.

Fig.4 Parameters sensitivity analysis on Yelp dataset图4 Yelp数据集参数敏感性分析

Fig.5 Parameters sensitivity analysis on AMiner dataset图5 AMiner数据集参数敏感性分析

Fig.6 Ablation study on gated residual connection图6 门控残差连接消融实验

2) 表示向量维度d.表示向量维度的大小影响了模型的复杂度以及表示向量的信息量,为探索本文模型在不同表示向量维度下的性能,本文实验测试了模型在d= 4, 8, 16, 32, 64的性能.如图3~5所示,随着表示维度的增大,模型性能大体呈现上升趋势,这是由于模型可学习参数规模增大而导致的性能上升.然而当维度过高时,模型性能出现一定程度的降低,这或许是由于模型过拟合导致表示向量中包含了更多噪声.总体而言,本文模型在不同数据集下性能均保持平稳表明可以使用较少的参数捕获丰富的全局增强的动态性和异质性信息.

3) 平衡系数λ.平衡系数用于表示网络重构目标及对比学习目标占模型总体目标的权重,由实验结果可知,对于不同的数据集,最佳的平衡系数λ的取值不尽相同,在Yelp数据集中当λ=0.7时效果最佳,而在DBLP和AMiner数据集中λ = 0.6,0.9时较为稳定.

4) 时间窗大小T.较大的时间窗可以引入较多的输入信息,本文为探究模型在不同输入信息量下的模型性能,实验测试了模型在不同时间窗大小下的预测表现.由结果可知,由于引入了更多的异质性及动态性信息,模型性能大体上随着时间窗的增大,均呈现一定的上升趋势.然而,如在Yelp数据集中的结果所示,过大的时间窗导致了一定的性能下降,我们认为这是由于历史信息中包含噪声所致.大体上,本文模型可以通过较少的时间窗数量取得较稳定的结果,这体现了对动态性和异质性的有效建模能力.

4.5 消融实验

本节验证模型主要模块的有效性,对模型中的生成重构损失函数和对比损失函数分别进行消融,其中生成重构损失消融后的结果表示为“w/o Gen”,对比损失函数消融后的结果表示为“w/o Con”,完整模型的结果表示为“本文模型”,结果如图7所示.

Fig.7 Ablation study on Yelp dataset图7 Yelp数据集消融实验

通过实验结果可以看出,生成重构损失通过异质拓扑结构监督各个类型节点的表示向量,对比损失增强节点的局部表示使其包含全局性信息,去除生成损失函数LG或是对比损失函数LC均会导致性能的下降,符合前文有关生成式和对比式自监督联合学习可以有效增强节点表示的假设.

5 结 论

本文提出了一个基于对比学习的全局增强动态异质图神经网络模型.该模型由扰动图生成、动态异质图编码和生成-对比联合优化3个模块组成,在生成扰动图后通过编码器对原始图和扰动图分别进行动态异质注意力消息传递,并结合未来时刻的低阶拓扑结构信息和动态异质全局表示的高阶信息进行图表示学习.为了验证模型的有效性,本文在3个真实世界数据集上进行2类动态链路预测实验,实验结果表明本文模型对动态性预测任务具有明显性能优势.

作者贡献声明:焦鹏飞提出了模型与思路,以及负责论文修改;刘欢提出了算法和实验方案,以及参与论文撰写;吕乐参与了实验结果分析;高梦州撰写论文部分内容;张纪林指导实验并修改论文;刘栋提出指导意见并修改论文.

猜你喜欢
快照异质注意力
EMC存储快照功能分析
让注意力“飞”回来
“扬眼”APP:让注意力“变现”
创建磁盘组备份快照
A Beautiful Way Of Looking At Things
随机与异质网络共存的SIS传染病模型的定性分析
Ag2CO3/Ag2O异质p-n结光催化剂的制备及其可见光光催化性能
数据恢复的快照策略
MoS2/ZnO异质结的光电特性
一张“快照”搞定人体安检