Metapath-fused heterogeneous graph network for molecular property prediction
基本信息
博客贡献人
小钻风
作者
Ying Ji , Guojia Wan , Yibing Zhan , Bo Du
摘要
分子性质预测可以指导药物开发中的分子设计和优化。由于分子本质上是图结构的数据,图学习极大地促进了分子性质预测任务。然而,许多现有的基于图的方法都是针对同构图中的低阶节点交互而设计的,忽略了不同类型的原子节点或边。本文将分子建模为异质图,并利用元路径来捕获化学官能团的潜在特征。为了保持元路径所展示的化学环境,本文构造了基于元路径的连通性,并根据关系类型将异构图分解成子图。此外,本文设计了一种层次化的注意策略,在节点级和关系级水平上聚集异质信息。因此,本文方法更加自然,更适合于学习原子节点之间复杂的相互作用和有效的分子指纹表示。本文在公共分子数据集上对模型进行了评估,实验结果表明模型是有效的,与现有的方法相比具有相当的性能。
问题定义
定义1. 异构图G=(V,E)\mathcal{G}=(V,E)G=(V,E)包含一个节点类型映射函数ϕ:V→V\phi:V\rightarrow\mathcal{V}ϕ:V→V(代表节点类型集),一个关系类型映射函数φ:E→R\varphi :E\rightarrow\mathcal{R}φ:E→R(代表边类型集)。
定义2. 给定一个异构图,一个元路径p∈Mp \in \mathcal{M}p∈M被定义为这种顺序形式的路径模式:v1→φ(e1,2)v2→φ(e2,3)...→φ(en,n+1)vn+1v_1\stackrel{\varphi(e_{1,2})}\rightarrow v_2 \stackrel{\varphi(e_{2,3})}\rightarrow...\stackrel{\varphi(e_{n,n+1})}\rightarrow v_{n+1}v1→φ(e1,2)v2→φ(e2,3)...→φ(en,n+1)vn+1,揭示了沿路径的对象之间的组合关系,φ(ei,j){\varphi(e_{i,j})}φ(ei,j)表示边的关系类型。
方法
方法架构图
方法描述
第一步基于预定义的元路径模板语料库构建元路径连接;第二步根据关系类型将异构图转换为不同的同构子图。作者在每个子图上利用邻居注意力机制学习中心节点的邻居节点的注意力系数。需要注意的是,不管分子中节点类型是否相同,它们都具有相同数量的原子属性,所以它们的初始向量维度相等。接着,节点嵌入通过聚合邻居节点的信息被更新。第三步在所有子图上应用关系注意力机制学习所有类型的权重系数。然后根据关系注意力系数对隐藏嵌入进行加权求和以更新节点表示。接着,作者将节点潜在表示馈送到一个GRU层以递归地增强学习。最后,节点表示被分类或回归解码器池化为用于预测的的图级向量。
构建元路径连接
化学官能团是形成一个有机分子的基本单元,通常决定着分子的性质。作者通过构建基于元路径的连接利用这些化学结构。为了定义元路径,作者在分子数据集QM9和ZINC中使用广度优先搜索(BFS)算法收集原始元路径。如表1所示,可以从由有限的官能团组成的分子中获得有意义和不同的元路径。
实验中发现,分子数量的增加并没有导致元路径的显著增加,如图2所示。这意味着元路径数量不会爆炸,选择过程不需要太多成本。
选出的元路径语料库如表2所示。
然后,作者对所有图中每个预定义元路径模板都执行如算法1提出的图遍历算法,以获得所有的元路径实例。
每个实例都是由图的节点和关系组成的序列,该序列与对应的元路径模板匹配。对于某个元路径模板p∈Mp\in\mathcal{M}p∈M,可能在一个图中存在多个与之对应的实例。为了使同一元路径实例中的节点紧密关联,作者通过连接每个实例中的源节点和目标节点来构造元路径连通边。如图1所示,基于元路径的边(虚线边)ppp被视为连接邻居节点viv_ivi和vjv_jvj的子图级的附加边。
通过构建基于元路径的连接,元路径实例上的节点之间的关联得到了丰富和加强。官能团所包含的原子可以相互传递信息,即使它们在原始图中相距很远。此外,通过将元路径连接作为额外的关系类型,可以在消息传递过程中考虑复合路径结构。
层次化注意力
邻居注意力机制
相邻节点通常会对其中心节点产生不同的影响。在这里,作者使用一种自我注意力策略来学习相邻节点的不同权重。根据化学知识,官能团通常决定分子的性质。在一个官能团中,有不同原子类型的节点,这些节点对官能团的性质具有不同的重要性。因此,邻居注意力机制关注的目标是在每个官能团子图中的特征传递和聚合。
首先,作者根据关系类型将整个图分解成不同的关系子图。每个关系子图只包含一种关系类型。然后,作者在每个子图上利用一个独立的自注意力图卷积更新节点原子级的嵌入。自注意力运算学习邻居节点对中心节点的影响权重。将学习到的权重与节点特征向量合并(例如乘法),以产生邻域消息。具体地说,给定由化学键或元路径r∈Rbond⋃RMr\in \mathcal{R}_{bond}\bigcup\mathcal{R}_{\mathcal{M}}r∈Rbond⋃RM连接的原子对(vi,vj)(v_i,v_j)