当前位置: 首页 > 专利查询>四川大学专利>正文

一种基于深层图神经网络的分子表示方法及系统技术方案

技术编号:38347234 阅读:7 留言:0更新日期:2023-08-02 09:27
本发明专利技术公开了一种基于深层图神经网络的分子表示方法及系统,涉及人工智能技术领域,尤其涉及生物计算、深度学习技术领域,解决现有技术过平滑导致图神经网络无法增加图卷积次数以增加结点感受野的问题。本发明专利技术调用第三方库将分子的计算机存储数据转化为分子图,分子图包括邻接矩阵、结点和边;分析分子图得到分子图的结点和边的初始特征向量;基于图神经网络和邻接矩阵对结点和边的初始特征向量进行密集残差图卷积运算,得到新的结点和边的特征向量;对新的结点和边的特征向量进行池化操作,得到分子表示。本发明专利技术用于分子表示。本发明专利技术用于分子表示。本发明专利技术用于分子表示。

【技术实现步骤摘要】
一种基于深层图神经网络的分子表示方法及系统


[0001]一种基于深层图神经网络的分子表示方法及系统,用于分子表示,涉及人工智能
,尤其涉及生物计算、深度学习


技术介绍

[0002]目前主流的分子表示方法有三种。第一种使用化学

化学相互作用和结构相似性的信息构建特征矩阵,当需要预测时直接取出矩阵中对应的行列作为分子表示。第二种是使用分子的SMILES表示法或是分子扩展连通性指纹ECFP,将分子表示为一个Token序列,使用自然语言处理NLP领域的相关方法预测分子性质或做分子设计。这两种方法都有一个显著的缺陷,分子作为一种非欧数据,无法显式的表征空间拓扑性质。第三种方法基于图神经网络,以化学小分子为例,将原子视为图上结点,化学键视为边,构建分子图,利用图上的卷积和读出算法,就可以得到整张图的嵌入特征,作为分子的表示。
[0003]图神经网络具有过平滑问题:
[0004]当前的图神经网络,主要基于消息传递框架,信息的传递依赖于聚合和更新操作。一个结点,主要从周围的邻居结点获取特征表示,进而更新自身的特征表示,这导致相邻结点趋向于具有相近的表示。当网络层数加深时,随着传播次数的增加,整张图的各结点信息也将趋同,缺乏不同结点的区分度,所以,深层的图神经网络反而会导致任务性能下降。
[0005]采用注意力机制延缓过平滑存在的问题:
[0006]已有技术采用计算注意力的方式改进消息传递机制,增大自身结点在传递消息时的权重,以减少过度的消息传递,从而在一定程度上克服过平滑问题。但是,为每个结点计算注意力权重会导致大量的算力消耗,并且网络层数加深之后,虽然每次传递时的系数较低,但消息传递次数增多后依然具有过平滑问题。此类方案仅通过自适应权重来延缓过平滑问题,但网络加深后计算量爆炸且平滑问题再次显现。
[0007]拓展图上深层结构的重要性:
[0008]合理的做深神经网络,有益于性能增强,这是深度学习领域的普遍共识。在图深度学习中,一次图卷积可以聚合邻居结点的信息,想要获得更远结点的信息,就必须增加图卷积次数以增加结点感受野,但过平滑问题导致图神经网络无法做深,极大限制网络的表达能力,限制分子表示的生成质量。因此,亟待一种基于深层图神经网络的生物化学分子表示方法。
[0009]虽然《基于Transformer和增强交互型MPNN神经网络的小分子表示学习方法》也克服过平滑的问题,但仍然存在如下技术问题:
[0010]1.没有很好的解决过平滑问题。过平滑导致图神经网络无法增加图卷积次数以增加结点感受野,现有的注意力改进方案只能延缓过平滑问题,加深网络后过平滑问题将重现,极大限制网络的表达能力,从而造成分子表示的生成质量不佳的问题v
[0011]2.网络层数较浅。只能用浅层网络抽取分子表示,结点感受野较小,从而造成信息传递融合不充分;
[0012]3.计算复杂度高。现有的基于注意力的方案,需要在每一个结点接收消息时,为邻居赋权重,虽然有益于性能提升,但会增加大量计算量。

技术实现思路

[0013]针对上述研究的问题,本专利技术的目的在于提供一种基于深层图神经网络的分子表示方法及系统,解决现有技术过平滑导致图神经网络无法增加图卷积次数以增加结点感受野,现有的注意力改进方案只能延缓过平滑问题,加深网络后过平滑问题将重现,极大限制网络的表达能力,从而造成分子表示的生成质量不佳的问题。
[0014]为了达到上述目的,本专利技术采用如下技术方案:
[0015]一种基于深层图神经网络的分子表示方法,包括如下步骤:
[0016]S1.调用第三方库将分子的计算机存储数据转化为分子图,分子图包括邻接矩阵、结点和边,其中,调用第三方库包括RDKit;
[0017]S2.分析分子图得到分子图的结点和边的初始特征向量;
[0018]S3.基于图神经网络和邻接矩阵对结点和边的初始特征向量进行密集残差图卷积运算,得到新的结点和边的特征向量;
[0019]S4.对新的结点和边的特征向量进行池化操作,得到分子表示。
[0020]进一步,所述步骤S1的具体步骤为:
[0021]S1.1.获取分子的计算机存储数据,其中,计算机存储数据是以“.MOL”、“.SDF”、“.KCF”为后缀存储起来的分子的文本文件,或一串基于SMILES表示法的分子字符串;
[0022]S1.2.若计算机存储数据为以“.MOL”、“.SDF”、“.KCF”后缀存储起来的分子的文本文件,转到步骤S1.3,若计算机存储数据为以SMILES表示法存储起来的分子的文本文件,转到步骤S1.4,否则,跳过;
[0023]S1.3.初始化一个空的分子类,并采用开源工具包rdkit中的函数从上到下逐行扫描分子的文本文件,在分子类中依次读入原子信息和化学键信息,将原子信息和化学键信息分别存储进分子类中的结点和边,得到一个存储了结点和边的分子类,其中,原子信息包括原子位置、原子描述符、化学键类型和作为结点唯一标识的原子ID,化学键信息以原子IDi

原子IDj关系对记录,i表示第i个原子,j表示第j个原子,且i≠j,化学键类型包括以
“‑”
表示的单键,“=”表示的双键,“#”表示的三键,“:”表示的芳香键,“*”代表的其他键,原子描述符包括“C”、“H”、“0”;
[0024]S1.4.初始化一个空的分子类,采用开源工具包rdkit中的函数分析存储的一维序列分子字符串的字符中的原子、原子的边类型、支链结构和环结构,并基于原子、原子的边类型、支链结构和环结构得到原子信息和化学键信息,将原子信息和化学键信息分别存储进分子类中的结点和边,得到一个存储了结点和边的分子类,其中,一个结点存储一个原子信息,一个边存储一个化学键信息,一维序列分子字符串包含以英文字母元素符号表示的原子,
“‑”
表示的单键,“=”表示的双键,“#”表示的三键,“:”表示的芳香键,“()”内表示碳链分支和环的断开处用数字标记,分子类中原子信息包括原子位置、原子描述符、化学键类型和作为结点唯一标识的原子ID,化学键信息以原子IDi

原子IDj关系对记录,i表示第i个原子,j表示第j个原子,且i≠j,化学键类型包括以
“‑”
表示的单键,“=”表示的双键,“#”表示的三键,“:”表示的芳香键,“*”代表的其他键,原子描述符包括“C”、“H”、“0”、“N”、“S”、

P”、“Cl”、“Si”,氢原子“H”、单键和芳香键在SMILES和分子类中省略或保留;
[0025]S1.5.初始化一个分子图类以及一个行和列都为结点数大小的零矩阵,行列索引步骤S1.3或步骤S1.4得到的分子类中对应的原子ID,根据原子IDi

原子IDj关系对,在零矩阵中对应的位置填入1,得到基于无向图的邻接矩阵A,邻接矩阵蕴含了分子图的拓扑结构,将分子类中存储了原子信息的结点和存本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于深层图神经网络的分子表示方法,其特征在于,包括如下步骤:S1.调用第三方库将分子的计算机存储数据转化为分子图,分子图包括邻接矩阵、结点和边,其中,调用第三方库包括RDKit;S2.分析分子图得到分子图的结点和边的初始特征向量;S3.基于图神经网络和邻接矩阵对结点和边的初始特征向量进行密集残差图卷积运算,得到新的结点和边的特征向量;S4.对新的结点和边的特征向量进行池化操作,得到分子表示。2.根据权利要求1所述的一种基于深层图神经网络的分子表示方法,其特征在于:所述步骤S1的具体步骤为:S1.1.获取分子的计算机存储数据,其中,计算机存储数据是以“.MOL”、“.SDF”、“.KCF”为后缀存储起来的分子的文本文件,或一串基于SMILES表示法的分子字符串;S1.2.若计算机存储数据为以“.MOL”、“.SDF”、“.KCF”后缀存储起来的分子的文本文件,转到步骤S1.3,若计算机存储数据为以SMILES表示法存储起来的分子的文本文件,转到步骤S1.4,否则,跳过;S1.3.初始化一个空的分子类,并采用开源工具包rdkit中的函数从上到下逐行扫描分子的文本文件,在分子类中依次读入原子信息和化学键信息,将原子信息和化学键信息分别存储进分子类中的结点和边,得到一个存储了结点和边的分子类,其中,原子信息包括原子位置、原子描述符、化学键类型和作为结点唯一标识的原子ID,化学键信息以原子IDi

原子IDj关系对记录,i表示第i个原子,j表示第j个原子,且i≠j,化学键类型包括以
“‑”
表示的单键,“=”表示的双键,“#”表示的三键,“:”表示的芳香键,“*”代表的其他键,原子描述符包括“C”、“H”、“0”;S1.4.初始化一个空的分子类,采用开源工具包rdkit中的函数分析存储的一维序列分子字符串的字符中的原子、原子的边类型、支链结构和环结构,并基于原子、原子的边类型、支链结构和环结构得到原子信息和化学键信息,将原子信息和化学键信息分别存储进分子类中的结点和边,得到一个存储了结点和边的分子类,其中,一个结点存储一个原子信息,一个边存储一个化学键信息,一维序列分子字符串包含以英文字母元素符号表示的原子,
“‑”
表示的单键,“=”表示的双键,“#”表示的三键,“:”表示的芳香键,“()”内表示碳链分支和环的断开处用数字标记,分子类中原子信息包括原子位置、原子描述符、化学键类型和作为结点唯一标识的原子ID,化学键信息以原子IDi

原子IDj关系对记录,i表示第i个原子,j表示第j个原子,且i≠j,化学键类型包括以
“‑”
表示的单键,“=”表示的双键,“#”表示的三键,“:”表示的芳香键,“*”代表的其他键,原子描述符包括“C”、“H”、“0”、“N”、“S”、“P”、“Cl”、“Si”,氢原子“H”、单键和芳香键在SMILES和分子类中省略或保留;S1.5.初始化一个分子图类以及一个行和列都为结点数大小的零矩阵,行列索引步骤S1.3或步骤S1.4得到的分子类中对应的原子ID,根据原子IDi

原子IDj关系对,在零矩阵中对应的位置填入1,得到基于无向图的邻接矩阵A,邻接矩阵蕴含了分子图的拓扑结构,将分子类中存储了原子信息的结点和存储了化学键信息的边,与邻接矩阵一同存储进分子图类作为属性,得到一个存储了结点、边、邻接矩阵的分子图类,即分子图。3.根据权利要求2所述的一种基于深层图神经网络的分子表示方法,其特征在于:所述步骤S2的具体步骤为:
步骤S2.1:根据分子图中原子在元素周期表中的原子序号,为每个存储了原子信息的结点构造一个118维为长度的one

hot向量,得到的向量作为结点的初始向量,存储在分子图中,其中,118维基于最大原子序数确定的;步骤S2.2:传入步骤S2.1得到的分子图,初始化一个长度为5的列表:[0:单键,1:双键,2:三键,3:芳香键,4:其他],初始化一个5维的零向量,根据化学键类型的对应数字,在对应位置赋值为1,得到一个5维的one

hot向量,并将得到的向量作为边的初始特征向量,存入分子图中。4.根据权利要求3所述的一种基于深层图神经网络的分子表示方法,其特征在于:所述步骤S3的具体步骤为:步骤S3.1:图神经网络的各层网络的操作依次为图卷积、激活、密集残差连接、激活、批归一化操作,一次图卷积依次为聚合、更新操作,对第l层网络记为F
l
,下标l的取值范围为0,1,

,L,L代表网络总层数,不特指层数时简记为F,第l层网络的输入是上一层网络的输出G
l
‑1=(A,V,E,H
l
‑1),第1层网络的输入是步骤S2.2得到的分子图G0,第l层网络输出的分子图记为G
l
=(A,V,E,H
l
),其中,A代表邻接矩阵,V和E分别代表结点和边的集合,),其中,A代表邻接矩阵,V和E分别代表结点和边的集合,代表第l层结点和边的特征向量,将存入G0的初始特征记为H0;步骤S3.2:初始化一个新分子图,同时,初始化G
l
=G
l
‑1,将G
l
‑1的结点、边、邻接矩阵复制进G
l
作为初始化值,得到分子图G
l
;步骤S3.3:聚合操作,即将G
l
上的每一个结点的邻居结点和与邻居相邻的边的特征向当前结点汇聚,得到图的结点和边的新特征向量,公式为:其中,代表第l层聚合函数Aggregate()中学习的参数,AggregateResult是得到的聚合结果;步骤S3.4:基于步骤S3.3得到的G
l
进行更新操作,对聚合结果AggregateResult应用更新函数,更新函数采用一层线性层,得到图上结点和边的新特征向量,公式为:其中,代表第l层更新函数Update()中学习的参数,UpdateResult是得到的更新结果;步骤S3.5:基于步骤S3.4得到的更新结果UpdateResult进行激活操作,采用RELU函数作为激活函数,对更新结果进行激活,公式为:ActivationResult=RELU(\pdateResult)将得到的激活结果ActivationResult记为作为分子图上结点和边的新的特征向量;步骤S3.6:基于步骤S3.5得到的添加密集残差连接,得到更新后的当l=1时,公式如下:
当l>1时,公式如下:其中,

代表省略递推的公式,密集性体现在蕴含先前所有网络层的输出特征H1至H
I
‑1,残差体现在蕴含第l层网络运算之前的特征H
l
‑1;此外,该式还体现了初始连接,蕴含原始输入H0;H
l
‑1为上一层网络经过批归一化操作得到的结果;步骤S3.7:基于步骤S3.6得到的进行再次激活,得到公式为:其中,RELU()为激活函数;步骤S3.8:基于步骤S3.6得到的进行批归一化操作,得到H
l
,公式为:其中,BatchNorm()为批归一化操作函数;步骤S3.9:当l<L时,将H
l
存入G
l
=(A,V,E,H
l
),用于后续网络层的步骤,执行l=l+1,并转到步骤S3.1;当l=L时,将H
L
存入G
L
=(A,V,E,H
L
),输出最后一层的分子图G
L
,得到新的结点和边的特征向量。5.根据权利要求4所述的一种基于深层图神经网络的分子表示方法,其特征在于:所述步骤S4的具体步骤为:步骤S4.1:若做结点级和边级任务,直接输出最终图作为最终表示;步骤S4.2:若做图级任务,对最终图采用池化策略进行读出,输出特征向量作为分子表示。6.一种基于深层图神经网络...

【专利技术属性】
技术研发人员:魏骁勇田奇杨震群曹溢黄文禹严丽巧
申请(专利权)人:四川大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1