一种基于clique匹配和分层池化的图分类方法
文献发布时间:2023-06-19 10:08:35
技术领域
本发明涉及复杂网络分析领域,具体涉及一种基于clique匹配和分层池化的图分类方法。
背景技术
在研究社交网络等可以用图描述的数据时,一项基本任务是对图进行分类。目前,在图分类任务上取得最好效果的是图神经网络。在将节点的属性向量化表示后,可以通过图神经网络学习节点的表示向量,但是由于不同图中的节点数目不同,造成不同图的特征矩阵维度不同,难以直接用神经网络作为分类器对图进行分类。现有的方法将所有节点的特征求均值或者选取固定数目的特征作为整个图的特征表示,以保证输入分类器的向量维度统一,但是这些方法必然会造成某些节点特征的丢失,也未能充分考虑图的拓扑结构在图分类任务中的重要性。
现有技术的图分类方法,都基于整体池化的方式得到图表示向量,没有考虑分层池化对图中信息保留的重要性;同时,以上方法属于传统的只考虑低阶图结构的方法,没有考虑具有稠密边的子图在学习高阶图结构和生成超节点进行池化操作中的重要性。
发明内容
本发明的目的在于提供一种基于clique匹配和分层池化的图分类方法,以解决上述问题。
为实现上述目的,本发明采用以下技术方案:
一种基于clique匹配和分层池化的图分类方法,包括以下步骤:
步骤1,基于图卷积神经网络的节点表示学习:对于目标图G,使用邻接矩阵A∈{0,1}
步骤2,基于clique匹配的池化方法:定义稠密连接的子结构clique,C,其中C包含M个节点,且节点之间两两相连;枚举出图中所有节点数目为M的子图{G
步骤3,中间图表示向量生成:通过新生成的中间图G
步骤4,基于分层池化的图分类:重复步骤1,步骤2和步骤3,通过分层池化的方式减小图的规模,将所有中间图{G
进一步的,步骤1中,如果图中节点对(v
进一步的,步骤2基于clique匹配的池化方法中,定义clique:clique指节点之间两两相连的图,假设用于匹配的clique中有M个节点。
进一步的,步骤2中,子图枚举:枚举出图中所有节点数目为M的子图{G
进一步的,步骤2中,clique匹配:如果子图集合中一个子图G
进一步的,步骤2中,超节点表示向量:超节点v
进一步的,步骤2中,中间图的生成:若原始图中两个节点v
进一步的,步骤3中间图表示向量生成中,不同图的节点数目不同,使用了平均池化,求和池化和最大池化相结合的方式学习中间图的表示向量:
其中,N为节点的个数,X
进一步的,步骤4基于分层池化的图分类方法中,假设一共有L个池化模块,在每个模块l内,分别按照步骤1,步骤2和步骤3进行节点表示学习,池化操作,中间图表示向量学习;最后将每一层得到的中间图表示向量之和与所有中间图表示向量的拼接结果进行拼接得到目标图表示向量:
其中L表示池化层的数目,CONCAT(·)为拼接函数,‖表示拼接操作,最后将图的表示向量z输入全连接层进行分类预测。
与现有技术相比,本发明有以下技术效果:
相较传统的基于整体池化的图分类方法,本发明通过分层池化的方式在减少特征信息损失的同时得到高质量的图表示向量;
相较直接通过图卷积神经网络学习低阶图拓扑结构的方法,本发明在图中进行clique匹配考虑高阶图结构,通过学习高阶结构信息,能够更好地将图的拓扑结构信息融入图的表示向量中,提升分类效果。
附图说明
图1是本发明基于clique匹配和分层池化的图分类方法框图。
图2是于clique匹配和分层池化的图分类的整体流程图。
图3是基于clique匹配的图池化方法流程图。
图4是基于中间图表示学习图表示向量的流程图。
图5是基于clique匹配的超节点生成方法框图。
具体实施方式
以下结合附图及实施例对本发明的实施方式进行详细说明。需要说明的是,此处描述的实施例只用以解释本发明,并不用于限定本发明。
本发明的具体实施过程包括节点表示学习和基于clique匹配的池化过程以及基于分层池化的图分类过程。图1是本发明基于clique匹配和分层池化的图分类方法框图。本发明的整体流程图如图2所示。
1.节点表示学习和基于clique匹配的池化过程
本发明用到的一个图实例包含了11个节点(n=11),每个节点的特征信息为一个维度为5的向量,特征矩阵
其中A表示图的邻接矩阵,H
在基于clique匹配的池化过程中,首先定义稠密连接的子结构clique,然后将目标图中每个与clique同构的子图分别聚合为超节点进行池化操作,最后原图G经过池化生成中间图G
(1)定义clique:clique指节点之间两两相连的图。假设用于匹配的clique中有3个节点,实际上是一个三角形的子结构;
(2)子图枚举:枚举出图中所有节点数目为3的子图{G
(3)clique匹配:如果子图集合中一个子图G
(4)超节点表示向量:超节点v
(5)中间图的生成:若原始图中两个节点v
以上基于clique匹配的池化操作以及中间图的生成过程如图5所示。
在完成中间图构建之后,通过新生成的中间图G
其中,N为节点的个数,X
2.基于分层池化的图分类过程
对目标图G,其总共经过2次上述的节点表示学习以及池化操作后,共生成2个中间图,所有的中间图对应的表示向量为{z
其中CONCAT(·)为拼接函数,‖表示拼接操作。通过以上将每个中间图的表示向量聚合的方式,得到目标图的表示向量z,最后通过全连接神经网络进行分类预测,返回分类结果。以上由中间图的表示向量生成目标图的表示向量的流程图如图4所示。
- 一种基于clique匹配和分层池化的图分类方法
- 一种基于图网络池化的新闻文本分类方法