一种基于多视图对比学习的多层网络节点表示学习方法

文档序号:33721756发布日期:2023-04-05 22:40阅读:205来源:国知局
一种基于多视图对比学习的多层网络节点表示学习方法

本发明属于图神经网络和对比学习的。在多层网络节点表示学习中,通过最大化互信息的对比学习方法,学习网络中节点的低阶表示形式,从而将节点的表示运用到下游的分类及聚类等任务中。


背景技术:

1、许多现实世界的数据集都是用图结构表示的,其中对象及其之间的关系用节点和节点间的边表示。传统的机器学习模型难以处理这样的非欧几里得数据。随着神经网络有关模型的快速发展,图神经网络在处理这类图网络数据方面显示出了强大的潜力。这些模型通过聚合节点自身以及邻居的信息来学习节点或图的低维表示,如利用专门设计的神经网络层对图网络数据进行处理,利用注意力机制或随机采样直接在图域内进行图卷积运算等。

2、现有的大多数图神经网络需要利用已经标记好的数据作为参照,进行半监督训练,但标记图是一项具有挑战性和耗时的任务。为了解决这一问题,学者们提出了基于重建、随机游走和对比学习的无监督学习方法。具体来说,基于重建的方法采用编码器-解码器模型来重构节点之间的边,并学习节点的相关信息。基于随机游走的模型通过将某些不同规则生成的节点序列提供给模型来学习节点表示。但这两类模型只考虑由邻接矩阵组成的邻居信息,忽略了图中包含的全局结构和高层信息以及节点自身包含的属性。基于对比学习的模型通过最大化节点和图表示之间的局部-全局互信息来学习节点表示,这类模型同时考虑了图的局部和全局特征,具有更加优异的表现。但是值得注意的是,这些方法只适用于同构图的学习。

3、对于异构图的无监督学习,学者们将同构图算法进行了相应的改造和扩展,例如采用层级间的跳跃等方式实现异构图上随机游走算法,或者将互信息最大化的对比学习和注意机制相结合的方法应用于异构图的无监督节点表示学习。然而,这些方法在学习节点表示时,只是利用了节点的邻接矩阵或低阶邻居信息。近年来,在计算机视觉领域,多视图对比学习发挥着不可或缺的作用,它利用一个图像的多个视图来学习其表示,在图像分类任务中取得了优异的结果。这样一种多视图学习模型可以迁移到图网络的学习模型中,通过多个不同视图的信息提取,模型不单单可以学习到邻接矩阵中的信息,还可以学习到邻接矩阵中不包含的高层信息,因此将多视图学习应用于图网络是一个有意义的任务。

4、综上所述,现有的技术存在这以下问题:1.部分模型需要利用已标注好的标签信息进行有监督的学习;2.大部分模型只适用于同构图的学习中,在异构图中不能取得较好的结果;3.现有模型只利用了节点的邻接矩阵或低阶邻居信息,未能很好地提取图结构的全局信息。


技术实现思路

1、针对现有研究中的局限性,本文将多视图学习运用于多层网络节点表示学习中提出了一种基于多视图对比学习的多层网络节点表示学习方法。该方法将多视图对比学习扩展到多层网络图中并且可以提取出更好的全局结构层间信息。具体来说,我们首先利用图的不同结构视图之间的互信息最大化,让模型从高阶邻居中聚合特征,学习全局信息。其次,为了使多层网络中的每一层都包含多层网络的全局结构信息,我们将模型分为了两部分:分层图神经网络以及层间融合图神经网络。分层图神经网络学习节点在每层中特有的表示,层间融合网络将多层图看作一个整体学习每个节点的整体表示,我们将得到的整体表示加入到分层表示中。通过最大化多个视图中的节点表示和图表示之间的互信息,模型可以学习到丰富的局部和全局信息,提高节点表示能力。通过最大化来自不同视图的局部-全局互信息,我们的模型实现了无监督的节点表示学习,同时让节点包含了一定的图级别的全局结构信息。在得到最终的节点表示后,我们可以将表示结果应用于后续的各种任务,如节点聚类和节点分类。具体实现步骤如下所示:

2、步骤1,数据预处理,将收集到的异构图数据集基于多个对称的元路径进行转换,将异构图转变为基于元路径的多层图网络;

3、步骤2,基于多层图网络的邻接矩阵和属性矩阵生成初始图网络的扩散视图矩阵和负样本;

4、步骤3,构建分层图神经网络,使用常用的图卷积网络对多层图网络和扩散图进行卷积处理,得到各层独立的节点表示结果;

5、步骤4,构建层间融合图神经网络,层间融合图神经网络旨在通过考虑层间交互信息来学习多层图网络中节点的全局整体表示,得到当前层的最终节点表示;

6、步骤5,对步骤3和步骤4组成的整体模型进行训练;

7、步骤6,训练完成后,将多层图网络邻接矩阵以及属性矩阵输入训练好的网络模型中得到每层的最终节点表示,最终节点表示结果可以用于下游的节点分类或者聚类任务。

8、进一步的,步骤2中使用扩散算法personalized pagerank(ppr)生成扩散图矩阵,实现方式如下;

9、对于当前层的邻接矩阵和对角线度数矩阵ppr扩散的公式为:α是位于0-1之间的可设置的超参数,其中n表示多层图网络中节点的个数,对角度数矩阵d(l)的对角线元素dii表示与节点i相连的其它节点个数,即节点i的度数,非对角线元素dij的值为0,其中i,j表示节点,i≠j。

10、进一步的,步骤2中生成负样本的实现方式如下;

11、令邻接矩阵不变,然后随机交换节点属性,通过这种方法,相当于交换了节点间的边,将通过该方法构造出来的新的属性矩阵视为当前多层图网络的反例,即负样本。

12、进一步的,步骤3的具体实现方式如下;

13、图卷积网络gcn的定义为和其中表示图的对称归一化邻接矩阵,in是n维单位矩阵,是的对角度数矩阵;是通过步骤2得到的扩散图矩阵,是图的初始节点属性矩阵,w是待训练的网络模型参数,σ(·)表示激活函数;通过分层图神经网络的处理后,对于多层图网络的每一层,可以得到该层的初始图以及扩散图的正反例节点表示hs(l),其中,d表示节点表示的维数,hs(l)表示初始图第l层的正例节点表示,表示扩散图第l层的正例节点表示,表示节点的反例表示,反例的节点表示只需要将x更换为即可,初始图即为多层图网络。

14、进一步的,步骤4的具体实现方式如下;

15、步骤4.1,使用gcn图卷积网络学习步骤1中得到的多层图网络中每一层的正例表示以及反例表示然后通过注意力机制将各层结果进行加权求和得到节点的整体表示,注意力机制考虑各层对整体的影响程度,影响大的会赋予更大的权重,从而更好地获取节点的全局表示,具体公式如下:

16、

17、其中k表示多层图网络的层数,m表示注意力机制中的注意力头个数,即考虑不同的注意力参数求和得到最终表示,表示第l层在整体表示中所占权重,q(l)是待训练参数,表示的第i行数据,即节点i通过gcn网络得到的低维表示;

18、该步骤得到的结果为表示初始图以及扩散图的全局正例节点表示,分别表示初始图以及扩散图的全局反例表示;

19、步骤4.2,为了使多层图网络的最终节点表示结果既包含特定层信息,又包含层间融合信息,将步骤3和步骤4.1中得到的信息聚合起来表示多层网络中每一层的整体嵌入;具体来说,在步骤3得到的各层节点表示上加上一定比例的通过步骤4.1得到的节点全局表示作为当前层的最终节点表示:

20、

21、

22、

23、

24、η是设定好的层间融合节点表示权重的参数,h(l)和表示第l层的最终节点正例表示,和表示第l层的最终反例表示。

25、进一步的,步骤5的具体实现方式如下;

26、步骤5.1,对比学习流程,在得到了多层图网络各层的最终节点表示后,利用一个函数可以得到网络初始图以及扩散图的图级表示和

27、

28、

29、表示h(l),的第i行数据,即第i个节点的表示;

30、对于网络的每一层,为了学习多视图中丰富的节点和图级表示,通过计算节点的表示h(l),和图级表示之间的分值来判别节点是属于正例还是反例,并通过对比一个视图的节点表示和另一个视图的图表示,从而最大化两个视图之间的互信息;

31、步骤5.2,将整体模型的损失定义为标准二元交叉熵损失,具体的每层损失定义如下;

32、

33、上述的n和m是相等的,n为正例数量,m为反例数量,都表示节点个数,其中,d表示一个比较辨别器,它是一个双线性层wd是待训练参数;

34、得到了每层的损失后,将各层损失相加即可得到总体模型的损失,用于模型参数的反馈修正,模型损失定义为:

35、

36、‖θ‖2是网络参数的l2正则化,以预防网络模型的过拟合问题。

37、本发明的优点:引入互信息最大化和多视图对比学习来解决无监督多层网络节点表示问题。利用多视图学习的方法,通过比较一个视图的节点表示和另一个视图的图表示来最大化两个视图之间的互信息(邻接矩阵和扩散矩阵)。同时,利用多层信息融合,通过同时建模层内和层间的全局信息来学习更好的多层网络节点表示。模型的最终节点表示结果既包含了层间的特定信息,也包含了层间的全局信息。这样的一种基于多视图对比学习的多层网络节点表示学习方法可以提高多层图网络节点分类任务以及节点聚类任务的准确率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1