ICLR2021 | 利用数据扩充提高蛋白质序列模型的通用性
今天给大家介绍投稿在ICLR2021上的一项工作。由于蛋白质序列上的微小改变可能导致其功能上难以预测的变化,所以蛋白质序列往往无法使用类似于计算机视觉或自然语言处理中所使用的随机数据扩充方法。针对以上问题,作者从经验上探索了一组简单的字符串操作,当微调半监督蛋白质模型时,可使用这些操作来增加蛋白质序列数据。在TAPE baseline上的结果表明,对比学习微调方法优于mask token预测微调方法,随着数据扩充量的增加,对比学习方法的性能随之提高。当使用域驱动的转化以及将Transformer的注意力限制在蛋白质序列的随机采样子区域时,跨TAPE任务的结果最一致。在极少数情况下,破坏信息的扩充方式可以改善下游任务表现。
1
介绍
由于特定于任务的标签通常非常稀少,半监督学习已被证明是一种促进蛋白质机器学习模型通用性的有效机制。但是,对于其他通过简单转换就可以提高模型概括能力的常见数据类型,科学数据(例如蛋白质序列的语料库)几乎没有有效的明显转换,可以将有意义的信息保留在数据中。通常,蛋白质序列的简单转化(例如,用化学上相似的氨基酸替换氨基酸)将不可预测地产生生物学上非常相似或生物学上非常不同的突变蛋白。
在本文中,作者认为蛋白质序列建模中,简单数据扩充所带来的不确定性是一个值得评估的问题。作者研究微调TAPE中的自监督模型,该模型通常用于蛋白质序列的表示学习,展现了对一组生物学任务进行泛化的最佳能力。作者测试了多种数据扩充操作:用预定替代物替换氨基酸;全局或局部改变输入序列;反转顺序;对序列进行二次采样来关注局部区域。
实验证明,通过对基线模型进行数据扩充来微调的蛋白质序列表示方法,可以对所有TAPE任务进行线性评估,与4个TAPE中的3个相比,基线有显著改善。此外,作者还研究了数据扩充的影响:当通过对比学习对基线模型进行微调时,下游性能的局部最大值是数据扩充量的函数,少量数据扩充效果优于无数据扩充。相反,使用mask token预测执行相同的实验,TAPE性能有很小的下降趋势。因此,使用数据扩充的对比学习是可用于提高蛋白质模型通用性的重要方法。
2
方法
本文中的目标是证明以简单的字符串操作作为数据扩充来训练自我监督的蛋白质序列模型将在下游任务上带来更好的性能,实验方法如图1所示。
图1 实验方法
评价过程和实验方法
Baseline 在非增强序列数据Dseq上训练自我监督模型M0,进行表示学习, 为了获得一致的基线,作者将M0设置为TAPE中的基于Transformer的模型。
验证集的增强训练 给定一组预定义的数据转换Taug,在增强子集Dval⊂Dseq上微调M0。作者将Maug定义为从Taug(Dseq)导出的最终训练模型,其中M0为模型参数的初始条件,探索了两种对扩充数据进行微调的方法-一个对比任务和一个mask token任务(指数交叉熵损失)-以及数据扩充的不同组合。同时,使用减少子集来减少运行批量实验的计算成本和防止过度拟合。为了保持一致性,作者从TAPE用于训练M0的交叉验证拆分中继承了Dval的选择。为了使相同的基线模型M0适应不同的自我监督损失,作者向M0体系结构中添加了一个损失特定的随机初始化层:使用完全连接层进行对比学习,该层输出256维矢量,mask token使用具有层归一化的完全连接层为每个被遮盖的字母输出one-hot向量。
TAPE的线性评估 为了评估Maug所学的表征,作者评估了四个TAPE下游训练任务的性能:稳定性,荧光,远程同源性和二级结构。为了保持一致,使用和TAPE相同的训练,验证和测试集。前两个任务通过Spearman相关性与基本事实进行评估,后两个任务通过分类准确性进行评估。通过为每个对比学习模型Maug的每个下游任务训练一个线性层来执行线性评估,并在所有任务中固定Maug的参数及其相应的学习编码。为了将对比学习与mask token预测的微调进行比较,作者确定每个任务的最佳数据扩充,然后用具有相同扩充MMT的mask token模型替换MCL aug,然后再执行MMT的线性评估.
在TAPE上进行完全微调 对于线性评估任务(MCL aug或MMT aug)中表现最佳的增强模型,作者进一步研究了在任务特定的监督模型调整过程中,允许Maug的参数与线性模型一起变化时模型如何改进。
数据扩充
替换
根据替换规则,以概率p随机替换了最接近主序列的第i个氨基酸Ai。作者将p视为超参数,并评估p如何影响下游TAPE预测。对于取代(Dictionary),将每个天然氨基酸与一个属于同一类别的伴侣配对,但不替代脯氨酸(仅骨架环),甘氨酸(仅H侧链),色氨酸(吲哚侧链)或组氨酸(无尺寸或化学反应等价的碱性侧链)。作者对不同的配对进行了实验,结果差异不大。通过最终映射获得了最佳结果:[[A,V],[S,T],[F,Y],[K,R],[C,M],[D,E],[N, Q],[V,I]],此外还研究了用单个氨基酸丙氨酸(A)取代残基的方法。
全局/局部随机混洗
作者在全局和局部重新整理蛋白质序列,通过定义一个索引范围i∈[α,β],其中α<β≤N,然后用随机选择的均匀排列置换该范围内的氨基酸Ai,同时确保至少两个氨基酸被改组。虽然改组会极大地破坏蛋白质信息,但是经过改组训练的模型可以更多地关注排列不变特征,例如原始蛋白质的总氨基酸数和序列长度。
序列反转和二次采样
作者简单地反转序列:给定序列,将i→i ’= N −i映射。逆转蛋白质序列会改变蛋白质的整体结构和功能。但是,反向序列可能会鼓励模型更有效地使用短距离特征。对于二次采样,规定序列索引的范围为i∈[α,β],然后均匀采样α∈[1,N-2],然后保留Ai,虽然与蛋白质全局折叠有关的许多特性是由于在一级序列中分离得很好的残基之间的长期相互作用所致,但诸如蛋白体切割或对接之类的特性在很大程度上取决于局部序列机制,这意味着在 优先处理局部特征可能仍会提高性能
联合增强
作者考虑将使用单独策略增强或联合增强,来进行对半监督模型的微调。对于单增强,一次只考虑一种增强。对于联合增强,定义了增强列表以进行比较。对于每个扩充列表,迭代地从列表中删除一个扩充,并在训练期间应用所有其他扩充。最后,在成对增强中,考虑了所有成对的增强。
3
实验结果
用线性评估评估数据扩充的表示
表1中,总结了各种数据扩充程序的最佳结果,重点介绍了优于TAPE基准的所有情况。作者将训练有相同数据但使用各种数据扩充的相同模型架构与两个基线进行比较:(1)TAPE中基于变压器的自我监督模型,我们将其称为TAPE基线;(2)采用SimCLR方法训练的对比学习模型,但不使用任何数据扩充,即,仅使用SimCLR的负采样部分,称其为对比基线。
表1 线性评估结果
与用于稳定性,荧光和远程同源性任务的基线相比,将对比学习与数据扩充一起使用时,模型效果有所提高,并且二级结构预测的结果大致相同,用RA和SS训练的mask token预测模型在二级结构上表现最佳. 作者认为,增强和对比学习提供了更好的编码特征空间,有助于改善蛋白质下游任务的性能。
图2 展示了基于对数据扩充对的组合而采用对比学习的线性评估结果。为了保持稳定性,与TAPE基准线以及其他通常不如基准线的增强策略相比,氨基酸置换始终可以改善性能。使用所有数据扩充功能,荧光效果都得到改善,但是随机改组以及两种类型的替换都可以实现最佳的个体表现。对于远程同源性,于对三个测试集的改进,子采样在模型性能中起着重要作用。同样,使用二次采样的数据扩充往往会产生比替代方法更好的性能,而仅使用二次采样达到最佳性能。
图2 在4种不同任务的线性评估中采用成对和单增的对比学习表现
增加增强概率的影响
图3给出了两种情况下不同数据扩充效果的结果 :(1)在对比学习增加氨基酸替换概率p (2)根据mask token预测的线性评估中发现的最佳扩充来增加增强数据的比例。作者将扩充率γ定义为验证数据集中每个时期随机扩充的样本比例;为了进行对比学习微调,每个数据元素都需要数据扩充。对于mask token预测,对于任何相应的最佳增强策略,都看不到任何任务的性能随γ的变化。但是,随着γ的增加,性能会有很小但一致的降低,这意味着使用数字增强功能,mask token预测并不总是能够显着提高其性能。同时,TAPE基线模型通常比没有数据扩充的进一步训练更差,这表明使用相同数据和过程对基线模型进行进一步训练可以提高TAPE中模型的表现。对于对比学习,明显的证据表明数据扩充可以帮助泛化。
图3 不同数据扩充的效果
对比学习的效果
为了评估对比学习和mask token预测的相对效果,作者比较了两种方法在有或没有数据扩充的情况下的结果,用于该比较的所有信息都在图3和表1中。作者指出,不能从对线性评估研究中得出,对比学习在所有下游任务上的表现肯定优于mask token预测的相关结论,不同的任务受益于不同的训练程序和数据组合的不同组合。
通过全面的微调探索最佳性能
作者提供了最佳性能的微调模型的结果,并与表2中的TAPE原始基线进行了比较,以验证所学习的最佳模型表示是否为转移学习提供了良好的初始化点。在这里,仅对线性评估研究中发现的最佳性能,按任务模型进行了完整的微调。。经过微调,数据扩充的模型在稳定性,远程同源性和二级结构方面优于TAPE基线,随机氨基酸替代策略是一种一致的方法,可在所有任务中均获得最佳性能,依赖于蛋白质结构特性(远程同源性和二级结构)的任务中,二次采样有不错的效果。
表2 模型微调结果
4
总结
作者通过实验验证了,字符串操作可以用作数据扩充,以提高TAPE上的自监督蛋白质序列方法的性能。作者表明,一般而言,在线性评估和模型微调的情况下,数据扩充将提高模型的性能,但是,不同的下游任务会受益于不同的蛋白质序列增强。除此之外,作者的研究方法是在验证集上微调预训练的模型,与在完整训练集上进行训练相比,所需的计算成本大大降低。
参考资料
https://www.paperswithcode.com/paper/improving-generalizability-of-protein
ICLR2021 | 利用数据扩充提高蛋白质序列模型的通用性相关推荐
- 数据洞察和数据分析_利用数据洞察力提高客户保留率
数据洞察和数据分析 首先,让我们知道客户保留率是多少? (First of all, let us know what customer retention is?) It represents th ...
- 提高机器学习模型性能的五个关键方法
提高机器学习模型性能的五个关键方法 1. 数据预处理 2. 特征工程 3. 机器学习算法 4. 模型集成与融合 5. 数据增强 以下是各个方面的具体分析和方法: [ 说明:1.这里主要是各个关键方法的 ...
- (论文加源码)基于DEAP脑电数据集的脑电情绪识别(利用生成对抗性网络进行特征提取和数据扩充)
本篇论文发表于2022年的顶级期刊,代码可以完整运行,详情见第八节或者个人主页 论文源码见个人主页:https://download.csdn.net/download/qq_45874683/876 ...
- MIT与FAIR提出「mixup」,利用数据和标签的随机线性插值提高神经网络的健壮性
来源: 雷克世界 摘要:麻省理工学院(MIT)与Facebook人工智能研究院(FAIR)提出了一种能够构建虚拟训练样本的方法--mixup,提高了神经网络的健壮性. 近日,麻省理工学院(MIT)与F ...
- 新思路!商汤开源利用无标注数据大幅提高精度的人脸识别算法
出处"来自微信公众号:我爱计算机视觉" 新思路!商汤开源利用无标注数据大幅提高精度的人脸识别算法 这篇论文解决的问题与现实中的人脸识别应用场景密切相关,其假设已经有了少量已经标注的 ...
- DL之AlexNet:利用卷积神经网络类AlexNet实现猫狗分类识别(图片数据增强→保存h5模型)
DL之AlexNet:利用卷积神经网络类AlexNet实现猫狗分类识别(图片数据增强→保存h5模型) 目录 利用卷积神经网络类AlexNet实现猫狗分类识别(图片数据增强→保存h5模型) 设计思路 处 ...
- ICCV 2019 | 爱奇艺提出半监督损失函数,利用无标签数据优化人脸识别模型
点击我爱计算机视觉标星,更快获取CVML新技术 论文发表于ICCV 2019 作者 | 爱奇艺技术产品团队 编辑 | 唐里 论文标题:Unknown Identity Rejection Loss: ...
- [Python图像识别] 五十一.水书图像识别之利用数据增强扩充图像数据集
该系列文章是讲解Python OpenCV图像处理知识,前期主要讲解图像入门.OpenCV基础用法,中期讲解图像处理的各种算法,包括图像锐化算子.图像增强技术.图像分割等,后期结合深度学习研究图像识别 ...
- DL之DNN优化技术:利用Dropout(简介、使用、应用)优化方法提高DNN模型的性能
DL之DNN优化技术:利用Dropout(简介.入门.使用)优化方法提高DNN模型的性能 目录 Dropout简介 Dropout使用 Dropout应用 Dropout简介 随机失活(dropout ...
最新文章
- linux日志系统的实现,一个同步日志系统的简单实现 log for c (linux 平台)
- java 2类与对象[学堂在线]
- PHP Ueditor 富文本编辑器
- chm文件无法正常显示
- mysql查询当天最新的一张表_mysql 查询当天、本周,本月,上一个月的数据
- 无须搭建环境,只需十分钟使用Google Colab平台,基于YOLOv4和Darknet来实现的物体检测
- ZOJ 2432 Greatest Common Increasing Subsequence(最长公共上升子序列+路径打印)
- 【摘录】BREW应用的c++实现注意点
- 对开发者有用的英文网站合集,建议收藏!
- 在html中解决数字四舍五入,JavaScript四舍五入及精度丢失问题
- android audio 音量设置分析
- 麒麟Linux启动目录,优麒麟目录结构介绍 系统入门必备
- windows10开启http代理服务
- springmvc mvn搭建
- 炼数成金Tensorflow学习笔记之6.2_卷积神经网络
- 【基础理论】介绍一个概率分布:柯西分布
- 《Python绝技:运用Python成为顶级黑客》读后感
- 人工智能对客服职业的影响
- html背景边框特效代码,纯JS实现动态边框特效
- 慕课网 前端JS面试技巧 笔记
热门文章
- 修改exe图标,加入版本号
- Visual Stodio 2010 待熟悉技巧
- fedora-10-i386下华为联网问题
- ASP.NET2.0自定义控件组件开发 第六章 深入讲解控件的属性
- ASP.NET Ajax替代品AjaxWidgets
- 某程序员为方便老婆工作,写了一些小工具给老婆用!如今老婆要离职,公司老板却要求必须把工具留下!网友:跟他收费!...
- 光大银行分布式实战:国内最大缴费平台的数据库架构转型
- 图解|什么是缺页错误Page Fault
- 1000+个常用的Linux命令!看完通关!随手玩Linux!
- 业务方的一堆需求,CTO一句话就怼回去了!这招太好用了