PLUS | 包含蛋白质特异性的新型预训练方案

简介: PLUS | 包含蛋白质特异性的新型预训练方案

image.png

今天给大家介绍来自首尔国立大学Sungroh Yoon课题组在arXiv上发表的一篇文章。作者指出当前很多方法采用半监督学习来进行蛋白质序列建模,其中的预训练方法主要依赖于语言建模任务,并且常常表现的性能有限。为了更好地捕获未标记蛋白序列中包含的信息,必须进行补充蛋白特异性的预训练任务。针对以上问题,作者提出了一种称为PLUS的新型预训练方案。PLUS包括掩码语言建模(MLM)和补充蛋白质特异性的预训练任务,即相同的家族预测,可用于预训练各种模型架构。


1


介绍


由氨基酸的线性链组成的蛋白质是活生物体中用途最广泛的分子之一。它们在普遍的生物学机制中起着至关重要的功能。蛋白质根据氨基酸序列自然折叠成三维结构,结构会对其功能产生直接影响。随着下一代测序技术的出现,获得蛋白质序列变得相对更加容易,但是用有意义的属性注释序列仍然需要大量时间和资源。


利用无标签和标签数据的半监督学习已成为机器学习社区的长期目标之一。半监督学习算法使用大量未标记的数据预训练通用模型,然后它转移学习的表示形式,并针对每个受监督的任务使用少量带标签的数据对模型进行微调。半监督学习的关键是如何定义适当的预训练任务,最近有一些工作提出了蛋白质表示的预训练方法,采用了NLP的语言建模,并表明预训练有助于完成各种下游蛋白质任务。但是当前的预训练方法仍然在任务特定模型方面表现不佳,可能是因为仅仅依靠LM还不能达到预期效果,必须进行补充蛋白质特有的预训练任务才能更好地捕获蛋白质中包含的信息。


在本文中,作者介绍了一种称为PLUS的新型蛋白质序列建模预训练方案,PLUS由掩码语言模型和附加的补充蛋白特定的预训练任务组成,即相同家族预测(SFP)。PLUS可用于预训练各种模型架构,包括双向递归神经网络(BiRNN)和变压器(TFM),然后可以在各种下游任务上微调预训练的通用模型,而无需从头开始训练随机初始化的特定于任务的模型。它在七个蛋白质生物学任务中的六个任务上推进了预训练SOTA方法,即(1)三个蛋白质(对)级分类,(2)两个蛋白质级回归和(3)两个氨基酸级级别分类任务。最后,作者介绍了消融研究和解释分析结果,以更好地了解PLUS-RNN的优势。


2


模型


PLUS,是一种用于蛋白质序列建模的新型预训练方案, PLUS由MLM和互补的蛋白质特异性SFP预培训任务组成,可以帮助模型学习结构化的上下文双向表示。

image.png

预训练数据集 作者使用Pfam27.0作为预训练数据集,随机划分20%作为测试集,并过滤出少于20个氨基酸的序列。对于训练集,作者还删除了包含少于1,000种蛋白质的家族。它产生了来自3,150个家庭的14,670,860个序列,用于以下PLUS预训练。


模型结构 PLUS可用于预训练各种模型架构,包括BiRNN和TFM。生成的模型分别称为PLUS-RNN和PLUS-TFM。在这项工作中,我们主要基于PLUS-RNN相对于PLUS-TFM的两个优势。首先,RNN按顺序处理序列,更加强调局部上下文,它对于学习蛋白质的顺序性质更有效,其次,PLUS-RNN提供较低的计算复杂度。


对于给定的蛋白质序列,PLUS-RNN将其转换为一个序列的表示。首先输入嵌入层EM将每个氨基酸嵌入到三维密集向量,然后,L层的BiRNN获得作为整个序列的函数的双向表示,作者还使用了一个附加的投影层,以线性变换获得每个氨基酸的较小维度表示。


预训练过程 与以前的方法相比,PLUS基于两个预训练任务(MLM和SFP)学习双向表示,这两个任务旨在吸收全局结构信息。MLM任务训练模型以最大化对应于被掩盖模型的概率。由于要求PLUS-RNN预测给定上下文的随机掩盖的氨基酸,因此MLM任务使模型能够学习整个蛋白质序列的双向上下文表示。考虑到额外的预训练任务通常是进一步提高表示质量的关键,因此作者设计了一种互补的蛋白质特异性预训练任务。SFP任务利用了来自Pfam数据集的计算聚类的弱族标签。它训练模型以预测给定的蛋白质对是否属于同一蛋白质家族。尽管它很简单,但作者凭经验表明SFP可以补充MLM,并有助于捕获蛋白质的整体结构信息。


微调过程 PLUS-RNN的微调过程遵循基于BiRNN的预测模型的常规用法。对于每个下游任务,仅在预训练模型的顶部添加一个隐藏层和一个输出层,然后,使用任务特定的数据集和损失函数对所有参数进行微调。对于涉及蛋白质对的任务,仅将SFP输出层替换为新的输出层。对于单一蛋白质水平的任务,作者采用了一个额外的注意层,将可变长度表示形式聚集到单个向量中然后,将聚合的向量馈送到隐藏层和输出层。对于氨基酸级任务,每种氨基酸的表示形式都被输入到隐藏层和输出层中。


3


实验


为了进行比较评估,作者使用了几个基准。首先,在所有七个蛋白质生物学任务中,作者提供了两个替代的预训练方法基准,即P-ELMo和PLUS-TFM。其次,对于TAPE任务,作者还提供了他们的训练前基准测试:P-ELMo,UniRep,TAPE-TFM,TAPE-RNN和TAPE-ResNet。最后,在不进行预培训的情况下,针对特定任务的SOTA模型对PLUS-RNN进行了基准测试。此外,如果没有针对给定任务的基于深度学习的先前模型,作者将使用RNN-BASE和RNN-LARGE模型,而无需进行预训练。


预训练结果 下表显示了MLM和SFP预训练任务的测试准确性,仅对经过PLUS预训练的模型进行SFP任务评估。从中可以看到,某些模型的LM精度低于其他模型。但是,较低的LM能力并不完全与微调任务中的性能相对应。这种差异先前已在TAPE中观察到,也可以在以下各节中观察到。在SFP方面,所有经过PLUS培训的模型都具有很高的准确性。这是因为与LM相比,这可能是一件相当容易的事情。由于Pfam家族仅基于序列相似性构建,因此一对相似序列可能来自同一家族。通过经验证明,通过鼓励模型在训练前比较模型中的蛋白质表示,SFP对MLM起到了补充作用。

image.png

微调结果 作者在七个蛋白质生物学任务上评估PLUS,下表列出了七个基准测试任务的汇总结果。SOTA结果来自两类:以前的预训练模型(即P-ELMo,UniRep,TAPE-TFM,TAPE-RNN和TAPE-ResNet)和没有预训练的特定于任务的模型。从表中可以看到,在七个蛋白质生物学基准测试任务中的六个任务上,PLUS-RNNLARGE模型优于预训练的SOTA模型。考虑到某些预训练方法显示出更高的LM能力,可以推测,性能的提高有助于蛋白质特异的SFP预训练任务。将PLUS-RNNLARGE与特定于任务的SOTA模型进行比较。尽管前者在某些任务上的性能明显好于其他任务,但仍然远远落后于其他任务。结果表明,具有附加功能的定制模型提供了强大的优势,而这些优势仍然无法从预训练中学习到。

image.png

同源性和SecStr结果 为了进一步分析,作者提供了有关同源性和SecStr任务的详细评估结果。下表列出了详细的同源性预测结果。结果显示PLUS-RNNLARGE优于P-ELMo模型和特定于任务的模型。与由于有限的标记训练数据而显示过度拟合的RNNLARGE相比,PLUS预训练使我们能够利用大型模型架构,PLUS预培训结合了薄弱的结构信息,并有助于推断更高层次的全局结构相似性。

image.png

下表给出了详细的SecStr预测结果。CB513,CASP12和TS115表示SecStr测试数据集。同样,结果表明PLUS-RNNLARGE始终优于所有其他预训练SOTA方法。它证明了SFP任务在预训练期间对LM任务进行了补充,并有助于学习改进的结构化上下文表示。另一方面,PLUS-RNNLARGE使用基于对齐的功能仍远远落后于特定于任务的SOTA模型。

image.png

4


总结


在这项工作中,作者提出了PLUS,一种双向蛋白质序列表示的新型预训练方案。PLUS由MLM和蛋白质特异性SFP预训练任务组成,它可以更好地捕获蛋白质中包含的结构信息。PLUS可用于预训练各种模型架构。在这项工作中,考虑到顺序建模能力和计算复杂性,作者主要使用PLUS-RNN。它在七个蛋白质生物学任务中的六个任务上推进了先前的SOTA预训练方法。此外,为了更好地了解其优势,作者还提供了相应的消融研究和定性解释分析的结果。


目录
相关文章
|
9月前
|
自然语言处理 前端开发 安全
CMS网站管理系统的优势及选择。
CMS是内容管理系统,可创建特色网站,实现内容创作、编辑、发布等,支持多用户管理、模板切换、多语言等,常用于企业、商城、论坛等,缩短建站成本和周期。
445 6
|
存储 算法 PyTorch
FlashAttention2原理解析以及面向AIGC的加速实践
FlashAttention2原理解析以及面向AIGC的加速实践
1928 0
|
Python
python使用pip镜像源加速安装包(清华、阿里、中科大)
python使用pip镜像源加速安装包(清华、阿里、中科大)
8175 0
python使用pip镜像源加速安装包(清华、阿里、中科大)
|
存储 SQL 关系型数据库
一篇文章带你玩转PostGIS空间数据库 1
一篇文章带你玩转PostGIS空间数据库
|
机器学习/深度学习 编解码 算法
异构图 Link 预测 理论与DGL 源码实战
异构图 Link 预测 理论与DGL 源码实战
异构图 Link 预测 理论与DGL 源码实战
|
机器学习/深度学习 测试技术
机器学习系列 | 01:多类别分类任务(multi-class)中为何precision,recall和F1相等?
在 multi-class 分类任务中,如果使用 micro 类指标,那么 micro-precision, micro-recall和micro-F1值都是相等的。本文主要针对这个现象进行解释。
|
机器学习/深度学习 PyTorch 算法框架/工具
pytorch中nn.Parameter()使用方法
pytorch中nn.Parameter()使用方法
2000 1
|
资源调度 PyTorch 算法框架/工具
介绍一下nn.BCEWithLogitsLoss()
nn.BCEWithLogitsLoss()是PyTorch中用于二元分类问题的损失函数之一,它是一种基于sigmoid函数的交叉熵损失函数,可用于处理具有多个标签的多标签分类问题。
2628 0
|
机器学习/深度学习 存储 算法
100天搞定机器学习|Day60 遇事不决,XGBoost
100天搞定机器学习|Day60 遇事不决,XGBoost
100天搞定机器学习|Day60 遇事不决,XGBoost
|
API 计算机视觉 网络架构
阿里云人脸识别使用流程简介
之前写过一篇关于Java 使用阿里云人脸识别的博客,介绍了如何使用网络及本地图片基于Rest API调用人脸识别服务。实际的使用中发现很多用户因为之前没有使用过人脸识别,对前期的一些参数配置还是不太清楚。这里对人脸识别整个使用流程做一个梳理,为初次使用的用户提供参考。
10241 0
阿里云人脸识别使用流程简介