本发明涉及新型图神经网络领域,更具体地,涉及一种增强图神经网络点边交互的方法。
背景技术:
准确预测分子的性质一直是制药界持续关注的话题,分子性质预测的主要目标是去除下游开发过程中更容易产生性质负担的化合物,从而达到节约大量资源和时间的目的。
预测分子的性质的相关研究方法经历了传统方法和机器学习方法两个阶段。传统方法主要是基于特征工程进行的定量结构-性质关系(qspr),但传统方法限制了模型在现有化学知识边缘之外学习的能力。机器学习特别是深度学习方法显示出了与传统方法竞争甚至超越传统方法的巨大潜力。与以往基于描述符的方法相比,基于深度学习的模型可以将相对无损的原始分子格式(smiles字符串和拓扑图)作为输入,然后以端到端的方式训练模型来预测目标端点。这些模型能够为分子描绘出更加全面的信息。
近年来,基于图卷积神经网络来学习分子的化学结构方法被提出。2015年,duvenaud提出一种神经指纹方法作为分子指纹的替代方法,也是最早将图卷积方法用于化学表征的研究之一。2017年,gilmer总结了一种被称为消息传递神经网络(mpnns)的通用架构,该架构在量子化学性质预测方面表现出了优越的性能。然而,mpnn及其变体主要关注保留有效顶点(原子)嵌入,而忽略了边缘(键)所携带的信息,这些信息对许多下游任务(如节点或边缘嵌入和图表示)是有利的。而后yang在2019年提出的dmpnn通过使用与有向边(键)相关的消息而不是与顶点相关的消息来缓解这个问题。其主要贡献在于,它既能利用键属性,又能避免消息传递轨迹中不必要的循环,从而获得无冗余的信息。与以往的mpnns相比,这种基于键的消息传递过程表现出了优异的性能。但dmpnn忽略了从化学键传递回原子的信息,使得dmpnn仅仅能捕捉原子和化学键的互补信息。
因此要准确预测分子的性质难点在于不仅要学习分子结构中节点的特征,边的特征,还要学习节点与边之间的信息。而现有的预测方法存在难以捕捉边的信息,忽略化学键与原子的信息可传递性特点等问题。
技术实现要素:
本发明旨在克服上述现有技术的至少一种缺陷,提供一种增强图神经网络点边交互的方法,用于解决现有的预测方法中忽略有向图中边与点之间可传递的缺陷。
本发明提供的技术方案为:
一种增强图神经网络点边交互的方法,步骤包括:
获取应用对象的有向图g,提取所述有向图g的图结构数据,所述有向图包括若干个节点v和若干条边e,所述节点v为所述应用对象中的任意一个元素,所述边e为所述应用对象中任意相连的两个元素之间的关联关系;
根据所述图结构数据获取所有
第一步首先获取节点和边在的第0层的隐藏表示,作为迭代计算的初始量。
根据所有
根据所有所述
应用对象的有向图g包括若干个节点和若干条边,应用对象可为分子结构、社交网络、论文引用网络等等非结构化的数据和关系,其中,利用每个任意节点v与其相邻节点w的传入边的隐藏表示,即
根据所有所述
在本发明提供的训练方法中,由于
利用所有所述
所述k≥1,k≥k。
进一步,根据所有所述
根据关系式
在得到节点中间消息向量
进一步,根据所有所述
如上述所示,由于
进一步,根据所有所述
根据关系式
该更新的过程为多层感知的更新方式,将节点和边缘特征合并到一个多层感知中,从而使不同维特征向量中的信息可以相互作用。
进一步,根据所有
根据关系式
对于边缘隐藏状态的更新,
其中,第0层边ev,w的隐藏表示
进一步,所述
进一步,在得到所述有向图g的最终节点表示形式h(v)后,利用读出操作得到所述有向图g的固定特征向量,该读出操作为:利用关系式z=∑gru(h(v))得到所述有向图g的固定特征向量,所述z为所述固定特征向量,所述gru为门控式递归单元,所述固定特征向量为所述应用对象的所有特征的集合。
进一步,在得到所述有向图g的最终节点表示形式h(v)后,建立所述有向图g的特性预测函数
与现有技术相比,本发明的有益效果为:
(1)本发明在神经网络训练过程中均更新了节点和边的嵌入,增强了节点和边缘之间的交互,关注了节点与边缘之间信息的可传递性,使预测结果更加准确;
(2)在中间消息向量生成期间,本发明引入了一个新的消息增强步骤来放大传入的信息,来丰富消息生成过程。
附图说明
图1为本发明实施例1中图神经网络的网络结构说明图。
图2为本发明实施例1中三种图神经网络在化学数据集上的基准结果对比图。
图3为本发明实施例1中三种图神经网络的原子特征可视图。
具体实施方式
本发明附图仅用于示例性说明,不能理解为对本发明的限制。为了更好说明以下实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
实施例1
本实施例提供一种增强图神经网络点边交互的方法,如图1所示,所述图神经网络包括输入层、特征提取层、信息交互层以及输出层,其中,本实施例所提供的方法应用于整个所述神经网络,具体步骤如下:
s1:所述输入层获取应用对象的有向图g(v,e),所述特征提取层提取所述图g的图结构数据,其中,所述v为所述有向图g的所有节点,在所有节点中,任意节点表示为v,任意节点v的任意相邻节点表示为w;所述e为所述有向图g的所有边,在所有边中,任意边表示为e,所述节点v为所述应用对象中的任意一个元素,所述边e为所述应用对象中任意相连的两个元素之间的关联关系;所述应用对象可包括任何非结构化的数据和关系如分子结构、社交网络、论文引用网络等等;
其中,图结构数据包括了所有任意节点的原始特性xv,以及所有任意边的原始特征
s2:所述信息交互层根据图结构数据的原始特征xv获取所有
s3:所述信息交互层根据所有
s4:所述信息交互层根据步骤s3创建的所有
s5:所述信息交互层根据步骤s4更新得到的
s6:所述信息交互层根据步骤s2得到的所有
s7:所述信息交互层利用步骤s6得到的所有
作为优选方案,如图1所示,步骤s3的具体执行过程为:
s31:所述信息交互层根据关系式
s32:所述信息交互层根据关系式
所述信息交互层在步骤s4的具体执行过程为:
所述信息交互层根据关系式
本实施例提供的方法在此优选方案中提出对s3的改进,目的是对消息向量进行增强,首先在步骤s31中通过ev,e的逆边隐藏表示的聚合得到中间消息向量
所述信息交互层在步骤s4利用消息增强后的节点消息向量
作为优选方案,所述信息交互层在步骤s5的具体执行过程为:
所述信息交互层根据关系式
由于
作为优选方案,所述信息交互层在步骤s6的具体执行过程为:
所述信息交互层根据关系式
作为优选方案,所述信息交互层在步骤s2中提及的“根据图结构数据的原始特征
所述信息交互层根据关系式
作为优选方案,所述输出层的步骤包括:
s8:所述输出层在得到所述有向图g的最终节点表示形式h(v)后,利用关系式z=∑gru(h(v))得到所述有向图g的固定特征向量,所述z为所述固定特征向量,所述gru为门控式递归单元,所述固定特征向量为所述应用对象的所有特征的集合。
s9:所述输出层在得到所述有向图g的最终节点表示形式h(v)后,建立所述有向图g的特性预测函数
为了验证本实施例所训练的图神经网络的预测准确性,本实施例将6个公共基准数据集上评估本实施所训练的图神经网络,分别实现了分类和回归实施例。
本实施例中的数据集基准数据集包括bbbp、tox21、clintox和sider(用于分类任务),以及esol和freesolv(用于回归任务)。数据集详情见表1:
实验将本实施例所训练的图神经网络与7种基础训练方法进行比较,所比较的方法的预测准确性已经在分子学和dmpnn中得到了证明。其中,随机森林(rf)是最常用的机器学习方法之一。
实验的输入是二值摩根指纹。fnn是一个前馈网络,它也使用分子指纹特征作为输入。此外,还将本实施例所训练的图神经网络与两个图模型gcn和weave进行了比较,这两个图模型都增加了边缘属性作为节点的特征。mpnn和dmpnn是最近出现的两种分别在无向图和有向图g上操作的消息传递方法。
该实验对每个任务进行了5次5倍的交叉验证和重复实验,并报告了auc或rmse值的平均值和标准差。交叉验证是一个更具挑战性和真实性的评估设置。本实施例所训练的图神经网络使用的节点和边缘特征以补充信息的形式列出,并使用开源包rdkit进行计算。为了提高模型的性能,本实施例所训练的图神经网络采用贝叶斯优化来获得模型的最佳超参数,模型由pytorch实现,运行在ubuntulinux16和nvidiateslav100gpu上。
四个分类数据集上七个不同基线模型的auc结果如表2所示。
由于tox21、sider和clintox是多任务学习,所以总共有42个分类任务。为了便于标记,使用cmpp-ip表示内积核,cmpnn-gg表示门控图核,cmpnn-mlp表示多层感知核。相比传统的基线和几个原始图神经网络,mpnn几乎在所有的数据集实现了auc的大幅增加,只在sider数据集上略逊于fnn。而在四个数据集中,通过直接消息传递,dmpnn的性能比mpnn提高了0.8%到2.7%。
而通过使用增强的节点边缘信息交互和消息增强模块,本实施例所训练的图神经网络cmpnn-mlp相对于dmpnn有了进一步的改进,在bbbp、clintox和sider数据集上分别提升了为4.6%、3.6%和2.5%。在tox21数据集上,cmpnn只比在tox21上的dmpnn稍好一点。这可能是因为tox21是一个极度不平衡的数据集,其只有7%的数据点被标记为有毒化合物。根据mayr报告称,这种数据在独立测试数据集中可能会表现得更差。为此,本实施例引入了支架分裂技术来进一步评估不同mpnn变体的泛化能力。
如图2所示,使用支架分裂策略进行预测,cmpnn比mpnn和dmpnn有了数量级的改进。在tox21任务中,在测试集上,本实施例所训练的图神经网络cmpnn模型比gcn高出1.1%。这一结果表明,当训练数据来源与测试集没有相似之处时,本实施例所训练的图神经网络cmpnn方法比之前的方法有更好的通用性。
针对图回归,表2展示了在两个溶解度数据集上,cmpnn与其他目前最优的模型的预测结果。针对esol和freesolv两个回归实例数据集,cmpnn最好实例的rmse为0.233±0.015logm和0.819±0.147kcal/mol。本实施例使用相同的折叠分配应用在dmpnn上,结果在两个数据集上分别提高了0.354logm和0.190kcal/mol。结果与本实施例的期望相符,因为本实施例所训练的图神经网络cmpnn在训练过程中更新了顶点和边的信息,从而更好地表示了分子图。
本实施例对两个基准进行了消融研究,来探讨影响本实施例所训练的图神经网络cmpnn性能的因素。如表3所示,带有最大池化助推器和通信模块的cmpnn在所有架构中表现最好。无任何变体的框架类似于dmpnn,但具有不同的读出功能。排除消息增强器或节点边缘消息通信功能的影响,本发明在分类和回归任务上取得了基本相同的结果。使用带注意力机制的池化作为助推器是有帮助的,但不如最大池化的效果明显。
本实施例对原子表示可视化进行了探究。在化学中,分子特性通常与其特定的亚结构有关。因此,识别与目标属性相关的子结构对于实现高性能非常重要。在这方面,本实施例尝试在原子水平上比较mpnn和dmpnn的学习能力。本实施例选择tox21中的一个子任务sr-mmp作为示例。
如图3所示,为原子特征向量的t分布(t-sne)随机近邻嵌入所生成的高维潜在空间的二维映射图。深色的点代表亚结构中的有毒原子,这些原子同时出现在pains数据库[baell和holloway2010](一个包含400多个有毒亚结构的数据库)和具有sr-mmp毒性的化合物中。无毒原子用浅色表示。认为具有相似功能的原子之间距离较近。最后,100个有毒分子和100个非有毒分子与2000个原子混合。总的来说,所有的方法都提供了令人满意的结果。然而,以mpnn和dmpnn为代表的一些有毒原子与无毒原子混合,而cmpnn则允许更精细的分类。这一结果证明了cmpnn能够更好地捕捉分子的表征。
表1
表2
表3
实施例2
本实施例提供一种增强图神经网络点边交互的方法,用于预测分子结构的有向图的核心特征,所述图神经网络包括输入层、特征提取层、信息交互层以及输出层,其中,本实施例所提供的方法应用于整个所述神经网络,具体步骤如下:
s1:所述输入层获取有向分子图g(v,e),所述特征提取层提取所述分子图g的图结构数据,其中,所述v为所述有向分子图g的所有原子,在所有原子中,任意原子表示为v,任意原子v的任意相邻节点表示为w;所述e为所述有向分子图g的所有键,在所有键中,任意键表示为e,所述键表示相连的所述原子之间的关联关系;
其中,图结构数据包括了所有任意原子的原始特性xv,以及所有任意键的原始特征
s2:所述信息交互层根据图结构数据的原始特征xv获取所有
s3:所述信息交互层根据所有
s4:所述信息交互层根据步骤s3创建的所有
s5:所述信息交互层根据步骤s4更新得到的
s6:所述信息交互层根据步骤s2得到的所有
s7:所述信息交互层利用步骤s6得到的所有
作为优选方案,步骤s3的具体执行过程为:
s31:所述信息交互层根据关系式
s32:所述信息交互层根据关系式
所述信息交互层在步骤s4的具体执行过程为:
所述信息交互层根据关系式
本实施例提供的方法在此优选方案中提出对s3的改进,目的是对消息向量进行增强,首先在步骤s31中通过ev,w的逆键隐藏表示的聚合得到中间消息向量
所述信息交互层在步骤s4利用消息增强后的原子消息向量
作为优选方案,所述信息交互层在步骤s5的具体执行过程为:
所述信息交互层根据关系式
由于
作为优选方案,所述信息交互层在步骤s6的具体执行过程为:
所述信息交互层根据关系式
作为优选方案,所述信息交互层在步骤s2中提及的“根据图结构数据的原始特征
所述信息交互层根据关系式
作为优选方案,所述输出层的步骤包括:
s8:所述输出层在得到所述有向图g的最终原子表示形式h(v)后,利用关系式z=∑gru(h(v))得到所述有向图g的固定特征向量,所述z为所述固定特征向量,所述gru为门控式递归单元,所述固定特征向量为该分子结构的所有特征的集合。
s9:所述输出层在得到所述有向图g的最终原子表示形式h(v)后,建立所述有向图g的特性预测函数
显然,本发明的上述实施例仅仅是为清楚地说明本发明技术方案所作的举例,而并非是对本发明的具体实施方式的限定。凡在本发明权利要求书的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。