本发明属于用户关系网络中节点分类研究领域,具体涉及一种基于网络模式和元路径的双视图范式的异构图神经网络节点分类方法。
背景技术:
1、在各个研究领域,图结构都是解决现实世界问题的强大模型,例如知识图、社会网络分析和推荐系统。高效分析和挖掘图数据中的信息对于提高下游任务的准确性至关重要,因此成为学术界和工业界迅速发展的研究领域。然而,图的非欧几里得性质给传统的机器学习模型带来了挑战。
2、节点分类旨在利用节点嵌入和图拓扑进行分类,从而为未知节点分配标签。这项任务的实现主要依赖于图嵌入技术。最近在深度学习方面取得的进展大大提高了图嵌入的功效,可以将节点表示为欧几里得空间中的低维向量。这种方法已在各种基于图的下游任务中证明了其有效性。最近,图神经网络(gnn)成为图嵌入的重要模型。gnn框架中具有代表性的方法包括图卷积网络(gcn)、图注意网络(gat)。以及它们的变体。这些基于gnn的方法能够同时考虑节点之间的结构信息和属性信息,从而提高了表达能力,改善了泛化性能。结构和属性信息的融合使gnn能够捕捉图中的复杂关系,使它们成为图分析中各种应用的多功能强大工具。而实际世界中的图往往是由不同类型的节点和边构成的异构图,其提供了丰富的语义信息和结构信息。为了有效地捕获异构信息网络(hins)或异质图中复杂的结构和语义信息,各种异构图神经网络(hgnn)模型被提出,并在异构图学习中取得了良好的性能。其中,基于元路径的方法针对每条元路径捕获其结构信息,并将不同元路径中的语义信息融合生成最终的嵌入向量。而基于网络模式的方法则不依赖于元路径,直接在异质图上进行消息传递。其利用节点和/或关系特定的转换,将不同类型的节点和/或边映射到相同的语义空间,然后进行聚合。例如han改进了gat模型,使用层次注意力机制来描述节点级和语义级结构来学习节点表示,在此基础上,magnn采用特殊的元路径实例编码器将元路径中所有节点的特征转换成向量,保存了中间节点特征来改进han来提高节点分类效果。cp-gnn利用上下文路径来捕获节点之间的高阶关系,并利用注意力机制区分不同关系的重要性,然后利用hgnn模型对图进行编码来进行节点分类。nshe通过网络模式抽样和多任务学习,保留了异构图嵌入的网络模式结构以及成对结构信息,从而节点分类效果得到提升。simple-hgn采用了一种注意机制来模拟通过不同类型关系连接的邻域的重要性,来提高节点分类效果。hgsl构建特征图(特征相似),语义图(异构元路径)和拓补图(拓扑关系)三种图来生成适合节点分类的异质图结构,可以对节点的局部信息进行捕捉。megnn采用消息传递范式,同时将图的拓扑结构、节点属性和语义关系编码为节点嵌入,以进行节点分类。但以上的方法难以处理高维节点特征,高阶信息必须通过堆叠网络层来捕获,然而,堆叠网络层会使得目前主流的异质图神经网络出现语义混淆问题。
技术实现思路
1、本发明的主要目的在于克服现有技术的缺点与不足,提供一种基于网络模式和元路径的双视图范式的异构图神经网络节点分类方法,本发明方法从基于网络结构与元路径出发,在能够学习节点的局部信息以及高阶信息,有效地避免语义混淆同时,也能够区分对待异构图中存在的多个关系类型,提高结构信息学习的能力。
2、为了达到上述目的,本发明采用以下技术方案:
3、第一方面,本发明提供了一种基于网络模式和元路径的双视图范式的异构图神经网络节点分类方法,包括以下步骤:
4、s1、收集社交网络数据,构建异构图社交网络的图序列数据,所述图序列数据包括元路径序列、节点类型序列、图邻接矩阵和节点表示特征;
5、s2、构建基于网络模式和元路径的双视图范式的异构图神经网络节点分类模型,所述异构图神经网络节点分类模型包括网络模式视图处理分支、元路径视图处理分支以及自动双视图融合机制,所述网络模式视图处理分支和元路径视图处理分支分别从多个维度对节点进行学习,来捕获异构图的结构信息和节点的语义信息,并通过自动双视图融合机制,将来自不同视图的信息统一表征到同一特征空间中,使双视图能够协同表示异构图中复杂的多类型信息,获得更全面、更准确的节点表示,从而进行节点分类;
6、s3、将异构图数据输入到网络模式视图处理分支中,将自注意力机制和graphsage的采样策略相结合的动态邻居特征聚合方法进行类型内聚合,并引入结构级注意力机制学习节点类型的重要性,进行类型间聚合,进而有层次的捕捉异构图的结构特征;
7、s4、将异构图数据输入到元路径视图处理分支中,将节点自身信息和邻居信息进行充分地语义内聚合,并设计语义级注意力机制为元路径赋予动态的权重,同时基于层注意力机制自适应的调整每层权重,进行元路径间聚合,捕捉不同层级的语义特征;
8、s5、通过设计的自动双视图融合机制对两种视图的特征表示进行有效拟合;
9、s6、利用交叉熵损失函数进行优化并更新参数,输出节点分类结果。
10、作为优选的技术方案,步骤s1中,所述异构图社交网络的图序列数据表示为图g={v,e,a,r},其中v和e分别表示节点集合和边集合,每个节点v∈v和e∈e分别关联着它们对应的映射函数和其中a和r分别代表节点类型和边类型,当|a|+|r|>2,且|a|>0and|r|>0,说明包含多种类型的节点和边。
11、作为优选的技术方案,所述步骤s3中,所述类型内聚合的步骤具体为:
12、根据网络模式,设目标节点i与m种类型的节点相连接,目标节点i的类型的邻居被定义为graphsage使用聚合函数来更新节点i的特征表示,当聚合函数使用自注意力机制时,首先需要计算注意力系数,然后利用这些系数来得到加权的邻居特征表示
13、
14、
15、其中α是可学习的权重向量,wq,wk和wv是可学习的权重矩阵,分别对应于query、key和value的线性变换;注意力系数αij表示节点j的特征对节点i的重要性;dk是键向量的维度,用于缩放点积的结果;
16、使用聚合得到的特征和节点i的类型特征以及邻居特征,通过连接并应用线性变换和非线性激活函数来更新节点i的特征;
17、
18、其中表示第k次迭代中节点i的类型嵌入;表示第(k-1)次迭代中节点i的类型嵌入;wk表示第k次迭代的权重参数;σ表示激活函数;concat为融合函数;表示对于目标节点i的类型的所有邻居节点j,其特征在第k-1步的聚合;计算了所有邻居节点的总和,除以邻居的数量获得平均值,确保了每个邻居节点对最终聚合结果的贡献是均等的。
19、作为优选的技术方案,所述步骤s3中,类型间聚合的步骤具体为:
20、设目标节点i的所有类型的嵌入为利用结构级注意力机制,将目标节点i的所有类型的嵌入融合在一起,以得到节点i的最终嵌入
21、每种节点类型的权重的计算方式为:
22、
23、其中αsc是结构级的注意力向量,是将注意力网络的输出转换为单个标量分数的参数向量,是可训练的权重向量,v是目标节点的结合,为节点i在关系的嵌入表示,||代表连接操作;wsc∈rd×d为权值矩阵和bsc∈rd×1为偏置向量都是可学习的参数,并且对所有的类型都是共享的;tanh(·)为非线性激活函数;为了使每种节点类型的重要性容易比较,通过使用softmax函数对所有类型中对他们进行规范化,作用到公式(3)得到的得到每种节点类型的权重值:
24、
25、其中:为类型对目标节点i的重要性,表示特定于关系的层规范化操作,leakyrelu表示非线性激活函数;
26、最后,所有关系表示被融合以得到最终表示
27、
28、作为优选的技术方案,步骤s4中,所述语义内聚合,具体为:
29、给定一条元路径ps∈{p1,p2,…,pm},得到基于元路径的邻居其中每条元路径均从目标节点i出发;
30、
31、其中,表示基于元路径ps的节点i通过第k层所学习到的节点表示,代表了对节点i的k-1步基于特定元路径类型邻居信息的聚合,不仅捕获了节点i的局部邻居结构,而且通过ps定义的全局路径依赖性,反映了更远的邻居关系;其中表明了节点i直接转移到节点j的概率;此转移矩阵是通过元路径ps对应的一系列邻接矩阵的乘积构建而成,每个邻接矩阵代表图中一种特定类型的边连接;β是一个权重标量,其表明了聚合过程中节点自身信息的重要性;代表基于元路径ps的节点i的输入;表示ps类型下的向量偏差;是ps类型下的映射矩阵;σ(·)为relu激活函数。
32、作为优选的技术方案,步骤s4中,所述元路径间聚合,具体为:
33、{p1,p2,…,pm}相对应的m组节点表示为通过语义级注意力学习相应的注意力权重对所有元路径的重要性进行归一化,得到元路径ps的权重计算如下:
34、
35、权重越大,对应的元路径就越重要;其中,元路径ps的重要性利用语义级注意力向量γ来学习:
36、
37、wsc是权值矩阵和bsc是偏置向量,它们对于所有元路径是共享的;最后对p组节点表示进行加权融合,得到最终的节点表示计算如下:
38、
39、作为优选的技术方案,层注意力机制是一种用于加权合并不同层输出的机制,设网络有l层,每个层的输出是一个n×d的矩阵,其中n是节点数,d是隐藏层的维度,层注意力机制公式如下:
40、w=softmax(lr(h(1)))
41、h(1)是第一层的输出,lr是线性变换,形状为n×l,应用softmax函数严重最后一个维度应用,将注意力分数转换为注意力权重,w的形状为n×l;
42、对于每个节点i,计算其在所有层中的加权特征和:
43、
44、对于给定的节点i和每个l,将w[i,l]乘以对应的hl[i,:],然后对所有的l求和,h[i,:]融合了所有层的信息,加权后的节点表示其形状为n×d。
45、作为优选的技术方案,所述步骤s5具体为:
46、首先,计算zsc对zmp的注意力得分矩阵att_sc_to_mp:
47、
48、其中wsc→mp是权重矩阵,zsc和zmp分别是两个输入的特征表示矩阵,·表示矩阵乘法操作,表示zmp的转置;
49、计算zmp对zsc的注意力得分矩阵att_mp_to_sc:
50、
51、根据计算出的注意力得分矩阵,更新zmp和zsc的表示:
52、z′sc=att_sc_to_mp·zmp
53、更新后的z′sc表示,每个样本根据zmp中的样本和响应的注意力分数进行加权平均;
54、z′mp=att_mp_to_sc·zsc
55、更新后的z′mp表示,每个样本根据zsc中的样本和响应的注意力分数进行加权平均;
56、zac=z′sc+z′mp
57、将更新后的两个表示合并得到最终的输出,这种双向注意力机制允许每个视图的表示都收到另一视图的影响,促进了特征之间的交互和信息整合。
58、作为优选的技术方案,步骤s6中,节点分类结果计算如下:
59、
60、c是将节点表示映射为标签的投影矩阵,yl是带标签的节点,yl和zl分别是节点l的标签和节点嵌入表示。
61、第二方面,本发明提供了一种基于网络模式和元路径的双视图范式的异构图神经网络节点分类系统,应用于所述的基于网络模式和元路径的双视图范式的异构图神经网络节点分类方法,包括图序列数据构建模块、分类模型构建模块、结构特征获取模块、语义特征获取模块、特征融合模块以及分类结果输出模块;
62、所述图序列数据构建模块,用于收集社交网络数据,构建异构图社交网络的图序列数据,所述图序列数据包括元路径序列、节点类型序列、图邻接矩阵和节点表示特征;
63、所述分类模型构建模块,用于构建基于网络模式和元路径的双视图范式的异构图神经网络节点分类模型,所述异构图神经网络节点分类模型包括网络模式视图处理分支、元路径视图处理分支以及自动双视图融合机制,所述网络模式视图处理分支和元路径视图处理分支分别从多个维度对节点进行学习,来捕获异构图的结构信息和节点的语义信息,并通过自动双视图融合机制,将来自不同视图的信息统一表征到同一特征空间中,使双视图能够协同表示异构图中复杂的多类型信息,获得更全面、更准确的节点表示,从而进行节点分类;
64、所述结构特征获取模块,用于将异构图数据输入到网络模式视图处理分支中,将自注意力机制和graphsage的采样策略相结合的动态邻居特征聚合方法进行类型内聚合,并引入结构级注意力机制学习节点类型的重要性,进行类型间聚合,进而有层次的捕捉异构图的结构特征;
65、所述语义特征获取模块,用于将异构图数据输入到元路径视图处理分支中,将节点自身信息和邻居信息进行充分地语义内聚合,并设计语义级注意力机制为元路径赋予动态的权重,同时基于层注意力机制自适应的调整每层权重,进行元路径间聚合,捕捉不同层级的语义特征;
66、所述特征融合模块,用于通过设计的自动双视图融合机制对两种视图的特征表示进行有效拟合;
67、所述分类结果输出模块,利用交叉熵损失函数进行优化并更新参数,输出节点分类结果。
68、本发明与现有技术相比,具有如下优点和有益效果:
69、本发明构建基于网络模式和元路径的双视图范式的异构图神经网络节点分类模型;在网络网络模式视图中,将自注意力机制和graphsage的采样策略相结合的动态邻居特征聚合方法进行类型内聚合,并引入结构级注意力机制学习节点类型的重要性,进行类型间聚合,进而有层次的捕捉异构图的结构特征;在元路径视图中,将节点自身信息和邻居信息进行充分地语义内聚合,并设计语义级注意力机制为元路径赋予动态的权重,同时提出了层注意力机制自适应的调整每层权重,进行元路径间聚合,捕捉不同层级的语义信息;通过设计的自动双视图融合机制有效拟合两种视图的特征表示,强化了各个视图的特征表达;本发明所述的方法使用基于双视图范式的异构图神经网络方法,能同时提取图结构信息和语义信息,充分利用节点之间的相互关系和结构中的丰富信息以及综合考虑多样性的语义信息,更有效地进行节点分类,具有较高的可用性。