APP下载

基于改进图注意机制的网络嵌入方法研究及应用

2022-09-29韩津津李智杰李昌华

计算机测量与控制 2022年9期
关键词:二阶可视化节点

韩津津,李智杰,李昌华,张 颉

(西安建筑科技大学 信息与控制工程学院,西安 710055)

0 引言

信息网络是最为常见的一种信息载体和形式,随着互联网的不断发展,各种应用场景下极为丰富的信息网络数据已成为日常生活中不可或缺的一部分[1]。网络数据结构可以自然地表达物体与物体间的联系,用于对数据信息进行系统的建模。如社交媒体网络中热点话题的深度挖掘[2]、移动通信网络中用户群体的分类[3]以及论文推荐系统中引文网络的划分[4]等.在这些场景中,用户、项目、分子和知识概念等现实实体被抽象为网络中的节点,而实体之间的关系被建模为它们之间的链接[3]。基于网络嵌入的表示学习研究旨在探索更好地分析复杂信息网络中节点间的联系,寻找解决信息网络背景下的各种实际问题的普适方法,有效融合网络结构与节点外部信息,形成更具区分性的网络嵌入表示[6]。网络嵌入的目的是将每个节点映射到一个低维向量空间,得到节点的低维向量表示。节点的表示向量可以应用到许多下游分析任务,如网络节点分类[7]、可视化[8]等。为获得有效的网络嵌入并在实际任务中获得更好的表现,需要充分利用图的拓扑结构及节点特征中蕴含的丰富信息。

网络数据信息特征挖掘首先需要面对的挑战是如何恰当的表示网络数据[9]。早期的网络嵌入算法基于矩阵特征向量计算,利用相近节点其特征相似的思想,通过对矩阵分解来近似网络嵌入中节点的特征向量表示,例如GraRep[10]、HOPE[11]等模型,但这种方式对于大规模的网络嵌入是非常耗时的。随机游走通过近似网络节点中心性和相似性等属性来获得网络嵌入表示,这针对大型网络图是有效的,典型的模型有DeepWalk[12]、node2vec[13]等。

图神经网络(GNN,graph neural network)[14]的研究解决了非欧氏空间结构网络数据在经过传统离散卷积的过程中无法保持平移不变形的局限性。利用实体之间的内在关系,为网络嵌入学习开辟了一条独特的道路。GNN通过聚合目标节点的邻域来更新自身新的嵌入表示,大多数GNN变体将在其聚合器中分配将和之间的非参数化权重.例如传统的图卷积神经网络(GCN,graph convolutional neural networks)[15]因其强大的迭代训练模式和聚合信息的能力,能够实现网络嵌入中聚合一阶邻域信息近似的节点特征更新方式,但是训练过程中由于共享相同的参数化权重,因此无法学习和区分目标节点及其邻居之间的信息,然而考虑网络中节点的不同贡献在现实世界数据中是非常重要的,因为并非所有的边都有相似的影响。一个自然的替代解决方案是使边权重能够训练,以具有更好的表达能力。为了在聚合中分配可学习的权重,图注意力网络(GAT,graph attention network)[16]在进行邻域聚合时,采用注意力机制为目标节点的邻域节点分配不同的权重系数,以区分邻居对目标节点的不同贡献程度,以此来聚合网络中的节点信息表征。尽管在GNN聚合器中加入注意力机制在各种任务上取得了令人满意的性能,但是存在两个局限性:首先,图卷积过程中只能聚合中心节点的一阶邻域特征,无法获得高阶邻域信息来扩大局部网络结构的感受野,这将造成网络嵌入表征局部节点划分不明确的问题,其次,通过注意力机制筛选节点造成的问题是权重分配虽然将节点特征按照重要程度进行划分,但是当下一层网络训练时会受到权重特征筛选的影响,无法将最原始的基数信息作为新一层的网络训练[17],这些基数信息包含了网络节点的属性特征和局部结构信息,由于注意力权重,这些基数信息会被过滤掉一部分,这致使网络嵌入表征学习过程会丢失掉初始信息,影响了对于网络结构的判别能力。

为了解决这些问题,本文基于图注意力机制为出发点,探索可解决的改进方案,提出了一种二阶邻域基数保留策略的图注意力神经网络模型(SNCR-GAT),综合考虑网络嵌入中的多邻域信息聚合以及模型训练中的基数信息保留问题。本文的贡献有以下3点:1)基于网络节点邻接矩阵的幂实现二阶邻域连通性,以扩大局部信息的收敛感受野来聚合二阶邻域信息;2)为了保证模型在训练阶段保留更多的基数信息,对注意力机制更新网络节点特征的聚合函数进行了一些改进;以实现基数信息的保留;3)为验证SNCR-GAT模型的网络嵌入效果,我们在3个真实的网络数据集Cora、Citeseer、Pumbed上进行了节点分类及可视化两个实际应用实验,相比较其它基准图神经网络模型具有更高的网络嵌入效果。

1 相关工作

图1 图注意力信息特征聚合方式

节点特征聚合依赖于Attention对邻域重要节点的选择,在K阶邻域生成的邻接矩阵中,对于每个节点xi,为了表现目标节点对待邻域节点选择的偏向不同,注意力机制α:RF′×F′→R是共享的,它为每个邻域节点计算一个与目标节点的相关度值,这个值决定了该邻域对中心节点的重要程度。计算方式如下:

(1)

(2)

注意力机制Attention是一种静态非线性映射,基于单层结构实现的前馈神经网络,能够高效完成任意大小样本集的训练。节点间的注意系数αij∈R2F′作为网络参数参与训练,并使用LeakReLU作为非线性激活函数,其计算方式如下:

(3)

(4)

根据公式,对于节点i新的特征向量表示聚合方式是:先将所有邻居节点特征向量hj与权重矩阵W进行线性求和,同时乘以注意力权重系数,最后将线性和进行激活做非线性转换。

2 二阶邻域基数信息保留策略

2.1 二阶邻域节点信息聚合方案

为了深度挖掘网络数据中局部结构特征,聚合更多的邻域信息来生成有效的目标节点嵌入表示,采用了如图2所示的二阶邻域信息聚合方案。

图2 二阶邻域信息聚合

二邻域信息聚合通过网络节点邻接矩阵的2次幂作为屏蔽矩阵实现2阶邻域的信息收敛,从各阶邻域提取局部结构特征,获得节点的多个中间表示。通过增加邻接矩阵的2次幂能够实现目标节点与2阶邻居的连通性,获取到2阶邻居的信息传递,通过邻接矩阵得到目标节点2跳邻域的边连接,如下所示:

在一阶邻域邻接矩阵A中,当两个点之间存在一条边时,矩阵中元素αij=1,不存在边时αij=0,这表明从点vi出发走一跳到点vj有1条路径。当对邻接矩阵A平方之后,对角线元素αii表示了当前节点的度,并且跳数加一,每一个元素αij表示的是当前目标节点vi经过两跳到达邻居节点vj的路径有多少,以节点vi→vj为例,经过两跳可到达的路径数为2,分别是v1→v4→v2和v1→v3→v2。因此可以说A2建立了以中心节点为目标的周围二阶邻域的边连接,由于节点之间是通过边进行信息传递的,这样的操作首先增加了图的连通性,保障了目标节点更新新的节点过程中聚合更多的局部邻域结构信息,对于目标节点,扩大了局部信息收敛的感受野,同时也提高了嵌入向量的有效性。

2.2 基数保留策略

为提高图注意力模型在节点嵌入中的结构判别能力,保证在不改变注意力函数保持原来的注意机制学习能力的情况下,在式(4)目标节点特征聚合方式上优化了每一层网络更新新的节点向量特征的输出方式:

(5)

(6)

SNCR-GAT模型训练过程如下:

输入:网络数据集Cora、Citeseer和Pumbed

处理:1)节点特征预处理(划分节点特征和标签信息);

2)应用稀疏矩阵存储节点特征,划分训练集、验证集和测试集;

3)构建二阶信息收敛的邻接矩阵。

训练:1)初始化权重用于输入特征的线性变化;

2)计算参数化权值向量并初始化;

3)线性变换节点特征;

4)利用公式(1)计算注意力系数;

5)Softmax归一化邻居节点特征;

6)根据基数保留策略公式(6)生成嵌入向量矩阵。

输出:节点分类预测精度。

3 实验与分析

3.1 数据集

为了验证本文所提模型SNCR-GAT的实际效果,在3个引文网络数据集Cora,Citeseer和Pumbed上进行实验.每个数据集中的节点表示一篇论文,边构成引用关系,数据集详细信息见表1。

表1 数据集信息描述

3.2 实验设置

实验是基于半监督的训练模式,主网络采用两层基于注意力机制的GCN,第一层用来学习节点的特征表示,利用12个多头注意力端来平衡模型训练,特征向量聚合后非线性激活采用LeakRelu函数.第二层网络是数据节点分类层,通过softmax函数实现。

为了能够找到适合模型性能的最好参数,在参考其它GNN模型的最优参数的同时也进行了自行调整,并且为了方便比较模型的实验效果,采取控制单一变量的原则构建实验所涉及对比的图神经网络模型,为了验证改进模型在图嵌入时的表现效果,对多个不同的标准数据集进行了训练,测试以及验证.实验中初始网络学习率为0.02,模型优化采用自适应的Adam[18]优化器,统一设置Dropout率为0.6,模型训练迭代100次,经过测试随着迭代次数的增加,结果会出现平滑现象,同时采用多头注意力机制来增加模型训练的稳定性,实验环境配置见表2。

表2 实验环境配置

3.3 节点分类应用实验

3.3.1 模型对比

实验结果将所提模型SNCR-GAT与其它基准方法生成的网络嵌入进行比较,包括通过随机游走生成节点序列学习网络嵌入的DeepWalk、学习节点连续特征表示的node2vec、基于谱分解定义卷积操作的GCN、通过Attention生成不同权重的基准模型GAT。前面两个方法都是通过中心节点沿边游走,利用后续节点出现的概率保持节点的高度相似来生成节点特征表示。而基于神经网络训练的GCN和GAT则是利用迭代训练聚合不同的邻域信息来生成网络节点嵌入。通过对比这几个典型的基本算法在节点嵌入上的效果来表现SNCR-GAT的优势。

3.3.2 结果与分析

为验证SNCR-GAT模型相较于在网络嵌入中的整体分类效果,与文献[14]模型进行了对比实验,同时为保证实验结果的公平准确性,采用了十折交叉验证[19]测试模型,将数据集分成10份,每一份都作为一次测试集来进行实验,最终结果以10次结果均值为准。10次实验结果对比如图3所示.其中横轴代表每一份测试集,纵轴表示分类精度(单位:%)。

图3 十折交叉验证节点分类精度对比

实验结果表明,本文采用的二阶邻域基数保留策略在网络嵌入上的效果的确优于基准GAT模型,分析其原因,SNCR-GAT在目标节点特征更新上能够聚合更大范围内的邻域信息,保留更多的结构属性。同时也减小了网络训练中受注意力系数筛选影响导致的部分早期基数信息的丢失,这为提高节点分类任务准确率方面的表现做出了极大的贡献.总的实验结果对比汇总在表3中。

表3 节点分类精确率对比

通过比较节点的分类精度,SNCR-GAT模型在总体上表现良好,在Cora、Citeseer、Pubmed三个数据集上的训练准确率相比较原始的GAT网络提升分别为:5.6、3.6和4.5。特别是Cora数据集上分类精度提升明显。这也表明SNCR-GAT模型在图嵌入过程中进行节点表示向量更新时的,有效的减少了信息丢失的问题,重要的是在基于二阶邻域的信息聚合方式对于当前节点更新新的向量表示提供了更广泛的信息,基数保留信息聚合策略对于重要的邻域信息选择更可靠。

3.3.3 复杂度分析

SNCR-GAT在训练阶段首先会将节点的特征向量做一个维数F→F′的空间映射,其时间复杂度为O(|V|×F×F′),|V|是网络中节点数;另外注意力机制α(·)是将2F′维的特征向量映射为实数的过程,因此会产生O(|E|×F′)的计算复杂度,其中|E|是边数。二阶邻域聚合过程是一个加权求和的过程,只涉及到一次邻接矩阵的平方运算,同时基数保留的聚合函数做了一次特征向量的加法运算,均不存在高复杂度的乘法运算。采用二阶邻域基数保留策略能够使模型在最少的epoch次数下收敛到最好的结果,综合评价,SNCR-GAT模型在复杂度上也存在明显的优势。

3.3.4 阶邻域分析

为了证明二阶邻域信息收敛的有效性,在实验中以逐步增长阶数的方式测试采用不同阶邻域对模型整体的影响,随着阶数增加,利用节点分类实验结果和算法模型训练时间进行评估,同样地,对每一阶的测试中,模型运行10次,以平均准确率为作为最终结果。实验在Cora数据集上测试,如图4所示,为方便比较,将节点分类精确度曲线与时间曲线在同一图上进行描述,横轴代表邻域阶数k,纵轴代表时间(min)。

图4 k阶邻域节点分类准确率对比

实验结果表明,随着邻域阶数的增加,实验结果没有受到太大的波动,反观模型收敛时间在增加。分析其原因,考虑二阶以上的邻域信息收敛会致使SNCR-GAT模型可能会从不太相关的邻居那里获取大量信息,从而无法学习合适的节点表示,因此影响到网络嵌入节点分类的精度,同时阶数的增加,需要计算邻接矩阵的次幂来增加图的k跳连通性以传递信息,这会提高模型初期数据特征处理的计算复杂度,训练时间会更长,不利于实验的高效进行,因此基于二阶邻域下的基数信息保留方案是更有效的,在保证模型性能的条件下,控制时间复杂度在可行的范围内是可取的。

3.4 网络可视化应用实验

对网络嵌入效果的另一种评估方式是对学习到的网络嵌入表示进行可视化展示。网络嵌入向量作为d维空间的表示,无法直观的根据向量特征进行评估模型的嵌入效果。我们以Cora数据集进行可视化展示来评估SNCR-GAT的网络嵌入效果。对比模型选用了GCN,GAT这两个同为聚合收敛的基准模型.首先将对比模型及我们的模型锁所学习到的节点嵌入向量输入到t分布随机邻域嵌入(t-SNE,t-distributed stochastic neighbor embedding)[20]模型中,t-SNE能够通过降维的方式将网络嵌入向量表示映射到指定维数空间中进行展示,为了能够在分类可视化的基础上更好的观察网络嵌入效果的层次结构划分,我们在三维空间中实现了所有模型的可视化。

图5展示了Cora数据集在不同模型学习到的网络嵌入表示的三维可视化效果。其中每一个点在三维空间中都有一个坐标,以实现可视化。每一种类别标签对应一种形状,具有相同类别标签的节点再二维空间中对应的点具有相同的形状。对比GCN、GAT和SNCR-GAT在三维可视化上的节点分类效果,可以通过明显的层次结构清楚的看到节点之间的类别划分,同时在GCN的可视化任务中,不同类别的簇形成鲜明的对比,但是簇与簇之间的簇间距很小导致一些相邻边界之间的点划入错误的类别中。比较明显的是,SNCR-GAT在可视化任务上性能更好,表现出了清晰的类别和边界距离感,错分的节点也比较少。因此,可以认为SNCR-GAT在可视化任务上获得了具有竞争性的结果。

图5 Cora数据集t-SNE下的三维可视化

4 结束语

在本文中,为解决网络嵌入节点分类不精确,网络可视化层次结构划分不清晰等问题,提出了基于二阶邻域基数信息保留策略的改进图注意力机制模型SNCR-GAT。首先,通过目标节点的二阶邻域来增大局部感受野以获得更多的网络结构信息,其次,使用保留基数信息的聚合方式来避免GAT模型训练中节点信息因权重筛选造成的原始特征丢失问题,以此来生成目标节点新的特征向量表示。最后实验结果表明,与其它基线算法相比本文所改进方案本文展现了更好的优势,这对于实际的智能应用是可行的,尤其是在节点分类中模型预测的高精确率更体现了本文方案的优越性以及稳定性。

猜你喜欢

二阶可视化节点
数据可视化设计在美妆类APP中的应用
思维可视化
分区域的树型多链的无线传感器网络路由算法
基于移动汇聚节点和分簇的改进节能路由算法
复变函数级数展开的可视化实验教学
复变函数级数展开的可视化实验教学
复变函数共形映射的可视化实验教学
复变函数共形映射的可视化实验教学
基于点权的混合K-shell关键节点识别方法
二阶矩阵、二阶行列式和向量的关系分析