一种多设计维度的异质图神经网络的设计空间构建方法

文档序号:29569336发布日期:2022-04-09 03:26阅读:313来源:国知局
一种多设计维度的异质图神经网络的设计空间构建方法

1.本发明涉及图处理技术领域,尤其涉及一种多设计维度的异质图神经网络的设计空间构建方法。


背景技术:

2.图形神经网络(gnn)旨在将神经网络应用于图结构数据中。与同质图神经网络不同,异质图神经网络(hgnn)需要处理结构的异质性,捕捉异质图丰富的语义。根据处理异质性的策略,异质图神经网络大致可以分为两类:基于一跳邻居聚合的异质图神经网络(类似于传统的同质图神经网络)和基于元路径邻居聚合的异质图神经网络(用于挖掘语义信息)。
3.1)基于一跳邻居聚合的异质图神经网络
4.为了处理异质性问题,这一类异质图神经网络通常包含特定类型的卷积。与同质图神经网络类似,聚合过程发生在一跳邻居中。作为最早的工作和gcn(图卷积神经网络graph convolutional network)的扩展,rgcn(基于关系的图卷积神经网络relational graph convolutional network)为不同的关系类型分配不同的权重矩阵并聚合一跳邻居。随着许多同质图神经网络变体的出现,激发了更多的异质图神经网络的出现,然后hgconv(异质图卷积神经网络heterogeneous graph convolution)基于gatconv(图注意力卷基层graph attention network convolution)对一跳邻居进行了双重聚合。最近的一项工作simplehgn(简单异质图神经网络simple heterogeneous graph network)设计了关系特定的权重矩阵和嵌入来表示每条边上的异质注意力。此外,一些早期的模型,如hgat(异质图注意力网络heterogeneous graph attention network)、hetsann(异质图结构注意力神经网络heterogeneous graph structural attention neural network)、hgt(异质图变换器heterogeneous graph transformer),通过为节点或边分配异质注意力来生成gat的异质变体模型。
5.2)基于元路径邻居聚合的异质图神经网络
6.另一类异质图神经网络是通过手工定义元路径来捕捉高阶语义信息。与前者不同的是,聚合过程发生在通过元路径连接的邻居中。作为一项开创性的工作,han首先使用节点级注意力来聚合由相同元路径连接的节点,并利用语义级注意力来融合不同元路径的信息。由于元路径子图忽略了所有的中间节点,magnn(元路径聚合的图神经网络metapath aggregated graph neural network)提出聚合元路径实例中所有节点以确保信息不会被遗漏。尽管元路径包含丰富的语义信息,但元路径的选择需要先验知识,并决定了异质图神经网络的性能。gtn(异质图变换网络graph transformer network)通过自动学习元路径以构建新图。
7.目前,异质图神经网络已成功应用于各种任务,但由于架构和应用场景的多样性,我们无法准确了解异质图神经网络不同设计维度的重要性。除此之外,对于该领域的研究人员来说,比较现有的方法和提出新方法越来越困难。主要原因是以前的评测大都是从模
型级的角度进行的,并且由于架构设计和应用场景的不同,我们无法准确了解每个组件的重要性。例如,现有的基于关系的模型(如rgcn)和基于元路径的模型(如han)之间的区别不仅在于感受野,还在于图卷积的选择。在模型级的评测下,哪个设计维度会产生更好的性能将是未知的。
8.graphgym系统地研究了一个在大量任务上的通用的神经网络设计空间,提出了三个核心组件,图神经网络设计空间,图神经网络任务空间以及设计空间评测。(1)图神经网络设计空间包含研究者在模型构建时通常会考虑的重要的架构设计方面。(2)图神经网络任务空间以及一个任务相似性度量,提供相似任务上进行架构设计的迁移指导。(3)一个设计空间评测方法,可以从大量模型与任务的组合中提炼出一些指导原则。graphgym也为我们提供了一个可以探索不同神经网络设计与任务的平台,包含图神经网络的模块化实现,标准的图神经网络评测以及可复现的大规模实验管理等。
9.然而,现有的许多工作均通过评估模型来衡量该领域的进展,是从模型层面的角度来评估模型的优劣,无法准确捕捉到模型中的哪一个组件起到关键作用,对最后的性能起到了较大的影响。所以,对于异质图神经网络来说,尚未有研究工作对异质图的架构设计进行深入分析,也没有涉及从模块层面来分析异质图神经网络的设计对性能的影响,不能为我们设计新的模型提供指导。


技术实现要素:

10.本发明针对上述技术问题,目的是广泛地探索涉及许多设计维度的异质图神经网络的设计空间,并评估不同的设计架构,提供一种多设计维度的异质图神经网络的设计空间构建方法,实现从模块级的角度进行评测,分析不同架构或设计原则对模型的作用。
11.为了实现上述目的,本发明提供如下技术方案:
12.一种多设计维度的异质图神经网络的设计空间构建方法,包括以下步骤:
13.s1、提出统一的异质图神经网络框架,包含三大组件:异质线性变换、异质图变换和异质消息传递层;
14.s2、基于统一的异质图神经网络框架,提出三个异质图神经网络模型族,并为这三个模型族设计了三个相应的子空间,即同质化模型族、关系模型族和元路径模型族,定义异质图神经网络的设计空间,设计空间包含两个设计维度:与同质图神经网络共有的设计维度和异质图神经网络特有的设计维度;
15.s3、为异质图神经网络的设计空间构建平台space4hgnn,用于模块化的异质图神经网络实现和标准化的异质图神经网络评测。
16.进一步地,步骤s1中所述的异质线性变换,将具有异质性节点的特征或表示映射到一个共享的特征空间,线性变换表示如下:
[0017][0018]
其中,hi和h
′i分别是节点vi的原始特征和映射特征,fv(vi)为节点vi的节点类型。
[0019]
进一步地,步骤s1中所述的异质图变换在聚合前为异质图数据提供了四种转换方法,分别为:关系子图抽取、元路径子图抽取、构建两种图的混合子图提取和异质图的同质化。
[0020]
进一步地,对于关系子图抽取,将关系类型和原始异质图作为输入。
[0021]
进一步地,对于元路径子图的抽取,将预定义的元路径和原始异质图作为输入。
[0022]
进一步地,步骤s1中所述的异质消息传递层定义了两种异质图神经网络的聚合方法,分别为:直接聚合和双重聚合;直接聚合的聚合过程是直接聚合相邻的邻居,并且不区分节点类型;双重聚合是应用于不同子图的微观层面和宏观层面的聚合过程,微观层面的聚合是聚合同一关系类型内的节点特征,在关系或元路径子图中生成类型特定的特征,而宏观层面的聚合是聚合不同关系间的类型特定的特征。
[0023]
进一步地,直接聚合的公式如下:
[0024][0025]
其中表示节点vi的邻居类型与节点j的类型相同。
[0026]
进一步地,步骤s2中与同质图神经网络共有的设计维度涉及12个设计维度,分为三个方面,层内、层间和训练设置;层内设计维度与同质图神经网络相同,异质图神经网络包含几个异质神经网络层,每一层有不同的设计尺寸;层间设计维度涉及消息传递、前处理和后处理层;训练设置设计维度涉及优化器、学习率和训练轮数。
[0027]
进一步地,步骤s2中异质图神经网络特有的设计维度涉及三个设计维度,质化模型族使用直接聚合方式与任何图形卷积相结合;关系模型族使用关系子图抽取和双重聚合;元路径模型族使用元路径子图抽取和双重聚合。
[0028]
进一步地,步骤s3所述的space4hgnn用pytorch和dgl使用openhgnn工具包实现。
[0029]
与现有技术相比,本发明的有益效果为:
[0030]
本发明提供的多设计维度的异质图神经网络的设计空间构建方法,提出统一的异质图神经网络框架,包含三大组件:异质线性变换,异质图变换,异质消息传递层。并基于此统一框架定义了异质图神经网络的设计空间,设计空间主要包含两个方面:与同质图神经网络共有的设计维度,异质图神经网络特有的设计维度。本发明弥补了之前的工作只从模型级评测异质图神经网络的缺点,为研究者提供了模块级评测的视角,进一步可以剖析哪一些设计维度在模型的性能中起到重要作用。我们还为异质图神经网络的设计空间构建了平台space4hgnn,并基于此平台提炼出设计模型的原则性指导,提供了标准的评测和模块化的异质图神经网络实现。该平台为研究者提供了模块级的评测,可以提供给用户简易的接口,帮助他们评测不同设计维度的影响,例如高级的架构设计和设计原则等,供用户进行广泛地研究设计维度。
附图说明
[0031]
为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
[0032]
图1为本发明实施例提供的异质线性变换示意图。
[0033]
图2为本发明实施例提供的异质图变换示意图,左侧图为由四个邻接矩阵组成的原始图,右边四个分别为异质图变换的四种方法示意图。
[0034]
图3为本发明实施例提供的异质消息传递层的直接聚合过程示意图。
[0035]
图4为本发明实施例提供的异质消息传递层的双重聚合过程示意图,带箭头的细实线表示应用于不同子图的微观层面的聚合过程,带箭头的粗实线表示宏观层面的聚合过程。
[0036]
图5为本发明实施例提供的设计空间。实线框内表示异质图神经网络独特的设计维度,虚线框内表示与graphgym共有的设计维度。
具体实施方式
[0037]
为了使本领域的技术人员更好地理解本发明的技术方案,下面将结合附图和实施例对本发明作进一步的详细介绍。
[0038]
首先,介绍关于图神经网络和异质图的一些定义。
[0039]
定义1(消息传递gnn)。消息传递gnn为每个节点v在经过第l个消息传递层的转换后学习一个表示向量d
l
表示第l个消息传递层的输出维度。消息传递范式为每一层定义了如下的节点级和边级计算方式:
[0040]
边级:
[0041]
其中,表示节点vi的邻居节点,φ是一个定义在每条边上的消息函数,其通过聚合其入射节点的特征生成一个信息。e
ij
代表从节点vj到vi的一条边:
[0042]
节点级:
[0043]
其中表示节点vi的邻居节点,ψ是一个定义在每个节点上的更新函数,以及使用聚合函数ρ聚合其传入的消息来更新节点的表示。
[0044]
示例:graphsage可以被形式化表示为一个消息传递的gnn,其中消息函数为更新函数为
[0045]
定义2(异质图)。一个异质图,表示为包括一个节点集和一个边集ε。异质图还与节点类型的映射函数和一个边类型的映射函数有关,其中和表示节点类型和边类型集合。每一个节点都有一个节点类型fv(vi)∈tv,同样,每一条连接节点i和节点j的边e
ij
∈ε满足当或时,它就是一张异质图,否则就是同质图。
[0046]
定义3(关系子图)。一个异质图也可以用一组邻接矩阵来表示,其中代表边类型的数目。是邻接矩阵,其中,当存在一条第k种类型,从节点vi到节点vj的边时,ak[i,j]是非零的。ns和n
t
是分别对应边类型k的源节点和目标节点的数量。第k种边类型的关系子图就是邻接矩阵为ak的子图。
[0047]
定义4(元路径)。元路径被定义为以的形式描述两个节点
v1和v
l+1
之间的复合关系的路径。其中代表第1种关系类型的元路径,代表关系组合运算符。
[0048]
定义5(元路径子图)。给定一个元路径根据关系可以通过邻接矩阵的乘法得到邻接矩阵
[0049][0050]
元路径的概念包括多跳连接,元路径子图是多个关系子图的矩阵乘法。所以关系子图是元路径子图的一个特例,它只由一个关系子图组成。当元路径的开始节点类型和结束节点类型相同时,元路径子图是一个同质图,否则就是一个二分图。
[0051]
本发明的多设计维度的异质图神经网络的设计空间构建方法,包括以下步骤:
[0052]
一、统一的异质图神经网络框架
[0053]
通过分析底层图数据和现有异质图神经网络的聚合过程,我们提出了一个统一的异质图神经网络框架,它由以下三个主要部分组成:
[0054]
异质性线性变换:将具有异质性的特征或表示映射到一个共享的特征空间。
[0055]
异质图转换:在聚合前为异质图数据提供了四种转换方法。
[0056]
异质消息传递层:定义了两种适合大多数异质图神经网络的聚合方法。
[0057]
1、异质性线性变换
[0058]
由于节点的异质性,不同类型的节点具有不同的语义特征甚至不同的维度大小。因此,对于每一种类型的节点(例如,节点vi的节点类型为fv(vi)),我们设计了一个特定类型的线性变换,将不同类型节点的特征(或表示)映射到同一特征空间。线性变换表示如下:
[0059][0060]
其中hi和h
′i分别是节点vi的原始特征和映射特征。
[0061]
如图1所示,对于有特征的节点,我们用特定类型的线性变换来映射节点特征。对于没有特征或充满噪音的节点,可以被分配为可训练向量的嵌入,这等价于分配它们一个与线性变换组合的独热编码向量。
[0062]
2、异质图变换
[0063]
基于一跳邻居的聚合方式通常在原图上应用图卷积层,但基于元路径邻居的聚合通常在构建的元路径子图上进行。如定义5所述,关系子图是特殊的元路径子图(注意,原图是关系子图的一个特例)。为了统一两者,我们提出了一个组件来抽象出感受野的选择过程,它决定了哪类节点(一跳邻居或元路径邻居)被聚合起来。
[0064]
如图2所示,我们为图的构建指定了一个单独的阶段,称为异质图变换,并将其分为以下四种方法:(i)关系子图抽取,(ii)元路径子图抽取,(iii)构建两种图的混合子图提取,(iv)异质图的同质化(但仍保留节点和边类型映射的fv和fe)。
[0065]
对于关系或元路径子图的抽取,我们只需输入一些关系类型或预定义的元路径和原始异质图。异质图变换将解藕感受野的选择过程和下面介绍的消息传递过程。
[0066]
3、异质消息传递层
[0067]
基于传统的异质图神经网络分类方法没有从实现的角度找到足够的共性,导致在定义设计空间和寻找新模型方面有困难。因此,我们转而提出按模型的聚合方法进行分类。
[0068]
1)直接聚合:带有标准化注意系数的线表示聚合过程。该聚合过程是直接聚合相
邻的邻居,并且不区分节点类型。
[0069]
异质图神经网络模型的基础基线模型是gcn、gat以及其他用于同质图的gnn。由于设置不当,简单的同质gnn(如gcn和gat)被低估了。如表一所示,这个系列的模型都使用直接聚合和单一的图卷积层。
[0070]
如图3所示,下面我们将在消息传递的gnn表述下进行解释,并以gat为例。
[0071]
消息函数为第(l+1)层节点i的特征定义为:
[0072][0073]
其中,w是可训练的权重矩阵,是节点vi的邻居,α
ij
是节点vi和vj之间的标准化后的注意力系数,定义为:
[0074][0075]
节点vi与其邻居的关联性由注意力系数e
ij
表示。
[0076]
改变e
ij
的形式可以得到gat的其他异质变体,我们在表1中进行了总结。
[0077]
表1注意力机制的直接聚合
[0078][0079]
2)双重聚合:我们定义了双重聚合的两个部分:微观层面(类型内)和宏观层面(类型间)聚合。
[0080]
如图4所示,微观层面的聚合是聚合同一关系类型内的节点特征,在关系/元路径子图中生成类型特定的特征,而宏观层面的聚合是聚合不同关系间的类型特定的特征。当多个关系具有相同的目标节点类型时,它们的类型特定的特征被宏观层面的聚合所聚合。
[0081]
一般来说,每个关系/元路径子图都利用相同的微观层面的聚合(例如,来自gcn或gat的图卷积层)。事实上,我们可以在我们的框架中为不同的子图应用不同的同质图卷积操作。与直接聚合中的异质图卷积相比,多个同质图卷积结合宏观层面的聚合是另一种形式的异质图卷积。直接聚合的异质图卷积与双重聚合的异质图卷积之间有一个小的区别。我们直接聚合的公式,并定义如下:
[0082]
[0083]
其中表示节点vi的邻居类型与节点j的类型相同。
[0084]
示例:han和hgconv。在han中,节点级注意力相当于gatconv的微观层面的聚合,而语义级注意力是宏观层面的注意力聚合,这与hgconv相同。hgconv使用关系子图,即聚合一跳邻居,但han提取多个元路径子图,即聚合多跳邻居。根据上述的异质图变换,构建的图可以是元路径子图和关系子图的混合物。因此,双重聚合也可以在混合子图中操作,以聚合不同跳的邻居。
[0085]
二、异质图神经网络的设计空间
[0086]
如图5所示,我们定义了异质图神经网络的设计空间,并从两个方面进行了描述:graphgym中共有的设计和从异质图神经网络中提炼的独特设计。尽管graphgym为设计性能良好的图神经网络提炼出相关准则,但我们仍然保留了相关的设计维度,以弄清它们在异质图神经网络中是否仍然有效。然而,图神经网络中使用的设计维度并不足以定义异质图神经网络的设计空间,异质图神经网络中还有一些独特的维度。
[0087]
根据上面提出的统一框架,我们提出了三个异质图神经网络模型族,它们可以复现大多数原始的异质图神经网络模型,并通过在独特的设计维度上的使用不同选择扩展出新的变体。为了突出它们在异质图神经网络中的作用,我们为这三个模型族设计了三个相应的子空间,即同质化模型族、关系模型族和元路径模型族。此外,我们的设计空间是作为一个平台来构建的,为研究人员提供模块化的异质图神经网络实现,该平台将会在最后介绍。
[0088]
1、与graphgym共有的设计维度
[0089]
与graphgym共有的设计涉及12个设计维度,分为三个方面,层内、层间和训练设置。表2显示了这些维度和相应的选择。
[0090]
表2与graphgym共有的设计维度
[0091][0092]
1)层内设计:与同质图神经网络相同,异质图神经网络包含几个异质神经网络层,每一层可以有不同的设计尺寸。
[0093]
如图2所示,所采用的异质图神经网络层有一个聚合层,涉及到后面讨论的独特设计维度,然后是一连串的模块。(1)批标准化bn(
·
),(2)暂退法drop(
·
),(3)非线性激活函
数act(
·
),(4)l2标准化l2-norm(
·
)。
[0094]
和后处理等层,这些是必不可少的设计维度。异质图神经网络层迭代变换特征,导致梯度消失、过拟合和过平滑的问题,而最后一个问题被视为堆叠更深的神经网络层的障碍。我们研究了两种跳跃连接的选择:skip-sum和skip-cat,以stack作为基本对比。
[0095]
3)训练设置:作为深度学习的一部分,我们也要分析训练设置的设计维度,如优化器、学习率和训练轮数。此外,这里还包括涉及可训练参数的隐藏维度。
[0096]
2、异质图神经网络的独特设计
[0097]
通过上述统一的框架,我们试图将模块化组件转化为一至图神经网络中独特的设计维度。一系列神经网络架构的集合,通常会共享一些高层次的架构结构或设计原则(例如,残差连接),可以被抽象为一个模型族。借此,我们在异质图神经网络中提炼出三个模型族。如表3所示,三个模型族涉及三个设计维度及其候选选择。
[0098]
表3异质图神经网络的独特设计
[0099][0100]
1)同质化模型族:同质化模型族使用直接聚合方式与任何图形卷积相结合。这里我们使用同质化一词,因为该模型族下都是异质图同质化之后应用直接聚合的。同质图神经网络上述提到的gat的异质变体都属于这个模型族。在异质图神经网络的论文中,同质异质图神经网络通常被评估为基本基准。通过忽略节点/边的异质性,将原图送入同质图神经网络,从直观上看是合理的。虽然它损失了类型信息,但已经证实简单的同质图神经网络可以超过一些现有的异质图神经网络,这意味着它们是不可忽略的,应该被看作是一个模型族。我们从各自的原始模型中选择了四个图卷积,即graphconv、gatconv、sageconv-mean和ginconv作为分析对象。
[0101]
2)关系模型族:该模型系列应用了关系子图抽取和双重聚合。第一个异质图神经网络模型rgcn是关系模型家族中的一个典型例子,其双重聚合包括微观层面的sageconv-mean聚合和宏观层面的sum聚合。hgconv是gatconv和attention的结合。我们可以通过列举微观层面和宏观层面聚集的组合得到其他设计。在我们的实验中,我们将微观层面的聚合设定为与同质化模型族中的图卷积相同,而宏观层面的聚合则在mean、max、sum和attention中选择。
[0102]
3)元路径模型族:该模型族应用了元路径子图抽取和双重聚合。实例han与关系模型族中的hgconv具有相同的双聚合,但子图抽取方式不同。微观层面和宏观层面聚合的候选者与关系模型族中的候选者相同。
[0103]
3、space4hgnn:异质图神经网络中的设计空间平台
[0104]
本发明还开发了一个探索异质图神经网络设计的新型平台space4hgnn,space4hgnn是用pytorch和dgl使用openhgnn工具包实现的,可以大大促进异质图神经网络的研究领域。此外,它还为异质图神经网络提供了一个标准化的评估流程。space4hgnn的优点如下:
[0105]
1)模块化的异质图神经网络实现:该设计空间很容易扩展,允许未来的开发者插入更多的设计维度选择(例如,一个新的图卷积层或一个新的宏观聚合)。此外,很容易向space4hgnn导入新的设计维度,如链路预测中的评分函数。
[0106]
2)标准化的异质图神经网络评测:space4hgnn为不同的架构设计和异质图神经网络模型提供了一个标准化的评测流程,我们可以在不同的任务中轻松评测不同的数据集。
[0107]
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,但这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1