CN116030908A - 基于策略梯度和结构信息的抗癌肽生成模型及其训练方法 - Google Patents
基于策略梯度和结构信息的抗癌肽生成模型及其训练方法 Download PDFInfo
- Publication number
- CN116030908A CN116030908A CN202310149714.8A CN202310149714A CN116030908A CN 116030908 A CN116030908 A CN 116030908A CN 202310149714 A CN202310149714 A CN 202310149714A CN 116030908 A CN116030908 A CN 116030908A
- Authority
- CN
- China
- Prior art keywords
- polypeptide sequence
- layer
- generator
- anticancer peptide
- generation module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 108090000765 processed proteins & peptides Proteins 0.000 title claims abstract description 481
- 230000001093 anti-cancer Effects 0.000 title claims abstract description 209
- 238000012549 training Methods 0.000 title claims abstract description 112
- 238000000034 method Methods 0.000 title claims abstract description 50
- 102000004196 processed proteins & peptides Human genes 0.000 claims abstract description 277
- 229920001184 polypeptide Polymers 0.000 claims abstract description 276
- 238000012360 testing method Methods 0.000 claims abstract description 26
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 17
- 150000001413 amino acids Chemical class 0.000 claims abstract description 16
- 239000013598 vector Substances 0.000 claims description 144
- 239000011159 matrix material Substances 0.000 claims description 75
- 230000006870 function Effects 0.000 claims description 71
- 238000004364 calculation method Methods 0.000 claims description 32
- 230000004913 activation Effects 0.000 claims description 23
- 238000013528 artificial neural network Methods 0.000 claims description 13
- 238000003780 insertion Methods 0.000 claims description 12
- 230000037431 insertion Effects 0.000 claims description 12
- 238000013507 mapping Methods 0.000 claims description 12
- 238000011176 pooling Methods 0.000 claims description 12
- 238000005070 sampling Methods 0.000 claims description 11
- 238000012614 Monte-Carlo sampling Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 9
- 125000004122 cyclic group Chemical group 0.000 claims description 6
- 238000009795 derivation Methods 0.000 claims description 6
- 125000003275 alpha amino acid group Chemical group 0.000 claims description 5
- 101150000419 GPC gene Proteins 0.000 claims description 4
- 101150026392 N gene Proteins 0.000 claims description 4
- 238000004519 manufacturing process Methods 0.000 claims 3
- 239000000956 alloy Substances 0.000 claims 1
- 229910045601 alloy Inorganic materials 0.000 claims 1
- 230000002787 reinforcement Effects 0.000 description 10
- 230000008901 benefit Effects 0.000 description 8
- 238000013461 design Methods 0.000 description 8
- 239000000126 substance Substances 0.000 description 7
- 229940079593 drug Drugs 0.000 description 5
- 239000003814 drug Substances 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000012216 screening Methods 0.000 description 3
- 230000008485 antagonism Effects 0.000 description 2
- 235000012745 brilliant blue FCF Nutrition 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 210000004896 polypeptide structure Anatomy 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 229940000406 drug candidate Drugs 0.000 description 1
- 238000009510 drug design Methods 0.000 description 1
- 230000005847 immunogenicity Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 108090000623 proteins and genes Proteins 0.000 description 1
- 102000004169 proteins and genes Human genes 0.000 description 1
- 150000003384 small molecules Chemical class 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000001225 therapeutic effect Effects 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Investigating Or Analysing Biological Materials (AREA)
Abstract
本发明公开了一种抗癌肽生成模型的训练方法,包括:获取一般多肽序列数据、抗癌肽序列数据和非抗癌肽序列数据,并根据氨基酸词表对一般多肽序列数据、抗癌肽序列数据和非抗癌肽序列数据进行数字编码,以得到一般多肽序列数据集、抗癌肽序列数据集和非抗癌肽序列数据集,将一般多肽序列数据集、抗癌肽序列数据集和非抗癌肽序列数据集分别按照训练集和测试集8:2的比例进行划分,以得到一般多肽序列训练集和测试集、抗癌肽序列训练集和测试集和非抗癌肽序列训练集和测试集,将一般多肽序列训练集输入抗癌肽生成模型的生成模块中,并使用反向传播算法对生成模块中每层的权重参数和偏置参数进行更新和优化,以得到预训练好的生成模块。
Description
技术领域
本发明属于计算机人工智能与抗癌肽设计的交叉技术领域,更具体地,涉及一种基于策略梯度和结构信息的抗癌肽生成模型的训练方法。
背景技术
多肽具有高特异性、高选择性、安全、易获取和免疫原性低等特点,且优于以往药物设计上研究主要关注的小分子或蛋白质,所以多肽是一种在生物技术应用中的治疗和诊断等领域有前景的药物候选物。对于多肽的设计,尤其是抗癌肽的设计,已经从以往的湿实验到机器学习转到了现在的深度生成模型。
现有的抗癌肽生成方法都是基于抗癌肽序列数据的学习,主要通过以下三种方法实现,第一种是用传统机器学习模型,首先设计特征提取器来处理数据,然后通过机器学习算法生成抗癌肽,接着用预测器来预测生成抗癌肽的活性;第二种是简单地用多肽深度生成模型直接拟合抗癌肽数据或者加上有药物所需性质的多肽数据的分布,然后用预测器来预测生成抗癌肽的活性;第三种是通过一些约束训练性质可控的抗癌肽生成模型,约束可以是强化学习或者拒绝采样等方法。
然而,现有的抗癌肽生成方法存在一些不可忽略的缺陷:第一、传统的机器学习技术需要大量的领域专业知识来设计特征提取器,在处理数据方面受到限制,使得多肽的生成过程繁琐;第二、现有的多肽深度生成模型一般只考虑到某种特定的活性或者少量属性,在生成后还需要通过预测模型作为辅助筛选,最后通过实验来筛选更符合药物所需性质的多肽序列,这样的多肽设计框架没有达到理想的速度;第三、现有的抗癌肽生成模型只考虑了序列信息,而没有考虑到对多肽的物理与化学性质有决定性关系的结构信息,这会导致模型不能学习到对多肽的物理与化学性质有决定性关系的结构信息。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于策略梯度和结构信息的抗癌肽生成模型及其训练方法,其目的在于,解决传统的机器学习技术需要大量的领域专业知识来设计特征提取器,在处理数据方面受到限制,使得多肽的生成过程繁琐的技术问题,以及现有多肽深度生成模型无法达到理想速度的技术问题,以及现有的抗癌肽生成模型由于没有考虑到结构信息,导致模型不能学习到对多肽的物理与化学性质有决定性关系的结构信息的技术问题。
为实现上述目的,按照本发明的一个方面,提供了一种抗癌肽生成模型,包括生成模块和预测模块两个部分。其中生成模块是序列生成对抗网络SeqGAN,且包括2个具有相同结构的生成器和1个判别器,生成器的结构如下:
第1层为嵌入层,输入大小为20的多肽序列索引向量,输出一个20*32的嵌入矩阵;
第2层为基于门控循环单元GRU的循环神经网络RNN层,在每个时间步,输入为20*32维矩阵,输出1*32的隐藏单元向量,最后输出20个1*32的隐藏单元向量;
第3层为Softmax输出层,输入为1*32的每个时间步的输出的隐藏单元向量,通过线性映射和Softmax激活函数,输出1*20的向量,最后输出20*20的矩阵;
另一个生成器是推出策略需要的生成器,和第一个生成器具有同样的结构。
判别器的结构如下:
第1层为嵌入层,输入20*20的多肽序列独热编码,利用一个20*64的矩阵,输出一个20*64的嵌入矩阵;
第2层为卷积层,输入20*64的嵌入矩阵,其中有2种卷积核,大小分别为2和3,步长为1,数量分别为100个和200个,输出大小分别为19*100和18*200的特征矩阵;
第3层为线性整流函数RELU层,利用RELU非线性激活函数,输入和输出19*100和18*200的特征矩阵;
第4层为池化层,输入19*100和18*200的特征矩阵,利用最大池化选取每个特征向量中的最大值,然后将得到的1*100和1*200的矩阵拼接,输出1*300的多肽序列特征向量;
第5层为Highway层,输入和输出1*300的特征向量;
第6层为丢弃层,输入和输出1*300的特征向量;
第7层为Softmax输出层,输入1*300的特征向量,利用一个300*2的矩阵,通过线性映射和Softmax激活函数,得到1*2的向量,最后经过Argmax函数输出1个数值。
预测模块是基于图神经网络GNN的抗癌肽预测器,其具体结构为:
第1层为嵌入层,输入大小为N的分子指纹向量,输出N*50的嵌入矩阵,其中N是分子指纹的长度,即原子数量;
第2层为GNN层,输入N*50的嵌入矩阵和N*N的邻接矩阵,利用线性映射和ReLU激活函数、特征矩阵更新函数和对每个特征维度的均值求解,输出1*50的向量;
第3、4和5层均为和第2层相同的GNN层,输入和输出也与第2层相同;
第6层为ReLU激活层,将2-5层输出的向量进行连接,以得到1*200的向量,经过线性映射和ReLU激活函数,输出1*800向量;
第7层为全连接层,输入1*800的向量,输出1*2的向量。
按照本发明的另一方面,提供了一种抗癌肽生成模型的训练方法,包括以下步骤:
(1)获取一般多肽序列数据、抗癌肽序列数据和非抗癌肽序列数据,并根据氨基酸词表对一般多肽序列数据、抗癌肽序列数据和非抗癌肽序列数据进行数字编码,以得到一般多肽序列数据集、抗癌肽序列数据集和非抗癌肽序列数据集。
(2)将步骤(1)得到的一般多肽序列数据集、抗癌肽序列数据集和非抗癌肽序列数据集分别按照训练集和测试集8:2的比例进行划分,以得到一般多肽序列训练集和测试集、抗癌肽序列训练集和测试集和非抗癌肽序列训练集和测试集。
(3)将步骤(2)得到的一般多肽序列训练集输入抗癌肽生成模型的生成模块中,并使用反向传播算法对生成模块中每层的权重参数和偏置参数进行更新和优化,以得到预训练好的生成模块;
(4)使用RDKit工具包分别将步骤(1)得到的抗癌肽序列数据和非抗癌肽序列数据中的氨基酸序列格式分别转换成抗癌肽分子图数据和和非抗癌肽分子图数据;
(5)利用一维魏斯菲勒雷曼1-WL算法编码步骤(4)得到的抗癌肽分子图数据和和非抗癌肽分子图数据并设置标签,以得到抗癌肽分子指纹数据和非抗癌肽分子指纹数据,其均用数值向量表示,且分别包含分子指纹和邻接矩阵;
(6)将步骤(5)得到的抗癌肽分子指纹数据和非抗癌肽分子指纹数据按照训练集和测试集8:2的比例进行划分,以得到抗癌肽分子指纹训练集和测试集,非抗癌肽分子指纹训练集和测试集。
(7)将步骤(6)得到的抗癌肽分子指纹训练集和非抗癌肽分子指纹训练集输入到抗癌肽生成模型的预测模块中,并使用反向传播算法对预测模块中每层的权重参数和偏置参数进行更新和优化,以得到更新后的抗癌肽生成模型的预测模块;
(8)将步骤(2)得到的抗癌肽序列训练集输入到步骤(3)得到的抗癌肽生成模型的生成模块中,并使用反向传播算法对抗癌肽生成模型的生成模块中每层的权重参数和偏置参数进行更新和优化,以得到微调好的抗癌肽生成模型的生成模块,从而得到训练好的抗癌肽生成模型。
优选地,步骤(3)包括以下子步骤:
(3-1)将步骤(2)得到的一般多肽序列训练集的数值编码向量输入到抗癌肽生成模型中生成模块的生成器的嵌入层,以得到嵌入矩阵x={x1,...,xn},其中n表示多肽序列长度,x1表示在一条多肽序列里第一个氨基酸的嵌入向量,xn表示在一条多肽序列里第n个氨基酸的嵌入向量;
(3-2)将步骤(3-1)得到的嵌入矩阵x={x1,...,xn}输入到生成模块中生成器的基于GRU的RNN层,以得到n个隐藏向量{h1,...,hn};
其中n个隐藏向量{h1,...,hn}是通过按顺序对n个嵌入向量{x1,...,xn}使用更新函数g得到的,在生成n个隐藏向量的过程中,第t个时间步的隐藏向量ht由嵌入向量xt和第t-1个时间步的隐藏向量ht-1决定,其计算公式为:
ht=g(xt,ht-1)
其中t∈[1,n],xt是第t个时间步的嵌入向量,ht是第t个时间步的隐藏向量,g为更新函数;
(3-3)将步骤(3-2)得到的n个隐藏向量{h1,...,hn}输入到生成模块中生成器的Softmax层,以得到生成多肽序列,其包括n个时间步的生成器输出令牌;
其中每个时间步的生成器输出令牌的计算方式为:
yt=softmax(Wht+b)
其中t∈[1,n],W是权重矩阵,b是偏置向量,ht是第t个时间步的隐藏向量,yt表示第t个时间步的生成器输出令牌,softmax()表示softmax激活函数;
(3-4)使用步骤(3-3)得到的生成多肽序列与步骤(2)得到的一般多肽序列训练集的交叉熵损失对生成模块的生成器进行梯度更新,并对更新后的生成器进行迭代训练,直到损失函数最小为止,从而得到预训练好的生成模块的生成器Gθ;
其中第t个时间步的交叉熵损失的计算方式为:
Lt=-ytlog^t
(3-5)利用步骤(3-4)得到的生成模块的生成器采样到固定长度的多肽序列;
(3-6)将步骤(2)得到的一般多肽序列训练集和步骤(3-5)得到的多肽序列依次输入到生成模块中判别器的嵌入层、卷积层、RELU层、池化层、Highway层和丢弃层,以得到特征矩阵;
(3-7)将步骤(3-6)得到的特征矩阵输入到生成模块中判别器的Softmax层,以得到判别分数;
(3-8)利用步骤(3-7)得到的判别分数的交叉熵损失对生成模块的判别器进行梯度更新,并对更新后的判别器进行迭代训练,直到损失函数最小为止,从而得到预训练好的生成模块的判别器D;
其中判别器的损失计算方式如下:
其中,yi是一般多肽序列训练集中的第i个多肽序列,是生成的多肽序列集中的一个多肽序列,D()是判别器D的判别分数,BCE()表示计算判别分数和真实标签0或1的交叉熵,N表示一般多肽序列训练集中多肽序列的数量,LD是判别器损失;
(3-9)将步骤(3-4)得到的生成模块的生成器Gθ作为Roll-out生成器Gβ使用;
(3-10)利用步骤(3-4)得到的生成模块的生成器Gθ生成多肽序列段,利用步骤(3-9)得到的Roll-out生成器Gβ对多肽序列段生成后续的令牌,以得到完整多肽序列,并将生成的完整多肽序列输入到步骤(3-8)得到的生成模块的判别器D,以得到生成的完整多肽序列的序列奖励。
(3-11)根据步骤(3-10)得到的生成的完整多肽序列的序列奖励获取期望奖励,通过最大化该期望奖励对步骤(3-4)得到的生成器Gθ的参数进行梯度更新,以得到更新后的生成模块的生成器Gθ;
(3-12)利用步骤(3-11)更新后的生成模块的生成器Gθ进行采样,以得到多个多肽序列样本;
(3-13)将步骤(2)得到的一般多肽序列训练集和步骤(3-12)采样的多肽序列样本输入到步骤(3-8)得到的生成模块的判别器,并重复执行一次步骤(3-6)-(3-8),以得到更新的生成模块判别器;
(3-14)将步骤(3-11)得到的生成模块的生成器Gθ作为Roll-out生成器Gβ使用,利用步骤(3-11)得到的生成模块的生成器Gθ生成多肽序列段,利用Roll-out生成器Gβ对多肽序列段生成后续的令牌,以得到完整多肽序列,并将生成的完整多肽序列输入到步骤(3-13)得到的生成模块的判别器D,以得到生成的完整多肽序列的序列奖励;
(3-15)根据步骤(3-15)得到的生成的完整多肽序列的序列奖励获取期望奖励,通过最大化该期望奖励对步骤(3-11)得到的生成器Gθ的参数进行梯度更新,以得到更新后的生成模块的生成器Gθ;
(3-16)重复执行步骤(3-12)至步骤(3-15),直到生成模块中的生成器和判别器收敛为止,从而得到预训练好的抗癌肽生成模型的生成模块。
优选地,最大化期望奖励的计算方式如下:
其中,J()为目标函数,是期望,θ是生成模块的生成器Gθ的参数,Gθ(st|S1:t-1)生成一个多肽序列段,是序列奖励,s是Gθ生成的多肽序列;希望得到生成模型的参数θ,使得生成模型能在S1:t-1处做出最佳选择,以在生成第T个(最后一个)多肽序列时获得大回报RT,如何得到最佳选择取决于序列奖励
其中,st是Gθ生成的第t个令牌,T表示完整多肽序列的长度,S1:t是生成器Gθ生成的第t个多肽序列段,表示在Gθ生成多肽序列段S1:t时,利用蒙特卡洛采样,在多肽序列段的基础上,利用Roll-out生成器Gβ生成N个长度为T的完整多肽序列;t<T时,表示判别器D对Gβ生成的完整多肽序列的判别分数,t=T时,表示判别器D对Gθ生成的完整多肽序列的判别分数;
利用梯度上升,生成模块的生成器Gθ目标函数的梯度即梯度更新计算方式如下:
θ←θ+αJ(θ)
其中,表示在第t次迭代更新节点v的标签,表示在第t-1次迭代更新节点u的标签,表示在第t次迭代更新节点u和v之间的边的标签,N(v)表示节点v的邻居节点集合,HASH()表示运用哈希单射函数可以将公式中得到的所有数据组映射成独一无二的整数。
优选地,步骤(7)包括以下子步骤:
(7-1)将步骤(6)得到的抗癌肽分子指纹训练集和非抗癌肽分子指纹训练集输入到预测模块的嵌入层,以得到分子指纹的嵌入矩阵H;
(7-2)将步骤(7-1)得到的嵌入矩阵H和相应的邻接矩阵A输入到预测模块的GNN层,以得到特征向量;
(7-3)将步骤(7-2)得到的i个特征向量拼接起来,输入到relu线性层和全连接层,再经过Softmax层,以得到预测向量;
(7-4)将步骤(7-3)得到的预测向量和相应的步骤(5)得到数据标签的交叉熵损失来进行梯度更新,对更新的预测模块进行迭代训练,直到损失函数最小为止,从而得到预训练好的抗癌肽生成模型的预测模块。
优选地,步骤(7-2)中,经过i层GNN层的特征向量Hi的更新公式如下:
Hi=Hi-1+A·relu(WGNNHi-1)
其中,i为第i个GNN层,relu(Rectified Linear Unit)是一个非线性激活函数;WGNN为GNN层的权重矩阵,A是特征向量相应的邻居矩阵;
优选地,步骤(8)包括以下子步骤:
(8-1)将步骤(2)得到的抗癌肽序列训练集的数值编码向量输入到抗癌肽生成模型中生成模块的生成器的嵌入层,以得到嵌入矩阵x={x1,...,xn},其中n表示多肽序列长度,x1表示在一条多肽序列里第一个氨基酸的嵌入向量,xn表示在一条多肽序列里第n个氨基酸的嵌入向量;
(8-2)将步骤(8-1)得到的嵌入矩阵x={x1,...,xn}输入到生成模块中生成器的基于GRU的RNN层,以得到n个隐藏向量{h1,...,hn};
(8-3)将步骤(8-2)得到的n个隐藏向量{h1,...,hn}输入到生成模块中生成器的Softmax层,以得到生成多肽序列,其包括n个时间步的生成器输出令牌;
(8-4)对步骤(8-3)得到的生成多肽序列与步骤(2)得到的抗癌肽序列训练集的交叉熵损失对生成模块的生成器进行梯度更新,并对更新后的生成器进行迭代训练,直到损失函数最小为止,从而得到预训练好的生成模块的生成器Gθ;
(8-5)利用步骤(8-4)得到的生成模块的生成器采样到固定长度的多肽序列;
(8-6)将步骤(2)得到的抗癌肽序列训练集和步骤(8-5)得到的多肽序列依次输入到生成模块中判别器的嵌入层、卷积层、RELU层、池化层、Highway层和丢弃层,以得到特征矩阵;
(8-7)将步骤(8-6)得到的特征矩阵输入到生成模块中判别器的Softmax层,以得到判别分数;
(8-8)利用步骤(8-7)得到的判别分数的交叉熵损失对生成模块的判别器进行梯度更新,并对更新后的判别器进行迭代训练,直到损失函数最小为止,从而得到预训练好的生成模块的判别器D;
(8-9)将步骤(8-4)得到的生成模块的生成器Gθ同时作为Roll-out生成器Gβ使用;
(8-10)利用步骤(8-4)得到的生成模块的生成器Gθ生成多肽序列段,利用步骤(8-9)得到的Roll-out生成器Gβ对生成的多肽序列段生成后续的令牌,以得到完整的多肽序列,并将生成的完整多肽序列输入到步骤(8-8)得到的生成模块的判别器D,以得到生成的完整多肽序列的序列奖励;
(8-11)针对步骤(8-10)得到的完整的多肽序列而言,通过上述步骤(4)和(5)的计算方法得到该多肽序列对应的分子指纹,然后将分子指纹输入到步骤(7)得到的预测模块,以得到生成的完整多肽序列数据的结构奖励;
(8-12)将步骤(8-10)得到的完整多肽序列的序列奖励和步骤(8-11)得到的完整多肽序列的结构奖励进行线性组合,以获取线性组合奖励,通过最大化期望线性组合奖励对步骤(8-4)得到的生成器Gθ的参数进行梯度更新,以得到更新后的生成模块的生成器Gθ。
(8-13)利用步骤(8-12)更新后的生成模型的生成器和步骤(8-8)更新后的生成模型的判别器重复执行执行步骤(8-5)至步骤(8-12),直到生成模块收敛为止,从而得到训练好的抗癌肽生成模型。
优选地,步骤(8-12)中,
线性组合奖励的计算方式如下:
其中,st是Gθ生成的第t个令牌,S1:t-1是Gθ生成的第t-1个多肽序列段,是完整多肽序列的序列奖励,是完整多肽序列的分子指纹的结构奖励,FP(S1:t-1,st)表示完整多肽序列的分子指纹形式,μ是小于1的混合常数;
利用梯度上升,Gθ目标函数的梯度和梯度更新计算方式如下:
θ←θ+αJ(θ)
其中,θ是生成器Gθ的参数,T是完整多肽序列的长度,α是学习率,st是Gθ生成的第t个令牌,S1:t-1是Gθ生成的第t-1个多肽序列段,Gθ(st|S1:t-1)生成一个多肽序列段,是线性组合奖励,为期望,可以近似为蒙特卡洛采样方法,表示对生成器Gθ求导,是目标函数梯度。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
1、由于本发明采用了步骤(3),其利用深度学习中的序列生成对抗网络和图神经网络,所以不需要人工设计特征处理器,模型可以自动提取数据特征和更新;此外其利用一般多肽数据来预训练抗癌肽生成模型的生成模块,因此可以学习到一般多肽数据的序列性质;
2、由于本发明采用了步骤(8),其利用抗癌肽生成模型的生成模块中的判别器和预测模块提供的对抗癌肽生成模型生成多肽的线性组合奖励作为反馈信息,使得生成模块在更加丰富和多样化的信息中学习到多肽的抗癌性质与其他药物相关性质。
3、由于本发明采用了步骤(4)到步骤(8),其利用抗癌肽生成模型的预测模块学习抗癌肽的结构信息,并在之后给抗癌肽生成模型提供反馈信息,使得抗癌肽生成模型可以利用强化学习同时将抗癌肽的序列信息和结构信息融入训练中,学习抗癌性质的多肽序列和多肽结构的抗癌肽序列的生成。
附图说明
图1是本发明提供的基于策略梯度和结构信息的抗癌肽生成模型的训练方法的整体流程图;
图2是本发明提供的基于策略梯度和结构信息的抗癌肽生成模型的整体架构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明的基本思路在于,提供一种创新性的基于策略梯度和结构信息的抗癌肽生成模型的训练方法,其将生成对抗网络的生成器作为强化学习中的策略,利用强化学习中的策略梯度,将基于图神经网络的预测模块和生成对抗网络中的判别器对生成多肽的打分的线性组合作为奖励来指导生成器的更新,在学习有效多肽语法的基础上进一步学习包含特定性质及结构-性质关系的生成规则,实现高置信度的抗癌肽从头生成。
如图2所示,本发明提供了一种抗癌肽生成模型,包括生成模块和预测模块两个部分。其中,生成模块是包含2个具有相同结构的生成器和1个判别器的序列生成对抗网络(Sequence Generative Adversarial Network,简称SeqGAN);
生成器的结构如下:
第1层为嵌入层,输入大小为20的多肽序列索引向量,输出一个20*32的嵌入矩阵;
第2层为基于门控循环单元(Gate Recurrent Unit,简称GRU)的循环神经网络(Recurrent Neural Network,简称RNN)层,在每个时间步,输入为20*32维矩阵,输出1*32的隐藏单元向量,最后输出20个1*32的隐藏单元向量;
第3层为Softmax输出层,输入为1*32的每个时间步的输出的隐藏单元向量,通过线性映射和Softmax激活函数,输出1*20的向量,最后输出20*20的矩阵;
另一个生成器是推出(Roll-out)策略需要的生成器,和第一个生成器具有同样的结构。
判别器中,第1层为嵌入层,输入20*20的多肽序列独热编码,利用一个20*64的矩阵,输出一个20*64的嵌入矩阵;
第2层为卷积层,输入20*64的嵌入矩阵,其中有2种卷积核,大小分别为2和3,步长为1,数量分别为100个和200个,输出大小分别为19*100和18*200的特征矩阵;
第3层为线性整流函数(REctified Linear Unit,简称RELU)层,利用RELU非线性激活函数,输入和输出19*100和18*200的特征矩阵;
第4层为池化层,输入19*100和18*200的特征矩阵,利用最大池化选取每个特征向量中的最大值,然后将得到的1*100和1*200的矩阵拼接,输出1*300的多肽序列特征向量;
第5层为Highway层,输入和输出1*300的特征向量;
第6层为丢弃层,输入和输出1*300的特征向量;
第7层为Softmax输出层,输入1*300的特征向量,利用一个300*2的矩阵,通过线性映射和Softmax激活函数,得到1*2的向量,最后经过Argmax函数输出1个数值。
预测模块是基于图神经网络(Graph Neural Network,简称GNN)的抗癌肽预测器,其具体结构为:
第1层为嵌入层,输入大小为N的分子指纹向量,输出N*50的嵌入矩阵,其中N是分子指纹的长度,即原子数量;
第2层为GNN层,输入N*50的嵌入矩阵和N*N的邻接矩阵,利用线性映射和ReLU激活函数、特征矩阵更新函数和对每个特征维度的均值求解,输出1*50的向量;
第3、4和5层均为和第2层相同的GNN层,输入和输出也与第2层相同;
第6层为ReLU激活层,将2-5层输出的向量进行连接,以得到1*200的向量,经过线性映射和ReLU激活函数,输出1*800向量;
第7层为全连接层,输入1*800的向量,输出1*2的向量。
上述抗癌肽生成模型的优点在于,利用基于强化学习的序列生成对抗网络,解决了离散数据的反向传播问题并且使得生成中间状态得以被评价;同时将图神经网络作为提供反馈给生成模型的结构预测器,由于结构预测器保证了多肽在结构上满足抗癌或其他药物性质,使得生成模型在更加丰富和多样化的信息中学习到抗癌肽相关性质,从而提高抗癌肽设计和开发的效率。
使用生成器作为强化学习中的策略,利用强化学习中的策略梯度,将基于图神经网络的预测模块和生成对抗网络中的判别器对生成多肽的打分的线性组合作为奖励来指导生成器的更新,在学习有效多肽语法的基础上进一步学习包含特定性质及结构-性质关系的生成规则,实现高置信度的抗癌肽从头生成。
如图1所示,其为本发明抗癌肽生成模型的训练方法的整体流程图,该训练方法包括以下步骤:
(1)获取一般多肽序列数据、抗癌肽序列数据和非抗癌肽序列数据,并根据氨基酸词表对一般多肽序列数据、抗癌肽序列数据和非抗癌肽序列数据进行数字编码,以得到一般多肽序列数据集、抗癌肽序列数据集和非抗癌肽序列数据集。
(2)将步骤(1)得到的一般多肽序列数据集、抗癌肽序列数据集和非抗癌肽序列数据集分别按照训练集和测试集8:2的比例进行划分,以得到一般多肽序列训练集和测试集、抗癌肽序列训练集和测试集和非抗癌肽序列训练集和测试集。
(3)将步骤(2)得到的一般多肽序列训练集输入抗癌肽生成模型的生成模块中,并使用反向传播算法对生成模块中每层的权重参数和偏置参数进行更新和优化,以得到预训练好的生成模块;
本步骤具体为:
(3-1)将步骤(2)得到的一般多肽序列训练集的数值编码向量输入到抗癌肽生成模型中生成模块的生成器的嵌入层,以得到嵌入矩阵x={x1,...,xn},其中n表示多肽序列长度,x1表示在一条多肽序列里第一个氨基酸的嵌入向量,xn表示在一条多肽序列里第n个氨基酸的嵌入向量;
(3-2)将步骤(3-1)得到的嵌入矩阵x={x1,...,xn}输入到生成模块中生成器的基于GRU的RNN层,以得到n个隐藏向量{h1,...,hn};
具体的,n个隐藏向量{h1,...,hn}是通过按顺序对n个嵌入向量{x1,...,xn}使用更新函数g得到的,在生成n个隐藏向量的过程中,第t个时间步的隐藏向量ht由嵌入向量xt和第t-1个时间步的隐藏向量ht-1决定,其计算公式为:
ht=g(xt,ht-1)
其中t∈[1,n],xt是第t个时间步的嵌入向量,ht是第t个时间步的隐藏向量,g为更新函数;
(3-3)将步骤(3-2)得到的n个隐藏向量{h1,...,hn}输入到生成模块中生成器的Softmax层,以得到生成多肽序列,其包括n个时间步的生成器输出令牌;
具体的,每个时间步的生成器输出令牌的计算方式为:
yt=softmax(Wht+b)
其中t∈[1,n],W是权重矩阵,b是偏置向量,ht是第t个时间步的隐藏向量,yt表示第t个时间步的生成器输出令牌,softmax()表示softmax激活函数;
(3-4)使用步骤(3-3)得到的生成多肽序列与步骤(2)得到的一般多肽序列训练集的交叉熵损失对生成模块的生成器进行梯度更新,并对更新后的生成器进行迭代训练,直到损失函数最小为止,从而得到预训练好的生成模块的生成器Gθ;
具体的,第t个时间步的交叉熵损失的计算方式为:
Lt=-ytlo^t
上述子步骤(3-2)到子步骤(3-4)的优点在于,通过预训练使得抗癌肽生成模型的生成模块更快的收敛;
(3-5)利用步骤(3-4)得到的生成模块的生成器采样到固定长度的多肽序列;
(3-6)将步骤(2)得到的一般多肽序列训练集和步骤(3-5)得到的多肽序列依次输入到生成模块中判别器的嵌入层、卷积层、RELU层、池化层、Highway层和丢弃层,以得到特征矩阵;
(3-7)将步骤(3-6)得到的特征矩阵输入到生成模块中判别器的Softmax层,以得到判别分数;
(3-8)利用步骤(3-7)得到的判别分数的交叉熵损失对生成模块的判别器进行梯度更新,并对更新后的判别器进行迭代训练,直到损失函数最小为止,从而得到预训练好的生成模块的判别器D;
具体的,判别器的损失计算方式如下:
其中,yi是一般多肽序列训练集中的第i个多肽序列,是生成的多肽序列集中的一个多肽序列,D()是判别器D的判别分数,BCE()表示计算判别分数和真实标签0或1的交叉熵,N表示一般多肽序列训练集中多肽序列的数量,LD是判别器损失;
(3-9)将步骤(3-4)得到的生成模块的生成器Gθ作为Roll-out生成器Gβ使用;
(3-10)利用步骤(3-4)得到的生成模块的生成器Gθ生成多肽序列段,利用步骤(3-9)得到的Roll-out生成器Gβ对多肽序列段生成后续的令牌,以得到完整多肽序列,并将生成的完整多肽序列输入到步骤(3-8)得到的生成模块的判别器D,以得到生成的完整多肽序列的序列奖励;
具体的,核心思想是利用强化学习中的策略梯度方法,选择最好的策略,并调整策略;本方法将生成模块的生成器Gθ当做策略,生成模块的生成器Gθ的目标是最大化期望奖励,计算方式如下:
其中,J()为目标函数,是期望,θ是生成模块的生成器Gθ的参数,Gθ(st|S1:t-1)生成一个多肽序列段,是序列奖励,S是Gθ生成的多肽序列;希望得到生成模型的参数θ,使得生成模型能在S1:t-1处做出最佳选择,以在生成第T个(最后一个)多肽序列时获得大回报RT,如何得到最佳选择取决于序列奖励
在生成器Gθ生成多肽过程中,为了评价中间状态的动作-价值,运用蒙特卡洛搜索算法探索某中间令牌st以及该中间令牌的后续多肽序列St:T的可能性,在生成器Gθ生成的多肽序列段S1:t的基础上,利用Roll-out生成器Gβ生成完整多肽序列;为了增加多肽序列评估的准确性,序列奖励采用生成的N个完整多肽序列的判别分数的平均值,序列奖励的计算方式如下:
其中,st是Gθ生成的第t个令牌,T表示完整多肽序列的长度,S1:t是生成器Gθ生成的第t个多肽序列段,表示在Gθ生成多肽序列段S1:t时,利用蒙特卡洛采样,在多肽序列段的基础上,利用Roll-out生成器Gβ生成N个长度为T的完整多肽序列;t<T时,表示判别器D对Gβ生成的完整多肽序列的判别分数,t=T时,表示判别器D对Gθ生成的完整多肽序列的判别分数;
(3-11)根据步骤(3-10)得到的生成的完整多肽序列的序列奖励获取期望奖励,通过最大化该期望奖励对步骤(3-4)得到的生成器Gθ的参数进行梯度更新,以得到更新后的生成模块的生成器Gθ;
具体的,利用梯度上升,生成模块的生成器Gθ目标函数的梯度即梯度更新计算方式如下:
θ←θ+αJ(θ)
上述子步骤(3-9)到子步骤(3-11)的优点在于,利用强化学习解决了离散数据的反向传播问题,并可以对多肽序列生成过程的中间序列进行评估;
(3-12)利用步骤(3-11)更新后的生成模块的生成器Gθ进行采样,以得到多个多肽序列样本;
(3-13)将步骤(2)得到的一般多肽序列训练集和步骤(3-12)采样的多肽序列样本输入到步骤(3-8)得到的生成模块的判别器,并重复执行一次步骤(3-6)-(3-8),以得到更新的生成模块判别器;
(3-14)将步骤(3-11)得到的生成模块的生成器Gθ作为Roll-out生成器Gβ使用,利用步骤(3-11)得到的生成模块的生成器Gθ生成多肽序列段,利用Roll-out生成器Gβ对多肽序列段生成后续的令牌,以得到完整多肽序列,并将生成的完整多肽序列输入到步骤(3-13)得到的生成模块的判别器D,以得到生成的完整多肽序列的序列奖励;
具体的,本步骤和步骤(3-10)中的计算过程一样,此处不再赘述;
(3-15)根据步骤(3-15)得到的生成的完整多肽序列的序列奖励获取期望奖励,通过最大化该期望奖励对步骤(3-11)得到的生成器Gθ的参数进行梯度更新,以得到更新后的生成模块的生成器Gθ;
具体的,本步骤和步骤(3-11)中的计算一样,此处不再赘述;
(3-16)重复执行步骤(3-12)至步骤(3-15),直到生成模块中的生成器和判别器收敛为止,从而得到预训练好的抗癌肽生成模型的生成模块。
具体的,重复步骤中使用的生成器和判别器都是最新步骤中更新的,目的是让生成器和判别器对抗训练;
本步骤的优点在于,用一般多肽训练集预训练抗癌肽生成模型的生成模块,使得模型学习到一般多肽的语法规则,生成更合理的多肽序列;
(4)使用RDKit工具包分别将步骤(1)得到的抗癌肽序列数据和非抗癌肽序列数据中的氨基酸序列格式分别转换成抗癌肽分子图数据和和非抗癌肽分子图数据。
具体的,分子图表示包括不同的分子数据信息,比如原子,化学键和坐标。记为G=(V,E),其中V为节点的集合,E为边的集合,G(v)表示节点v∈V的所有相邻节点的集合。在分子图中,u∈V代表一个原子,(u,v)∈E代表原子u和原子v之间的化学键。边(u,v)和边(v,u)相同。
(5)利用一维魏斯菲勒雷曼(1-Weisfeiler-Lehman,简称1-WL)算法编码步骤(4)得到的抗癌肽分子图数据和和非抗癌肽分子图数据并设置标签,以得到抗癌肽分子指纹数据和非抗癌肽分子指纹数据(其均用数值向量表示,且分别包含分子指纹和邻接矩阵);
其中,表示在第t次迭代更新节点v的标签,表示在第t-1次迭代更新节点u的标签,表示在第t次迭代更新节点u和v之间的边的标签,N(v)表示节点v的邻居节点集合,HASH()表示运用哈希单射函数可以将公式中得到的所有数据组映射成独一无二的整数;
将抗癌肽分子指纹数据标记为1且设定为正样本,将非抗癌肽分子指纹数据标记为0且设定为负样本;
上述步骤(4)到步骤(5)的优点在于,分子结构对多肽的物理与化学性质有决定性的关系,用分子指纹可以有效地表示多肽的结构;
(6)将步骤(5)得到的抗癌肽分子指纹数据和非抗癌肽分子指纹数据按照训练集和测试集8:2的比例进行划分,以得到抗癌肽分子指纹训练集和测试集,非抗癌肽分子指纹训练集和测试集。
(7)将步骤(6)得到的抗癌肽分子指纹训练集和非抗癌肽分子指纹训练集输入到抗癌肽生成模型的预测模块中,并使用反向传播算法对预测模块中每层的权重参数和偏置参数进行更新和优化,以得到更新后的抗癌肽生成模型的预测模块;
本步骤具体为:
(7-1)将步骤(6)得到的抗癌肽分子指纹训练集和非抗癌肽分子指纹训练集输入到预测模块的嵌入层,以得到分子指纹的嵌入矩阵H;
(7-2)将步骤(7-1)得到的嵌入矩阵H和相应的邻接矩阵A输入到预测模块的GNN层,以得到特征向量;
具体的,经过i层GNN层的特征向量Hi的更新公式如下:
Hi=Hi-1+A·relu(WGNNHi-1)
其中,i为第i个GNN层,relu(Rectified Linear Unit)是一个非线性激活函数;WGNN为GNN层的权重矩阵,A是特征向量相应的邻居矩阵;
(7-3)将步骤(7-2)得到的i个特征向量拼接起来,输入到relu线性层和全连接层,再经过Softmax层,以得到预测向量;
(7-4)将步骤(7-3)得到的预测向量和相应的步骤(5)得到数据标签的交叉熵损失来进行梯度更新,对更新的预测模块进行迭代训练,直到损失函数最小为止,从而得到预训练好的抗癌肽生成模型的预测模块。
本步骤的优点在于,利用预测模块学习抗癌肽的结构信息,并在之后给抗癌肽生成模型提供反馈信息,使得生成模块在更加丰富和多样化的信息中学习到多肽的抗癌性质与其他药物相关性质。
(8)将步骤(2)得到的抗癌肽序列训练集输入到步骤(3)得到的抗癌肽生成模型的生成模块中,并使用反向传播算法对抗癌肽生成模型的生成模块中每层的权重参数和偏置参数进行更新和优化,以得到微调好的抗癌肽生成模型的生成模块,从而得到训练好的抗癌肽生成模型。
本步骤具体为:
(8-1)将步骤(2)得到的抗癌肽序列训练集的数值编码向量输入到抗癌肽生成模型中生成模块的生成器的嵌入层,以得到嵌入矩阵x={x1,...,xn},其中n表示多肽序列长度,x1表示在一条多肽序列里第一个氨基酸的嵌入向量,xn表示在一条多肽序列里第n个氨基酸的嵌入向量;
(8-2)将步骤(8-1)得到的嵌入矩阵x={x1,...,xn}输入到生成模块中生成器的基于GRU的RNN层,以得到n个隐藏向量{h1,...,hn};
具体的计算在步骤(3-2)中已经阐述,此处不再赘述;
(8-3)将步骤(8-2)得到的n个隐藏向量{h1,...,hn}输入到生成模块中生成器的Softmax层,以得到生成多肽序列,其包括n个时间步的生成器输出令牌;
具体的计算在步骤(8-2)中已经阐述,此处不再赘述;
(8-4)对步骤(8-3)得到的生成多肽序列与步骤(2)得到的抗癌肽序列训练集的交叉熵损失对生成模块的生成器进行梯度更新,并对更新后的生成器进行迭代训练,直到损失函数最小为止,从而得到预训练好的生成模块的生成器Gθ;
具体的计算在步骤(8-2)中已经阐述,此处不再赘述;
(8-5)利用步骤(8-4)得到的生成模块的生成器采样到固定长度的多肽序列;
(8-6)将步骤(2)得到的抗癌肽序列训练集和步骤(8-5)得到的多肽序列依次输入到生成模块中判别器的嵌入层、卷积层、RELU层、池化层、Highway层和丢弃层,以得到特征矩阵;
(8-7)将步骤(8-6)得到的特征矩阵输入到生成模块中判别器的Softmax层,以得到判别分数;
(8-8)利用步骤(8-7)得到的判别分数的交叉熵损失对生成模块的判别器进行梯度更新,并对更新后的判别器进行迭代训练,直到损失函数最小为止,从而得到预训练好的生成模块的判别器D;
(8-9)将步骤(8-4)得到的生成模块的生成器Gθ同时作为Roll-out生成器Gβ使用;
(8-10)利用步骤(8-4)得到的生成模块的生成器Gθ生成多肽序列段,利用步骤(8-9)得到的Roll-out生成器Gβ对生成的多肽序列段生成后续的令牌,以得到完整的多肽序列,并将生成的完整多肽序列输入到步骤(8-8)得到的生成模块的判别器D,以得到生成的完整多肽序列的序列奖励;
具体的,本步骤采用的蒙特卡洛搜索算法和序列奖励的计算已在(3-10)中解释,此处不再赘述;
(8-11)针对步骤(8-10)得到的完整的多肽序列而言,通过上述步骤(4)和(5)的计算方法得到该多肽序列对应的分子指纹,然后将分子指纹输入到步骤(7)得到的预测模块,以得到生成的完整多肽序列数据的结构奖励;
具体的,要得到分子指纹,首先将多肽序列通过字典解码成氨基酸序列,然后使用RDKit工具包将氨基酸序列转换成mol格式的分子图,接着利用1-WL算法编码该分子图数据,以得到分子指纹;详细的信息和计算已在步骤(4)和(5)中解释,此处不再赘述;
结构奖励的计算方式和序列奖励一致;
(8-12)将步骤(8-10)得到的完整多肽序列的序列奖励和步骤(8-11)得到的完整多肽序列的结构奖励进行线性组合,以获取线性组合奖励,通过最大化期望线性组合奖励对步骤(8-4)得到的生成器Gθ的参数进行梯度更新,以得到更新后的生成模块的生成器Gθ;
具体的,线性组合奖励的计算方式如下:
其中,st是Gθ生成的第t个令牌,S1:t-1是Gθ生成的第t-1个多肽序列段,是完整多肽序列的序列奖励,是完整多肽序列的分子指纹的结构奖励,FP(S1:t-1,st)表示完整多肽序列的分子指纹形式,μ是小于1的混合常数;
利用梯度上升,Gθ目标函数的梯度和梯度更新计算方式如下:
θ←θ+αJ(θ)
其中,θ是生成器Gθ的参数,T是完整多肽序列的长度,α是学习率,st是Gθ生成的第t个令牌,S1:t-1是Gθ生成的第t-1个多肽序列段,Gθ(st|S1:t-1)生成一个多肽序列段,是线性组合奖励,为期望,可以近似为蒙特卡洛采样方法,表示对生成器Gθ求导,是目标函数梯度;
本子步骤的优点在于,利用强化学习同时将抗癌肽的序列信息和结构信息融入了抗癌肽序列生成模型的训练中,使得抗癌肽生成模型学习抗癌性质的多肽序列和多肽结构的抗癌肽序列的生成。
(8-13)利用步骤(8-12)更新后的生成模型的生成器和步骤(8-8)更新后的生成模型的判别器重复执行执行步骤(8-5)至步骤(8-12),直到生成模块收敛为止,从而得到训练好的抗癌肽生成模型。
测试结果
使用双语评估替补(BiLingual Evaluation Understudy,简称BLUE)来评估所述抗癌肽生成模型的性能,根据基于统计语言模型的算法N-Gram,将评价指标划分为BLUE-1、BLUE-2、BLUE-3、BLUE-4,将本发明所述抗癌肽生成模型命名为strGAN,表1评价了strGAN与三个基线模型RNN、SeqGAN和VAE的对比,可以看到,strGAN达到了和基线相当的水平。且在加入基于结构的性质预测模块的分数并和GAN中的判别器各占一定比例作为奖励时(μ=0.5),抗癌肽生成模型的性能要比仅有判别器结果作奖励(μ=1)或者仅有性质预测模块结果作奖励(μ=0)都更好。
表1
BLUE-1 | BLUE-2 | BLUE-3 | BLUE-4 | |
RNN | 0.879 | 0.903 | 0.736 | 0.367 |
SeqGAN | 0.853 | 0.921 | 0.724 | 0.358 |
VAE | 0.947 | 0.957 | 0.768 | 0.375 |
strGAN(μ=0) | 0.913 | 0.902 | 0.745 | 0.457 |
strGAN(μ=0.5) | 0.934 | 0.928 | 0.779 | 0.429 |
strGAN(μ=1) | 0.920 | 0.913 | 0.730 | 0.436 |
与其他模型相比,本发明克服了当前深度学习生成多肽上对结构信息的利用不足、采样效果低和筛选步骤繁琐等缺点,通过采取强化学习中的策略梯度,用图神经网络预测期器和GAN本身的判别器作为奖励函数,从而训练出可以生成高置信度的生成模型,达到了多肽自动筛选的效果。由于结构预测器保证了多肽的某些特定化学性质,所以生成器可以生成性质更稳定、更易于合成和可成药性的多肽,提高了治疗肽设计和开发的效率。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种抗癌肽生成模型,包括生成模块和预测模块两个部分。其中生成模块是序列生成对抗网络SeqGAN,且包括2个具有相同结构的生成器和1个判别器,其特征在于,
生成器的结构如下:
第1层为嵌入层,输入大小为20的多肽序列索引向量,输出一个20*32的嵌入矩阵;
第2层为基于门控循环单元GRU的循环神经网络RNN层,在每个时间步,输入为20*32维矩阵,输出1*32的隐藏单元向量,最后输出20个1*32的隐藏单元向量;
第3层为Softmax输出层,输入为1*32的每个时间步的输出的隐藏单元向量,通过线性映射和Softmax激活函数,输出1*20的向量,最后输出20*20的矩阵;
另一个生成器是推出策略需要的生成器,和第一个生成器具有同样的结构。
判别器的结构如下:
第1层为嵌入层,输入20*20的多肽序列独热编码,利用一个20*64的矩阵,输出一个20*64的嵌入矩阵;
第2层为卷积层,输入20*64的嵌入矩阵,其中有2种卷积核,大小分别为2和3,步长为1,数量分别为100个和200个,输出大小分别为19*100和18*200的特征矩阵;
第3层为线性整流函数RELU层,利用RELU非线性激活函数,输入和输出19*100和18*200的特征矩阵;
第4层为池化层,输入19*100和18*200的特征矩阵,利用最大池化选取每个特征向量中的最大值,然后将得到的1*100和1*200的矩阵拼接,输出1*300的多肽序列特征向量;
第5层为Highway层,输入和输出1*300的特征向量;
第6层为丢弃层,输入和输出1*300的特征向量;
第7层为Softmax输出层,输入1*300的特征向量,利用一个300*2的矩阵,通过线性映射和Softmax激活函数,得到1*2的向量,最后经过Argmax函数输出1个数值。
预测模块是基于图神经网络GNN的抗癌肽预测器,其具体结构为:
第1层为嵌入层,输入大小为N的分子指纹向量,输出N*50的嵌入矩阵,其中N是分子指纹的长度,即原子数量;
第2层为GNN层,输入N*50的嵌入矩阵和N*N的邻接矩阵,利用线性映射和ReLU激活函数、特征矩阵更新函数和对每个特征维度的均值求解,输出1*50的向量;
第3、4和5层均为和第2层相同的GNN层,输入和输出也与第2层相同;
第6层为ReLU激活层,将2-5层输出的向量进行连接,以得到1*200的向量,经过线性映射和ReLU激活函数,输出1*800向量;
第7层为全连接层,输入1*800的向量,输出1*2的向量。
2.一种抗癌肽生成模型的训练方法,其特征在于,包括以下步骤:
(1)获取一般多肽序列数据、抗癌肽序列数据和非抗癌肽序列数据,并根据氨基酸词表对一般多肽序列数据、抗癌肽序列数据和非抗癌肽序列数据进行数字编码,以得到一般多肽序列数据集、抗癌肽序列数据集和非抗癌肽序列数据集。
(2)将步骤(1)得到的一般多肽序列数据集、抗癌肽序列数据集和非抗癌肽序列数据集分别按照训练集和测试集8:2的比例进行划分,以得到一般多肽序列训练集和测试集、抗癌肽序列训练集和测试集和非抗癌肽序列训练集和测试集。
(3)将步骤(2)得到的一般多肽序列训练集输入抗癌肽生成模型的生成模块中,并使用反向传播算法对生成模块中每层的权重参数和偏置参数进行更新和优化,以得到预训练好的生成模块;
(4)使用RDKit工具包分别将步骤(1)得到的抗癌肽序列数据和非抗癌肽序列数据中的氨基酸序列格式分别转换成抗癌肽分子图数据和和非抗癌肽分子图数据;
(5)利用一维魏斯菲勒雷曼1-WL算法编码步骤(4)得到的抗癌肽分子图数据和和非抗癌肽分子图数据并设置标签,以得到抗癌肽分子指纹数据和非抗癌肽分子指纹数据,其均用数值向量表示,且分别包含分子指纹和邻接矩阵;
(6)将步骤(5)得到的抗癌肽分子指纹数据和非抗癌肽分子指纹数据按照训练集和测试集8:2的比例进行划分,以得到抗癌肽分子指纹训练集和测试集,非抗癌肽分子指纹训练集和测试集。
(7)将步骤(6)得到的抗癌肽分子指纹训练集和非抗癌肽分子指纹训练集输入到抗癌肽生成模型的预测模块中,并使用反向传播算法对预测模块中每层的权重参数和偏置参数进行更新和优化,以得到更新后的抗癌肽生成模型的预测模块;
(8)将步骤(2)得到的抗癌肽序列训练集输入到步骤(3)得到的抗癌肽生成模型的生成模块中,并使用反向传播算法对抗癌肽生成模型的生成模块中每层的权重参数和偏置参数进行更新和优化,以得到微调好的抗癌肽生成模型的生成模块,从而得到训练好的抗癌肽生成模型。
3.根据权利要求2所述的抗癌肽生成模型的训练方法,其特征在于,步骤(3)包括以下子步骤:
(3-1)将步骤(2)得到的一般多肽序列训练集的数值编码向量输入到抗癌肽生成模型中生成模块的生成器的嵌入层,以得到嵌入矩阵x={x1,…,xn},其中n表示多肽序列长度,x1表示在一条多肽序列里第一个氨基酸的嵌入向量,xn表示在一条多肽序列里第n个氨基酸的嵌入向量;
(3-2)将步骤(3-1)得到的嵌入矩阵x={x1,…,xn}输入到生成模块中生成器的基于GRU的RNN层,以得到n个隐藏向量{h1,…,hn};
其中n个隐藏向量{h1,…,hn}是通过按顺序对n个嵌入向量{x1,…,xn}使用更新函数g得到的,在生成n个隐藏向量的过程中,第t个时间步的隐藏向量ht由嵌入向量xt和第t-1个时间步的隐藏向量ht-1决定,其计算公式为:
ht=g(xt,ht-1)
其中t∈[1,n],xt是第t个时间步的嵌入向量,ht是第t个时间步的隐藏向量,g为更新函数;
(3-3)将步骤(3-2)得到的n个隐藏向量{h1,…,hn}输入到生成模块中生成器的Softmax层,以得到生成多肽序列,其包括n个时间步的生成器输出令牌;
其中每个时间步的生成器输出令牌的计算方式为:
yt=softmax(Wht+b)
其中t∈[1,n],W是权重矩阵,b是偏置向量,ht是第t个时间步的隐藏向量,yt表示第t个时间步的生成器输出令牌,softmax()表示softmax激活函数;
(3-4)使用步骤(3-3)得到的生成多肽序列与步骤(2)得到的一般多肽序列训练集的交叉熵损失对生成模块的生成器进行梯度更新,并对更新后的生成器进行迭代训练,直到损失函数最小为止,从而得到预训练好的生成模块的生成器Gθ;
其中第t个时间步的交叉熵损失的计算方式为:
(3-5)利用步骤(3-4)得到的生成模块的生成器采样到固定长度的多肽序列;
(3-6)将步骤(2)得到的一般多肽序列训练集和步骤(3-5)得到的多肽序列依次输入到生成模块中判别器的嵌入层、卷积层、RELU层、池化层、Highway层和丢弃层,以得到特征矩阵;
(3-7)将步骤(3-6)得到的特征矩阵输入到生成模块中判别器的Softmax层,以得到判别分数;
(3-8)利用步骤(3-7)得到的判别分数的交叉熵损失对生成模块的判别器进行梯度更新,并对更新后的判别器进行迭代训练,直到损失函数最小为止,从而得到预训练好的生成模块的判别器D;
其中判别器的损失计算方式如下:
其中,yi是一般多肽序列训练集中的第i个多肽序列,是生成的多肽序列集中的一个多肽序列,D()是判别器D的判别分数,BCE()表示计算判别分数和真实标签0或1的交叉熵,N表示一般多肽序列训练集中多肽序列的数量,LD是判别器损失;
(3-9)将步骤(3-4)得到的生成模块的生成器Gθ作为Roll-out生成器Gβ使用;
(3-10)利用步骤(3-4)得到的生成模块的生成器Gθ生成多肽序列段,利用步骤(3-9)得到的Roll-out生成器Gβ对多肽序列段生成后续的令牌,以得到完整多肽序列,并将生成的完整多肽序列输入到步骤(3-8)得到的生成模块的判别器D,以得到生成的完整多肽序列的序列奖励。
(3-11)根据步骤(3-10)得到的生成的完整多肽序列的序列奖励获取期望奖励,通过最大化该期望奖励对步骤(3-4)得到的生成器Gθ的参数进行梯度更新,以得到更新后的生成模块的生成器Gθ;
(3-12)利用步骤(3-11)更新后的生成模块的生成器Gθ进行采样,以得到多个多肽序列样本;
(3-13)将步骤(2)得到的一般多肽序列训练集和步骤(3-12)采样的多肽序列样本输入到步骤(3-8)得到的生成模块的判别器,并重复执行一次步骤(3-6)-(3-8),以得到更新的生成模块判别器;
(3-14)将步骤(3-11)得到的生成模块的生成器Gθ作为Roll-out生成器Gβ使用,利用步骤(3-11)得到的生成模块的生成器Gθ生成多肽序列段,利用Roll-out生成器Gβ对多肽序列段生成后续的令牌,以得到完整多肽序列,并将生成的完整多肽序列输入到步骤(3-13)得到的生成模块的判别器D,以得到生成的完整多肽序列的序列奖励;
(3-15)根据步骤(3-15)得到的生成的完整多肽序列的序列奖励获取期望奖励,通过最大化该期望奖励对步骤(3-11)得到的生成器Gθ的参数进行梯度更新,以得到更新后的生成模块的生成器Gθ;
(3-16)重复执行步骤(3-12)至步骤(3-15),直到生成模块中的生成器和判别器收敛为止,从而得到预训练好的抗癌肽生成模型的生成模块。
4.根据权利要求3所述的抗癌肽生成模型的训练方法,其特征在于,
最大化期望奖励的计算方式如下:
其中,J()为目标函数,是期望,θ是生成模块的生成器Gθ的参数,Gθ(st|S1:t-1)生成一个多肽序列段,是序列奖励,S是Gθ生成的多肽序列;希望得到生成模型的参数θ,使得生成模型能在S1:t-1处做出最佳选择,以在生成第T个(最后一个)多肽序列时获得大回报RT,如何得到最佳选择取决于序列奖励
其中,st是Gθ生成的第t个令牌,T表示完整多肽序列的长度,S1:t是生成器Gθ生成的第t个多肽序列段,表示在Gθ生成多肽序列段S1:t时,利用蒙特卡洛采样,在多肽序列段的基础上,利用Roll-out生成器Gβ生成N个长度为T的完整多肽序列;t<T时,表示判别器D对Gβ生成的完整多肽序列的判别分数,t=T时,表示判别器D对Gθ生成的完整多肽序列的判别分数;
利用梯度上升,生成模块的生成器Gθ目标函数的梯度即梯度更新计算方式如下:
θ←θ+αJ(θ)
6.根据权利要求5所述的抗癌肽生成模型的训练方法,其特征在于,步骤(7)包括以下子步骤:
(7-1)将步骤(6)得到的抗癌肽分子指纹训练集和非抗癌肽分子指纹训练集输入到预测模块的嵌入层,以得到分子指纹的嵌入矩阵H;
(7-2)将步骤(7-1)得到的嵌入矩阵H和相应的邻接矩阵A输入到预测模块的GNN层,以得到特征向量;
(7-3)将步骤(7-2)得到的i个特征向量拼接起来,输入到relu线性层和全连接层,再经过Softmax层,以得到预测向量;
(7-4)将步骤(7-3)得到的预测向量和相应的步骤(5)得到数据标签的交叉熵损失来进行梯度更新,对更新的预测模块进行迭代训练,直到损失函数最小为止,从而得到预训练好的抗癌肽生成模型的预测模块。
8.根据权利要求7所述的抗癌肽生成模型的训练方法,其特征在于,步骤(8)包括以下子步骤:
(8-1)将步骤(2)得到的抗癌肽序列训练集的数值编码向量输入到抗癌肽生成模型中生成模块的生成器的嵌入层,以得到嵌入矩阵x={x1,…,xn},其中n表示多肽序列长度,x1表示在一条多肽序列里第一个氨基酸的嵌入向量,xn表示在一条多肽序列里第n个氨基酸的嵌入向量;
(8-2)将步骤(8-1)得到的嵌入矩阵x={x1,…,xn}输入到生成模块中生成器的基于GRU的RNN层,以得到n个隐藏向量{h1,…,hn};
(8-3)将步骤(8-2)得到的n个隐藏向量{h1,…,hn}输入到生成模块中生成器的Softmax层,以得到生成多肽序列,其包括n个时间步的生成器输出令牌;
(8-4)对步骤(8-3)得到的生成多肽序列与步骤(2)得到的抗癌肽序列训练集的交叉熵损失对生成模块的生成器进行梯度更新,并对更新后的生成器进行迭代训练,直到损失函数最小为止,从而得到预训练好的生成模块的生成器Gθ;
(8-5)利用步骤(8-4)得到的生成模块的生成器采样到固定长度的多肽序列;
(8-6)将步骤(2)得到的抗癌肽序列训练集和步骤(8-5)得到的多肽序列依次输入到生成模块中判别器的嵌入层、卷积层、RELU层、池化层、Highway层和丢弃层,以得到特征矩阵;
(8-7)将步骤(8-6)得到的特征矩阵输入到生成模块中判别器的Softmax层,以得到判别分数;
(8-8)利用步骤(8-7)得到的判别分数的交叉熵损失对生成模块的判别器进行梯度更新,并对更新后的判别器进行迭代训练,直到损失函数最小为止,从而得到预训练好的生成模块的判别器D;
(8-9)将步骤(8-4)得到的生成模块的生成器Gθ同时作为Roll-out生成器Gβ使用;
(8-10)利用步骤(8-4)得到的生成模块的生成器Gθ生成多肽序列段,利用步骤(8-9)得到的Roll-out生成器Gβ对生成的多肽序列段生成后续的令牌,以得到完整的多肽序列,并将生成的完整多肽序列输入到步骤(8-8)得到的生成模块的判别器D,以得到生成的完整多肽序列的序列奖励;
(8-11)针对步骤(8-10)得到的完整的多肽序列而言,通过上述步骤(4)和(5)的计算方法得到该多肽序列对应的分子指纹,然后将分子指纹输入到步骤(7)得到的预测模块,以得到生成的完整多肽序列数据的结构奖励;
(8-12)将步骤(8-10)得到的完整多肽序列的序列奖励和步骤(8-11)得到的完整多肽序列的结构奖励进行线性组合,以获取线性组合奖励,通过最大化期望线性组合奖励对步骤(8-4)得到的生成器Gθ的参数进行梯度更新,以得到更新后的生成模块的生成器Gθ。
(8-13)利用步骤(8-12)更新后的生成模型的生成器和步骤(8-8)更新后的生成模型的判别器重复执行执行步骤(8-5)至步骤(8-12),直到生成模块收敛为止,从而得到训练好的抗癌肽生成模型。
9.根据权利要求8所述的抗癌肽生成模型的训练方法,其特征在于,步骤(8-12)中,
线性组合奖励的计算方式如下:
其中,st是Gθ生成的第t个令牌,S1:t-1是Gθ生成的第t-1个多肽序列段,是完整多肽序列的序列奖励,是完整多肽序列的分子指纹的结构奖励,FP(S1:t-1,st)表示完整多肽序列的分子指纹形式,μ是小于1的混合常数;
利用梯度上升,Gθ目标函数的梯度和梯度更新计算方式如下:
θ←θ+αJ(θ)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310149714.8A CN116030908A (zh) | 2023-02-22 | 2023-02-22 | 基于策略梯度和结构信息的抗癌肽生成模型及其训练方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310149714.8A CN116030908A (zh) | 2023-02-22 | 2023-02-22 | 基于策略梯度和结构信息的抗癌肽生成模型及其训练方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116030908A true CN116030908A (zh) | 2023-04-28 |
Family
ID=86091500
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310149714.8A Pending CN116030908A (zh) | 2023-02-22 | 2023-02-22 | 基于策略梯度和结构信息的抗癌肽生成模型及其训练方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116030908A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116705194A (zh) * | 2023-06-06 | 2023-09-05 | 之江实验室 | 一种基于图神经网络的药物抑癌敏感性预测方法与装置 |
CN117711532A (zh) * | 2024-02-05 | 2024-03-15 | 北京悦康科创医药科技股份有限公司 | 多肽氨基酸序列生成模型训练及相关产品 |
CN117809749A (zh) * | 2024-02-28 | 2024-04-02 | 普瑞基准科技(北京)有限公司 | 功能多肽序列的生成方法、装置、存储器和电子设备 |
-
2023
- 2023-02-22 CN CN202310149714.8A patent/CN116030908A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116705194A (zh) * | 2023-06-06 | 2023-09-05 | 之江实验室 | 一种基于图神经网络的药物抑癌敏感性预测方法与装置 |
CN116705194B (zh) * | 2023-06-06 | 2024-06-04 | 之江实验室 | 一种基于图神经网络的药物抑癌敏感性预测方法与装置 |
CN117711532A (zh) * | 2024-02-05 | 2024-03-15 | 北京悦康科创医药科技股份有限公司 | 多肽氨基酸序列生成模型训练及相关产品 |
CN117711532B (zh) * | 2024-02-05 | 2024-05-10 | 北京悦康科创医药科技股份有限公司 | 多肽氨基酸序列生成模型训练方法以及多肽氨基酸序列生成方法 |
CN117809749A (zh) * | 2024-02-28 | 2024-04-02 | 普瑞基准科技(北京)有限公司 | 功能多肽序列的生成方法、装置、存储器和电子设备 |
CN117809749B (zh) * | 2024-02-28 | 2024-05-28 | 普瑞基准科技(北京)有限公司 | 功能多肽序列的生成方法、装置、存储器和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Gu et al. | Stack-captioning: Coarse-to-fine learning for image captioning | |
CN116030908A (zh) | 基于策略梯度和结构信息的抗癌肽生成模型及其训练方法 | |
CN113326731B (zh) | 一种基于动量网络指导的跨域行人重识别方法 | |
CN112487820B (zh) | 一种中文医疗命名实体识别方法 | |
CN112733866B (zh) | 一种提高可控图像文本描述正确性的网络构建方法 | |
CN112417894B (zh) | 一种基于多任务学习的对话意图识别方法及识别系统 | |
CN109933808A (zh) | 一种基于动态配置解码的神经机器翻译方法 | |
Du et al. | Parameter-free loss for class-imbalanced deep learning in image classification | |
CN113420552B (zh) | 一种基于强化学习的生物医学多事件抽取方法 | |
CN112232395B (zh) | 一种基于联合训练生成对抗网络的半监督图像分类方法 | |
CN112732864A (zh) | 一种基于稠密伪查询向量表示的文档检索方法 | |
Zhu et al. | Collaborative decision-reinforced self-supervision for attributed graph clustering | |
CN114625882A (zh) | 提高图像文本描述独特多样性的网络构建方法 | |
CN115659254A (zh) | 一种双模态特征融合的配电网电能质量扰动分析方法 | |
Wang et al. | Out-of-distributed semantic pruning for robust semi-supervised learning | |
Zhang et al. | Unsupervised image clustering algorithm based on contrastive learning and K-nearest neighbors | |
CN114972904A (zh) | 一种基于对抗三元组损失的零样本知识蒸馏方法及系统 | |
CN114548106A (zh) | 一种基于albert的科协活动命名实体识别的方法 | |
Hui et al. | Cut your losses with squentropy | |
CN116645980A (zh) | 一种聚焦样本特征间距的全生命周期语音情感识别方法 | |
CN116681078A (zh) | 一种基于强化学习的关键词生成方法 | |
CN113792120B (zh) | 图网络的构建方法及装置、阅读理解方法及装置 | |
CN117291193A (zh) | 机器翻译方法、设备及存储介质 | |
CN114998731A (zh) | 智能终端导航场景感知识别的方法 | |
Elezi | Exploiting contextual information with deep neural networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |