一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于预训练语言模型的蛋白质构象感知表示学习方法

2022-06-29 14:32:48 来源:中国专利 TAG:


1.本发明属于表示学习领域,具体涉及一种基于预训练语言模型的蛋白质构象感知表示学习方法。


背景技术:

2.蛋白质是由数个氨基酸组成的序列数据,目前有众多研究利用自然语言中的语言模型学习蛋白质的嵌入表示,以预测蛋白质的结构和性质。
3.其中,无监督学习方法通过使用掩码语言模型目标为模型提供初始的参数,并在有标签数据集上与映射函数共同进行微调,学习蛋白质在任务空间上的表示,并应用于下游的预测任务。但是蛋白质作为一类大分子,在不同环境中会存在不同的构象,如可以通过氨基酸的化学性质进行自发的折叠,又可以通过与其它蛋白质的接触发生形态上的变化。而目前的蛋白质语言模型对于特定的蛋白质,只能给出唯一一种嵌入矩阵,很难同时处理好在结构预测和功能预测任务上的效果,限制了模型的表达能力和实际场景中的应用。
4.自然语言中提示符思想的成功表示说明语言模型具有很强的表达能力,可以通过改变序列局部符号对整体的输出产生人们期望的影响。传统的提示符思想在于使用已有的预训练模型,在语义空间内找到最优的提示符。但在蛋白质预训练模型中,语义单元是氨基酸,没有办法像语言提示符那样,可以由人工手动构建。其次,连续空间上的提示符缺乏可解释性。
5.专利文献cn 106845149 a公开了一种新的基于基因本体信息的蛋白质序列表示方法,首先使用blast程序搜索swiss-prot数据库找到蛋白质序列p所有的相似蛋白质序列,将训练数据集中所有蛋白质输入到go数据库中,搜寻每个蛋白质所具有的go本体信息;然后在基因本体库中搜寻p蛋白质所具有的标注基因本体信息;根据预测问题具有的m个标签,将p蛋白质定义为m个元素的离散向量,即通过将序列集中的蛋白质go信息,融合成新的蛋白质p的向量描述,来降低蛋白质的序列表示维度。
6.专利文献cn104134017a公开了一种基于紧凑特征表示的蛋白质作用关系对抽取方法,包括以下步骤:1)选取所需的语料,语料是以句子为单位,已经有了蛋白质实体的标注及实体关系的标注;2)舍弃步骤1)中不包含蛋白质实体或只包含一个蛋白质实体的句子,得到句子集合;3)用占位符替换句子中相应的蛋白质实体并进行占位符融合,再进行词性标注和句法分析;4)以每个实体对为单位,获取词、词性、句法和模板的特征;5)对步骤4)中获得的特征进行紧凑化表达的操作;6)利用支持向量机对从步骤4)得到的特征进行训练或者利用已训练的模型进行预测。该方法目的是尽最大努力利用句子中的可用信息,提升特征向量的信息量。
7.上述两件专利申请虽然有各自的优点,但是仍然存在没有考虑蛋白质构象导致得到的表示向量不准确的问题,限制蛋白质在结构预测和功能预测任务上的效果。


技术实现要素:

8.鉴于上述,本发明的目的是提供一种基于预训练语言模型的蛋白质构象感知表示学习方法,通过在多个数据集上联合预训练的方法,得到不同构象下的蛋白质表示,提升蛋白质在结构预测和功能预测任务的准确性。
9.为实现上述发明目的,本发明实施例提供了一种基于预训练语言模型的蛋白质构象感知表示学习方法,包括以下步骤:
10.获取由氨基酸序列组成的蛋白质,根据蛋白质构象构建不同数据集,为每类蛋白质构象定义提示符;
11.基于预训练语言模型构建表示学习模块,用于将每类提示符的嵌入表示融合到蛋白质的嵌入表示,以得到提示符标识下的蛋白质嵌入表示;
12.构建任务模块,用于针对每类蛋白质构象对应的任务,基于提示符标识下的蛋白质嵌入表示进行任务预测;
13.基于任务预测结果和标签构建每类任务的损失函数,结合所有类任务的损失函数和不同数据集,更新表示学习模块和任务模块的模型参数;
14.模型参数更新结束后,提取表示学习模块作为蛋白质表示模块。
15.在一个实施例中,所述表示学习模块包括提示符嵌入层、氨基酸嵌入层、融合层以及预训练语言模型,其中,提示符嵌入层用于学习每类提示符的嵌入表示,氨基酸嵌入层用于学习蛋白质的嵌入表示,融合层用于融合每类提示符的嵌入表示和蛋白质的嵌入表示得到融合表示,预训练语言模型用于对融合表示进行表示学习,得到每类提示符标识下的蛋白质嵌入表示;
16.所述任务模块包括每类蛋白质构象对应的任务映射层,每个任务映射层用于基于每类提示符标识下的蛋白质嵌入表示进行任务预测。
17.在一个实施例中,所述氨基酸嵌入层包括氨基酸信息嵌入层和氨基酸位置嵌入层,分别用于根据氨基酸序列提取氨基酸信息表示和氨基酸位置表示,氨基酸信息表示和氨基酸位置表示经叠加得到蛋白质的嵌入表示。
18.在一个实施例中,所述预训练语言模型为可插拔的掩码预训练语言模型,其中,掩码预训练语言模型包括bert、roberta、albert、xlnet。
19.在一个实施例中,所述任务映射层包括双层mlp,双层mlp用于基于每类提示符标识下的蛋白质嵌入表示进行任务预测。
20.在一个实施例中,针对每类预测任务,以最小化任务预测结果和标签的误差为损失函数。
21.在一个实施例中,所述蛋白质表示模块应用于蛋白质结构和/或蛋白质功能的预测任务;应用时,在蛋白质表示模块中,将所有类提示符的嵌入表示同时融合到蛋白质的嵌入表示,以得到全部提示符标识下的蛋白质嵌入表示;该全部提示符标识下的蛋白质嵌入表示用于蛋白质结构和/或蛋白质功能的预测。
22.在一个实施例中,所述将所有类提示符的嵌入表示同时融合到蛋白质的嵌入表示,包括:
23.将所有类提示符的嵌入表示先进行拼接,得到的拼接表示再与蛋白质的嵌入表示进行融合,该融合包括拼接方式、全连接映射和卷积映射。
24.在一个实施例中,所述蛋白质构象包括自然折叠状态、作用状态;
25.针对自然折叠状态,以具有掩码的氨基酸序列为样本,以正常氨基酸序列作为样本标签,组成数据集,该自然折叠状态对应的提示符为序列提示符,对应的任务为掩码氨基酸的预测任务;
26.针对作用状态,以至少2条氨基酸序列为样本,以蛋白质反应类型为样本标签,组成数据集,该作用状态对应的提示符为作用提示符,对应的任务为蛋白质作用的预测任务。
27.与现有技术相比,本发明具有的有益效果至少包括:
28.基于蛋白质数据构建以蛋白质构象为中心的不同数据集,通过添加提示符来反应蛋白质构象,来学习提示符标识下的蛋白质嵌入表示,在此基础上,采用不同提示符标识下的蛋白质嵌入表示进行不同预测任务,以让预训练语言模型计算多个不同预测任务的损失之和,以学习到更具区分度的构象提示符表示,融合该构象提示符表示的蛋白质嵌入表示能够提升蛋白质在结构预测和功能预测任务的准确性。
附图说明
29.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动前提下,还可以根据这些附图获得其他附图。
30.图1是基于预训练语言模型的蛋白质构象感知表示学习方法的流程图;
31.图2是实施例提供的蛋白质表示模块的构建过程示意图;
32.图3是实施例提供的蛋白质表示模块的应用过程示意图。
具体实施方式
33.为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。
34.图1是基于预训练语言模型的蛋白质构象感知表示学习方法的流程图。如图1所示,实施例提供的基于预训练语言模型的蛋白质构象感知表示学习方法,包括以下步骤:
35.步骤1,获取由氨基酸序列组成的蛋白质,根据蛋白质构象构建不同数据集,为每类蛋白质构象定义提示符。
36.实施例中,基于生物领域对蛋白质的实验结果,获得蛋白质结构数据,每条蛋白质结构数据由氨基酸序列组成,在获得蛋白质结构数据的同时,还获得蛋白质的功能数据,即蛋白质之间的相互作用数据,该相互作用数据为蛋白质的反应类型。
37.蛋白质构象是指蛋白质表现出来的不同状态,包括自然折叠状态、作用状态。在获得蛋白质数据后,根据不同蛋白质构象构建表现不同性质的数据集,为以蛋白质构象为中心的蛋白质数据处理方式提供基础,以进行针对不同预测任务的蛋白质嵌入表示学习。
38.实施例中,针对自然折叠状态,以具有掩码[mask]的氨基酸序列为样本,以正常氨基酸序列(不具有掩码的原始氨基酸序列)作为样本标签,组成氨基酸序列数据集。基于该氨基酸序列数据集,构建掩码氨基酸的预测任务,即利用氨基酸序列数据集进行掩码氨基
酸的预测任务,以学习蛋白质在自然折叠状态下的嵌入表示。
[0039]
实施例中,针对作用状态,以相互作用的至少2条氨基酸序列为样本,以蛋白质反应类型为样本标签,组成蛋白质相互作用数据集。基于该蛋白质相互作用数据集,构建蛋白质相互作用的预测任务,即利用蛋白质相互作用数据集进行蛋白质相互作用的预测任务,以学习学习蛋白质在作用状态下的嵌入表示。
[0040]
实施例中,蛋白质相互作用数据集中相互作用蛋白质以网络图的方式表示,在得到网络图后根据物种将网络图进行切割,并根据预训练语言模型剔除无法作为输入的蛋白质,对于训练中的每一步,选择一个物种的蛋白质作用网络,随机采样出总长度不超过2048个氨基酸的蛋白质,并得到子图的相互作用矩阵,用于输入表示学习模型。
[0041]
其中,蛋白质反应类型包括反应、表达、激活、翻译后修饰、结合、催化。在构建蛋白质相互作用数据集时,至少以一种蛋白质反应类型作为标签。
[0042]
实施例中,为了标记蛋白质构象,为每类蛋白质构象定义提示符,为自然折叠状态定义提示符为x
seq
,为作用状态定义提示符为x
ic
。提示符在学习过程中融合到蛋白质嵌入表示中,以标记蛋白质构象。
[0043]
步骤2,基于预训练语言模型构建表示学习模块,用于将每类提示符的嵌入表示融合到蛋白质的嵌入表示,以得到提示符标识下的蛋白质嵌入表示。
[0044]
实施例中,构建蛋白质嵌入表示的过程,将表示蛋白质构象的提示符添加到预训练语言模型的词表中,当蛋白质嵌入表示输入到预训练语言模型中,并带有蛋白质构象信息,预训练语言模型会将构象提示符的嵌入表示添加到蛋白质嵌入表示中。
[0045]
在一个实施方式中,如图2所示,表示学习模块包括提示符嵌入层、氨基酸嵌入层、融合层以及预训练语言模型,其中,提示符嵌入层用于将每类提示符映射到高位空间,以学习每类提示符的嵌入表示;氨基酸嵌入层用于将蛋白质映射到高纬空间,以学习蛋白质的嵌入表示;融合层用于融合每类提示符的嵌入表示和蛋白质的嵌入表示得到融合表示,融合层可以采用拼接、全连接映射以及卷积映射的方式进行嵌入表示的融合;预训练语言模型用于对融合表示进行表示学习,得到每类提示符标识下的蛋白质嵌入表示。
[0046]
在一个实施方式中,如图2所示,氨基酸嵌入层包括氨基酸信息嵌入层和氨基酸位置嵌入层,分别用于根据氨基酸序列提取氨基酸信息表示和氨基酸位置表示,氨基酸信息表示和氨基酸位置表示经叠加(图2中符号 )得到蛋白质的嵌入表示。其中,氨基酸信息表示表征了组成蛋白质的氨基酸信息,氨基酸位置表示表征了组成蛋白质的每个氨基酸的位置信息。
[0047]
实施例中,预训练语言模型为可插拔的掩码预训练语言模型,其中,掩码预训练语言模型包括bert、roberta、albert、xlnet。优选地,可以采用roberta。这些预训练语言模型对输入的融合表示进行表示学习,以得到每类提示符标识下的蛋白质嵌入表示。
[0048]
步骤3,构建任务模块,用于针对每类蛋白质构象对应的任务,基于提示符标识下的蛋白质嵌入表示进行任务预测。
[0049]
实施例中,任务模块包括每类蛋白质构象对应的任务映射层,每个任务映射层采用不同映射函数将每类提示符标识下的蛋白质嵌入映射到不同的任务空间,即进行不同任务预测。优选地,任务映射层可以采用双层mlp作为映射函数,进行不同任务预测。
[0050]
针对自然折叠状态对应的掩码氨基酸的预测任务,和针对作用状态对应的任务为
蛋白质作用的预测任务,任务模块包含2个任务映射层,分别为作用构象任务映射头和序列任务映射头,每个任务映射层均采用双层mlp作为映射函数。
[0051]
步骤4,基于任务预测结果和标签构建每类任务的损失函数,结合所有类任务的损失函数和不同数据集,更新表示学习模块和任务模块的模型参数。
[0052]
实施例中,针对每类预测任务,以最小化任务预测结果和标签的误差为损失函数。然后结合所有类预测任务的损失函数,在每类预测任务对应的数据集上优化表示学习模块和任务模块的模型参数,即优化提示符嵌入层、氨基酸嵌入层、融合层、预训练语言模型以及任务映射层的参数。
[0053]
实施例中,当蛋白质构象包括自然折叠状态、作用状态时,表示学习过程中,构建的总损失函数包括掩码氨基酸预测任务损失和蛋白质相互作用预测任务损失两部分,具体包括:
[0054]
在掩码氨基酸预测任务中,一个训练批次由n条蛋白质组成,对于其中的每一条氨基酸链,随机选择其中15%的氨基酸进行预测。用于预测的每个氨基酸,其有80%概率变为[mask]符号,10%概率变为其它氨基酸符号,10%概率保持不变,以这样的方式构建样本数据,得到蛋白质对(p,p

),其中,p

为被改变的蛋白质,p为原始蛋白质,作为蛋白质p

在掩码氨基酸预测任务中的标签。基于此,一条蛋白质中第i个氨基酸预测任务损失函数li(x,y)为:
[0055][0056]
其中,x表示预测结果,表示预测结果为真实标签yi的概率,xc表示预测结果为类别c的概率,c表示预测类别总个数,该掩码氨基酸预测任务的总损失ls是一个训练批次中所有氨基酸预测损失之和,即中所有氨基酸预测损失之和,即
[0057]
在蛋白质相互作用预测任务中,一个训练批次由n条蛋白质组成,将蛋白质中所有氨基酸嵌入的均值作为蛋白质的嵌入表示,预测任意两个蛋白质之间是否存在相互作用,该任务的损失函数和以上掩码氨基酸预测任务类似,令x={x1,x2,

,xn}作为采样出来的蛋白质序列,y∈{0,1}n×n是相互作用矩阵,损失函数l
ppi
表示如下所示:
[0058][0059]
其中,i≠j,均为蛋白质索引,bce表示二值交叉熵,p(y
ij
|xi,xj)表示正确预测蛋白质xi和蛋白质xj之间相互作用为标签y
ij
的概率。
[0060]
则总损失为l=ls λl
ppi
,其中λ是超参数。
[0061]
实施例中,将掩码氨基酸预测任务对应的氨基酸序列数据集输入至表示学习模块,将蛋白质相互作用预测任务对应的蛋白质相互作用数据集输入至表示学习模块,并结合包括掩码氨基酸预测任务损失和蛋白质相互作用预测任务损失的总损失函数最小化为目标,来更新表示学习模块和任务模块的模型参数。
[0062]
步骤5,模型参数更新结束后,提取表示学习模块作为蛋白质表示模块。
[0063]
实施例中,在模型参数更新后,提取参数确定的表示学习模块包括的提示符嵌入
层、氨基酸嵌入层、融合层以及预训练语言模型作为蛋白质表示模块,其中,参数确定的预训练语言模型作为蛋白质表示模型。
[0064]
实施例中,得到的蛋白质表示模块应用于蛋白质结构和/或蛋白质功能的预测任务。应用时,在蛋白质表示模块中,将所有类提示符的嵌入表示同时融合到蛋白质的嵌入表示,以得到全部提示符标识下的蛋白质嵌入表示;该全部提示符标识下的蛋白质嵌入表示用于蛋白质结构和/或蛋白质功能的预测。
[0065]
在一个实施方式中,将所有类提示符的嵌入表示同时融合到蛋白质的嵌入表示,包括:将所有类提示符的嵌入表示先进行拼接,得到的拼接表示再与蛋白质的嵌入表示进行融合,该融合包括拼接方式、全连接映射和卷积映射。
[0066]
在一个实施方式中,如图3所示,蛋白质表示模块包括提示符嵌入层、氨基酸嵌入层、融合层、蛋白质表示模型。该蛋白质表示模块应用于蛋白质结构和/或蛋白质功能的预测任务时,在蛋白质表示模型后增加与预测任务相关的分类器(下游任务映射头),该蛋白质表示模型与分类器组成端到端的任务预测模型。
[0067]
应用时,根据预测任务选择合适的提示符,并构建预测任务的小规模数据集,并将小规模数据集包括的蛋白质和提示符作为任务预测模型的输入,利用提示符嵌入层提取的每类提示符的嵌入表示经过拼接后形成拼接表示,并输入至融合层,融合层对蛋白质的嵌入表示和拼接表示进行融合后,输入至蛋白质表示模型经过表示学习,得到全部提示符标识下的蛋白质嵌入表示,基于该蛋白质嵌入表示以对任务预测模型包含的分类器进行参数微调,参数微调后的任务预测模型可以预测蛋白质功能、蛋白质结构。
[0068]
具体地,当针对自然折叠状态、作用状态两类蛋白质构象时,这两类蛋白质构象对应的提示符为x
seq
和x
ic
分别输入至提示符嵌入层,以提取对应的嵌入表示,两个嵌入表示经过拼接融合后输入至融合层,在融合层中与蛋白质的嵌入表示融合后输入至蛋白质表示模型,得到在两个提示符标识下的蛋白质嵌入表示。
[0069]
上述实施例提供的基于预训练语言模型的蛋白质构象感知表示学习方法,首次基于公开蛋白质数据构建以蛋白质构象为中心的预训练数据集。
[0070]
上述实施例提供的基于预训练语言模型的蛋白质构象感知表示学习方法,不同于现有的预训练语言模型,其生成的蛋白质表示是唯一,不能反应蛋白质在不同环境中的相关信息。提出的蛋白质表示方法不仅能通过添加构象符号反映蛋白质相互作用和蛋白质自发折叠的构象信息,还支持增量添加特定条件下新的构象信息。
[0071]
上述实施例提供的基于预训练语言模型的蛋白质构象感知表示学习方法中,采用的构象嵌入和融合方法,为蛋白质中所有的氨基酸提供了无差异的构象信息,以便更好地得到氨基酸嵌入;
[0072]
上述实施例提供的基于预训练语言模型的蛋白质构象感知表示学习方法中,不同于现有的单任务预训练模型,提出在不同构象符号下使用不同预训练任务的多任务预训练模型,让模型计算多个损失之和,以学习到更具区分度的构象符号表示。
[0073]
以上所述的具体实施方式对本发明的技术方案和有益效果进行了详细说明,应理解的是以上所述仅为本发明的最优选实施例,并不用于限制本发明,凡在本发明的原则范围内所做的任何修改、补充和等同替换等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献