蛋白质组DIA深度学习之谱图预测
1. 简介
基于串联质谱的蛋白质组学大部分是依赖于数据库(database search)的bottom-up策略研究。也就是实际谱图和理论谱图进行匹配打分,从而实现肽段和蛋白的鉴定和定量。如果是DDA的数据,因为一张二级谱是一条肽段,直接将数据库理论酶切碎裂后的理论谱和实际谱图匹配即可。但如果是DIA的数据,因为二级谱是混合谱,即来源于很多肽段,而且碎片离子还会受到未碎裂的母离子的干扰,在短色谱梯度与复杂样品两种情况同时出现的情况下,干扰会进一步放大。我们无法判断哪些碎片离子来源于哪些肽段,因而无法直接进行肽段和蛋白的推断。
所以,尽管DIA数据中包含丰富的蛋白质组信息,但由于其数据结构的高度复杂性,现有策略无法进行充分、准确的解析,限制了DIA 技术的进一步推广。
目前DIA谱图解析有2种策略,一种策略是spectral center,即以谱图为中心的解析,通过将混合谱图拆分为更少来源肽段的谱(如1-2条肽段),再通过理论谱图进行匹配,但这种方法不太认可,因为无法评估谱图拆分的准确性,软件如DIA-umpire?。另一种策略是peptide center,即以肽段为中心的谱图解析,通过构建相同样品来源的DDA谱图库,可以获知肽段信息,再将肽段与混合谱匹配,通过解卷积获得鉴定和定量信息,现在大多数都采纳这种方法,但极度依赖谱图库,只有谱图库中出现的肽段才能被鉴定,软件如Spectronaut、DIANN等。
常用的质谱搜索引擎在匹配理论与实验谱图(PSM)时,不考虑离子强度及其他实验信息。而在DIA方法中,二级谱离子强度(从准备实验得到)以及母离子保留时间对匹配准确性起到重要作用。传统我们都是通过做实验来构建DDA谱图库,费时费力费钱,有没有可能不做实验就将谱图库构建出来呢?答案是肯定的,那就是机器学习或深度学习。近几年,各种各样基于深度学习的谱图预测软件或者RT预测软件相继发表,其目的都是为了构建预测理论谱图库。
这些方法有些需要构建模型预测RT,或者谱图,有些只需要提供fasta序列,后续全给你预测出来,如DIANN。
目前,蛋白质组学的深度学习主要基于两种神经网络结构,分别为卷积神经网络(convolutional neural network,CNN)和循环神经网络(recurrent neural network,RNN)。CNN 主要有两种类型网络层,即卷积层与池化层.其中,卷积层用来提取数据的各种特征,可以使得模型在保留数据之间关系的同时大大降低参数数量,而池化层可以对提取到的特征进行抽象并降维处理,从而减少训练参数。
深度学习相比传统的机器学习方法,可包含众多隐藏层及非线性变换,能更有效地解读质谱及蛋白质组学数据中复杂的关系。肽段的准确定性定量与其质谱特征的提取及理化性质的预测密切相关。肽段的色谱保留时间主要由肽段的理化性质决定,因此可对肽段的RT进行预测。
2. 近几年发表的主要工具
1.DeepRT
18年发表在《Analytical Chemistry》上,DeepRT 利用了CNN与RNN 两种方法提取肽段特征,其中CNN 过程使用了4 层卷积网络,用来处理肽段序列。RNN 则处理每一个肽段序列,并把每个氨基酸视作长度为20 的向量。经过两种神经网络的特征提取后,利用主成分分析进行降维,继而采用常见的3 种机器学习方法(支持向量机、随机森林及梯度提升)进行保留时间的预测。
由于神经网络方法并无特定的特征提取方式,更少的依赖人为经验,而是机器根据数据类型自动学习处理,因此往往能够实现更为有效的特征提取,从而实现保留时间的精确预测。通过将已发表的数据集按比例分成训练集、验证集及测试集(8∶1∶1),DeepRT 模型得到有效训练,实现了理论预测值与真实值相关性接近0.99,在与其他保留时间预测软件ELUDE 和GPTime 的对比中,具有更精确的保留时间预测。
Improved Peptide Retention Time Prediction in Liquid Chromatography through Deep Learning
DeepRTplus开源代码
2.Prosit
业界大佬德国慕尼黑大学的Bernhard Kuster和Mathias Wilhelm于19年发表在《nature methods》上,人类蛋白质组草图、数据库ProteomicsDB和ProteomeTools项目都是他们的代表作。
通过基于RNN模型和大量的质谱数据,可以准确母离子的预测理论谱图及其流出时间,从而直接用于更加准确的质谱鉴定。
ProteomeTools项目已经包含来自于576,256个母离子的21,764,501高质量谱图,覆盖98.5%的人类基因。使用这套数据,同时考虑肽段序列和其他信息,作者建立了编码器和解码器来学习数据中的特征,用母离子、NCE(归一化碎裂能)和肽段序列作为输入,保留时间和二级谱图作为输出进行训练和验证。
- 1.Embedding: 把序列信息转成向量
- 2.Bi-GRU: 第一层网络,然后drop-out
- 3.Bi-GRU: 第二层网络,然后drop-out
- 4.Attention level 第三层网络
- 5.得到Latent space
- 6.Latent space里面,incorporate 电荷和撞击能量
- 7.Decoder: 还原出图谱
结果显示对保留时间的预测可以达到接近R=1的相关性,95%的实验结果在预测结果的4.25时间单位内。预测的二级谱图也具有非常高的相关性,并且作者引入碎裂的校正进一步提高了预测结果。值得一提的是,训练集中采用的是tryptic酶切肽段,但得到模型对非tryptic的肽段也具有非常好的预测能力,说明模型学到的是包含物理本质的碎裂规则。
使用预测得到的二级谱,和准确的iRT,可以直接用于DIA的建库。而在DDA中用实验谱图与预测谱图进行匹配打分,也可以大大提高对target肽段的检出能力(FDR=1%)。作者在多个应用中验证了Prosit对多肽二级谱以及保留时间的预测准确性,并展示这种预测能力可以让多种质谱鉴定任务得到改进。
Prosit: proteome-wide prediction of peptide tandem mass spectra by deep learning
Nat. Methods | Prosit: 蛋白质组水平的深度学习质谱谱图预测
Prosit, 基于深度学习的质谱预测工具
prosit开源代码
3. DIANN
剑桥大学也在2019年《nature methods》发表了DIA-NN (data independent acquisition by neural networks)工具。DIA-NN是一个集成软件包,它利用深层神经网络和新的量化及信号校正策略来处理DIA蛋白质组学的实验结果,提高了DIA 数据中母离子的鉴定能力,并进一步提高蛋白质定量的准确度。
DIA-NN使用深度神经网络(DNNs)来区分真实信号和噪声,并使用新的量化和干扰校正方法。DIA-NN流程是完全自动化的,拥有直观的图形界面和命令执行工具,结果以简单的文本格式展示。DIA-NN使用内源肽(如iRT)进行保留时间校准。DIA-NN还可自动执行质量校正,并自动确定搜索参数(如保留时间窗口和质量提取精度)。这消除了需要为每个特定数据集做优化的繁琐过程。
DIA-NN的工作流程首先是基于一组母离子的以肽为中心的方法(对每个母离子的多个碎片离子进行注释),这些母离子可由谱库提供或由DIA-NN在电脑中从蛋白质序列数据库(无库模式)自动生成。然后DIA-NN生成一个阴性对照库(即诱饵母离子),为每个目标或诱饵母离子提取谱图,并识别由母离子和碎片离子洗脱曲线组成的假定洗脱峰,该洗脱峰位于假定的母离子保留时间附近。每个洗脱峰由一组反映峰特征的分数来描述,评分项目包括碎片离子的共洗脱、质量准确性或检测到的离子与参考(库)谱图之间的相似性。DIA-NN在工作流程的各个步骤中计算了73个峰值分数。然后,使用线性分类器的迭代训练为每个母离子选择最佳候选峰,该线性分类器允许计算每个峰的单个分数。
总之,DIA-NN可通过深度学习直接对DIA数据进行解析,从而实现对蛋白的鉴定和定量,无需构建谱图库,只需一个fasta文件,而且效果堪比Spectronaut,但目前还没有广泛应用,毕竟刚出来。
DIA-NN: neural networks and interference correction enable deep proteome coverage in high throughput
Github开源代码
Nature methods DIA蛋白组学通过神经网络和干扰校正实现高通量蛋白质组的深度覆盖
4.DeepDIA
复旦的乔亮今年发表在《Nature Communications》上的研究。他们设计了基于卷积神经网络和循环神经网络的深度神经网络模型来预测肽段的二级质谱图(MS/MS)和归一化保留时间(iRT),由DDA鉴定得到的肽段列表生成DIA分析所需的谱图库。
该模型以肽序列为输入,并在每个可能的裂解位点包括氨或水的中性损失以及肽段的iRT输出b/y产物离子的相对强度。
在HeLa细胞数据集上将DeepDIA与Prosit进行了比较测试。结果表明,与使用通用模型来生成谱图库相比,使用DeepDIA构建专用于特定仪器的模型预测生成的谱图库质量更好,DIA数据分析检测到的肽段和蛋白数量更多,重复性更好,效果接近DDA构建的谱图库。
此外,他们也设计了预测肽段在质谱中的可检测性的模型,实现了由蛋白序列构建预测谱图库。从SwissProt物种数据出发,预测蛋白的理论酶切肽段的可检测性,筛选可检测性分数达到一定阈值的肽段来构建谱图库。在HeLa细胞和小鼠组织样品数据集上的测试结果表明,与考虑全部理论肽段相比,可检测性筛选能降低DIA分析的假阳性率并提高蛋白鉴定量。最终实现了完全不需要DDA实验,从SwissProt蛋白序列数据库出发的DIA数据直接解析。研究人员还将DeepDIA用于未去高峰度蛋白的血清样品的DIA数据直接分析。与传统方法相比,DeepDIA检测到蛋白的数量为DDA建库的两倍以上。
其中,训练深度神经网络模型所需数据量仅为HeLa细胞样品分馏DDA的鉴定结果,通常可以在一天的时间内完成训练数据的采集。模型训练只需要普通的台式工作站,可以在数小时内完成。他们认为未来蛋白质组学实验室可以利用深度学习技术构建专用于每一台仪器的模型,将其用于该仪器DIA数据的分析,而无需另外进行DDA实验。
In silico spectral libraries by deep learning facilitate data-independent acquisition proteomics
前沿分子生物学技术(8) AI生成光谱库辅助蛋白质组发现
DeepDIA开源代码
Deep DIA使用网站
蛋白质组DIA深度学习之谱图预测的更多相关文章
- 时间序列深度学习:seq2seq 模型预测太阳黑子
目录 时间序列深度学习:seq2seq 模型预测太阳黑子 学习路线 商业中的时间序列深度学习 商业中应用时间序列深度学习 深度学习时间序列预测:使用 keras 预测太阳黑子 递归神经网络 设置.预处 ...
- 基于深度学习的建筑能耗预测01——Anaconda3-4.4.0+Tensorflow1.7+Python3.6+Pycharm安装
基于深度学习的建筑能耗预测-2021WS-02W 一,安装python及其环境的设置 (写python代码前,在电脑上安装相关必备的软件的过程称为环境搭建) · 完全可以先安装anaconda(会自带 ...
- 基于python深度学习的apk风险预测脚本
基于python深度学习的apk风险预测脚本 为了有效判断安卓apk有无恶意操作,利用python脚本,通过解包apk文件,对其中xml文件进行特征提取,通过机器学习构建模型,预测位置的apk包是否有 ...
- 深度学习RNN实现股票预测实战(附数据、代码)
背景知识 最近再看一些量化交易相关的材料,偶然在网上看到了一个关于用RNN实现股票预测的文章,出于好奇心把文章中介绍的代码在本地跑了一遍,发现可以work.于是就花了两个晚上的时间学习了下代码,顺便把 ...
- Predicting effects of noncoding variants with deep learning–based sequence model | 基于深度学习的序列模型预测非编码区变异的影响
Predicting effects of noncoding variants with deep learning–based sequence model PDF Interpreting no ...
- 【深度学习】DNN房价预测
前言 我们使用深度学习网络实现波士顿房价预测,深度学习的目的就是寻找一个合适的函数输出我们想要的结果.深度学习实际上是机器学习领域中一个研究方向,深度学习的目标是让机器能够像人一样具有分析学习的能力, ...
- TensorFlow深度学习!构建神经网络预测股票价格!⛵
作者:韩信子@ShowMeAI 深度学习实战系列:https://www.showmeai.tech/tutorials/42 TensorFlow 实战系列:https://www.showmeai ...
- C++中使用OPENCV对深度学习的特征图进行可视化
//需要先在运行目录下创建文件夹opencv_layers #include <iostream> #include <unistd.h> #include <openc ...
- 基于深度学习的建筑能耗预测02——安装Tensorflow-gpu
一.检查显卡 ·查看自己的显卡配置是否能支持cuda,以及Tensorflow不同版本要求与CUDA及CUDNN版本对应关系: https://developer.nvidia.com/zh-cn/c ...
随机推荐
- 扩展spring data jpa的repository
在我们编写代码的过程中,spring data jpa为我们的持久层提供的极大的方便,但有时spring data jpa提供的repository并不能完全满足我们开发的需求,因此就需要进行扩展.s ...
- 2021.10.12考试总结[NOIP模拟75]
T1 如何优雅的送分 考虑式子的实际意义.\(2^{f_n}\)实际上就是枚举\(n\)质因子的子集.令\(k\)为这个子集中数的乘积,就可以将式子转化为枚举\(k\),计算\(k\)的贡献. 不难得 ...
- 8.18考试总结[NOIP模拟43]
又挂了$80$ 好气哦,但要保持优雅.(草 T1 地衣体 小小的贪心:每次肯定从深度较小的点向深度较大的点转移更优. 模拟一下,把边按链接点的子树最大深度排序,发现实际上只有上一个遍历到的点是对当前考 ...
- 攻防世界 杂项 1.base64÷4
666C61677B45333342374644384133423834314341393639394544444241323442363041417D 根据题目base64÷4得base16 在线工 ...
- Spring源码解读(一):Spring的背景起源及框架整体介绍
一.前言 Spring起源于2002年Rod Johnson写的一本书<Expert One-on-One J2EE>,书里介绍了Java企业应用程序开发情况,并指出Java EE和EJB ...
- sql server 如何跟更新拼接的数据(cast用法)
我们在实际中会做如下图的连接 执行以后这个连接就会报错了,如下图所示 然后我们用cast将数字转换为字符串在连接,如下图所示 这次连接的结果就没问题了,如下图所示 最后如果两个数字 ...
- Linux Ubuntu stty 使用
stty(set tty)命令用于显示和修改当前注册的终端的属性. 该命令是一个用来改变并打印终端行设置的常用命令. stty -a #将所有选项设置的当前状态写到标准输出中 old_stty_set ...
- .net core 和 WPF 开发升讯威在线客服系统:把 .Net Framework 打包进安装程序
本系列文章详细介绍使用 .net core 和 WPF 开发 升讯威在线客服与营销系统 的过程. 系列文章目录: https://blog.shengxunwei.com/Home/Post/44a3 ...
- Linux系统编程之进程概念
注:本文部分图片来源于网络,如有侵权,请告知删除 1. 什么是进程? 在了解进程概念之前,我们需要先知道程序的概念. 程序,是指编译好的二进制文件,这些文件在磁盘上,并不占用系统资源. 进程,指的是一 ...
- GoLang设计模式12 - 空对象模式
空对象设计模式是一种行为型设计模式,主要用于应对空对象的检查.使用这种设计模式可以避免对空对象进行检查.也就是说,在这种模式下,使用空对象不会造成异常. 空对象模式的组件包括: Entity:接口,定 ...