蛋白质组学数据分析基础(三)
主要知识点:
--DIA数据非依赖性采集
--搜库原理及技巧
--蛋白质组学相关的数据库及使用方法
--总结
DIA数据非依赖采集
在上一篇推文,小编不止一次提到了DIA技术。那么,到底什么是DIA技术呢?我们来简单地介绍一下吧。
DIA,就是指数据非依赖性采集。与DDA(数据依赖性采集)相对应。
你肯定很想知道,到底是怎么个非依赖呢?
我们先说DDA模式,就是数据依赖性采集,它有一个质谱内部的选择过程。当前扫描到的一堆母离子,哪一个会被选择进入后面的二级碎裂,是根据它的信息强度,通常是以从强到弱的顺序去解析,并动态排除时间,也就是判断这张谱图在前一秒钟或者前十秒钟有没有解析过,如果解析过,那么就跳过,去解析没有解析过的。这就是DDA大致的原理。
想像一下,如果我们的样品非常复杂,一个峰一个峰去选择的话,很可能会漏掉一些有用的信息,造成我们谱图解析的不完整,而且质谱不可能在重复实验里选择完全一样的离子顺序,于是又会造成结果重复性不够高的问题。于是,DIA方法被发明出来,用于解决DDA原理的部分缺陷。
DIA模式就是在MS1扫描时,对碎裂的母离子不做任何筛选,而是傻瓜化地直接开一个非常大的窗口,让落在这个范围内的母离子全部进入二级碎裂。这个窗口开多大,是根据仪器和软件的设置会有不同,比如说10或15个道尔顿。
由于DIA是一次性放了一堆母离子进来,同时碎裂,所以对于DIA来说,不是一张谱图对应一个母离子,而是一堆谱图对应一堆来自多个母离子的碎片离子混合物。因此,我们不可能通过对二级谱图的解析来得到一个一个的母离子。
那我们应该如何解析呢?我们用DIA二级谱图与平行实验中的DDA的二级谱图进行比对,从中抽取出相同的二级信号,拿这些数据来进行DIA数据的定性以及相应的定量,而这个定量就是依赖于MS2的信号强度。
Tips:
平行的DDA实验需要前期色谱分离做得很好,并且用高精度高通量的质谱仪来完成。
搜库原理
我们再回到质谱数据分析的流程上。下图是一个简单的搜库过程,左边是wet lab实验,右边是计算机处理的过程,
蛋白样品酶解后得到复杂的肽段混合物,经过色谱分离,进入质谱,得到一级及二级离子信息。我们在搜库时,输入的是上万张二级谱图,以及相应的一级谱图信号,和母离子的精确质荷比。
那么,我们软件主要干哪些事情呢?
首先我们需要准备一个数据库(如果是de novo从头预测蛋白序列,则不需要准备)。
比如我们拿到人类的数据库,软件会根据我们设定的参数进行理论酶切。比如我们告诉软件此次试验用的是trypsin酶切,那么软件也会对每条蛋白序列的trypsin酶切位点进行断裂,与实验中的被处理的蛋白序列保持一致。
假设,我们将人的两万个蛋白进行理论酶切,会生成两百万个理论肽,这些理论肽又会生成理论b-y离子,得到理论的谱图。
下图右下角就是一个理论b-y离子谱图,可以看到,这样一个谱图,里面每一个离子的信号强度是很高的,而且是相同的。虽然有一些比较新的软件尝试进行理论强度的预测,但目前来讲还不算非常主流。
接下来,将理论的b-y离子谱图和通过质谱实际得到的谱图进行比对。
比对过程相对而言比较复杂。简单来说,类似于给你一堆照片,然后一堆真人,让你来判断哪张照片是哪个人的,软件做的就是类似的一个过程。
因此,生成理论酶切库,以及选择一个合适的肽段库,就跟我们识别照片去认人是一样的。选择的库越准确,筛选的速度和准确性就越高。也就是说要选择一个合适的搜库空间。
确定好合适的搜库空间后,我们会拿到与质谱数据相对比较贴近的理论肽段的数据列表,这些理论肽段的原子量都是可以预测出来的,一般来说根据肽段强度从几百到几千都会有一个列表。
质谱的原始谱图也会有相应的质荷比的列表,我们将这些质荷比按其电荷数还原成道尔顿,也会拿到一张表。将这两张表进行比对,这就是我们搜库软件做的核心工作,这也是设置母离子的容差,即MS1的tolerance非常重要的原因。
以Orbitrap举例,它的MS1的分辨率可以达到十几万或者二三十万,那么相应的母离子的质量容差就可以是5ppm甚至更小,所以,高分辨的好处就是可以把理论候选肽段的质量范围缩小到一个非常窄的范围,让匹配更加准确。
举例来说,如果母离子是1000Da±3ppm,那么理论候选肽就可能从上百种缩小到十种或者几种,再去进行比对,这样做的速度和灵敏度就会提高很多。但是如果你缩减到一个不太合理的范围,比如你的质谱分辨率是±10ppm,但是你却用1ppm去搜,那么很有可能正确的候选肽段都没有能够落到这个范围供你筛选,所得到的都是一堆错误的结果。软件是无法判断选进来的是否包含正确的序列,它仍然会进行打分给出结果,这就会造成一定的假阳性。
我们知道,搜库软件会对鉴定到的结果进行打分。那么这个分数是怎么来的呢?我们主要介绍一种常用的打分算法,即基于概率的打分。
为什么大多数搜库软件都要将搜库的比对过程用概率的算法进行匹配呢?这是因为,无论软件或者仪器,都不是上帝,我们无从知道所得到的谱图是不是是一个真正的肽段,或者说一定是来自于这个数据库中的某一个肽段。就算我们用BSA标准蛋白去做,也可能有一些杂峰或者错误匹配。所以这不是一个绝对的准确的答案。
因此软件需要对结果进行评价,来评估什么样的谱图更可能的是一个正确的肽段匹配,这就是基于概率打分的基本原理,即,将我们的实验测量值与候选多肽序列的理论值进行匹配。
实验测量值只有一张谱图,而候选多肽序列可能有10张甚至100张谱图,只要我们把道尔顿或ppm设置的足够小(因为氨基酸只有20种),那么其排列组合都会落到一个差不多的范围之内。因此理论候选多肽序列一般来说不止一种,而是会有十几种或者二三十种。软件会对各个结果进行比对,根据打分给出一个排列组合。
然而,得分值并不能准确地反映这个结果是不是一个正确的。所以我们会将它进行一个概率的转换,不同的软件用不同的算法会进行正确概率的计算,然后设定一个随机匹配的阈值,通常我们认为低于这个概率阈值的匹配,才是正确的匹配。
比如说p-value或者expectation-value小于0.05,或者说更严格的0.01,我们才认为这个结果是可靠的。也就是说现在的软件都会去计算相应的统计值。原理类似于高考考试,100人参加,我们认为考试分数得第一名的,且与第二名有相当大的分数差距的人,才是我们要寻找的那个人。
Tips:
关于p值等统计学参数的含义,感兴趣的小伙伴们可以参考以下的推文:
在质谱鉴定的过程中,以下图来举例。大家会发现高强度的b-y离子谱峰都匹配上了,那么你觉得这张谱图的氨基酸序列vvllatgenk是不是一个正确匹配呢?
绝大多数人都会觉得此结果不错,应该是一个正确匹配。在Mascot软件中,这个结果的得分是35分,很多人认为25或者30分以上就是一个准确的结果。那这个结果到底是不是对的呢?
image
我们再来看下图的另外一个结果。下面这张谱图中,vvligdsgvgk这个肽段对于b-y离子的匹配更加丰富,看上去更加完整准确。事实上也是如此,它的得分达到了80分(Ions score),e-value是3.1X10-5!
真是不比不知道,一比吓一跳,先前的35分可以说是一个很差的匹配了,而这个80分的结果才是一个真正准确的匹配。
从上面这个例子,大家应该能直观地感受到,在搜库软件中,即便得到一个得分看上去还不错的结果,也并不表示就是正确的匹配,而是需要进行可信度评估,才可能找出真正正确的匹配。
image
对于如何计算出一个匹配是正确匹配的概率,我们使用基于probability原理的算法。这个算法绝大多数的搜库软件中都会使用,比如Mascot。那么,它的基本思路是怎样的呢?
分两种情况。
首先,如果有一个标准品,并且我知道它的绝对成分,也就是说它不存在任何杂质的时候,我们可以说这样一个匹配是确定一定及肯定正确的!但是如果说样品的组成相对比较复杂,无法完全知道里面是什么东西,那么如何定义结果的准确性,就需要用到更加稳妥的参数或者实验设计,并且要更加稳妥的去定义正确的阈值到底是多少。
有的小伙伴可能会问这样的问题:是否可以建立一个目标蛋白的序列数据库来提高鉴定灵敏度呢?对这个问题感兴趣的小伙伴,请戳如下推文延展阅读:
我们先来看看下图,这是一个实际的例子。这张谱图所有匹配的肽段的候选列表都已给出,大家可以看到1到4名分别是99,82,66,45.6分,除了99分的结果,看上去82和66分也都不错。但事实上,除了99分那条,后面匹配到的序列其实都是不正确的。
把刚才所说的过程换成下面这张示意图,大家可能更容易理解。图上红色的点是正确的匹配,剩下蓝色的点,就是我们刚才例子里说的除了99分以外的其它打分结果。
我们应该如何来评价红色的点就是正确的匹配结果呢?其实就是从统计分布图中来评判。假设红色的点和剩下的蓝色点的打分结果并没有显著的差异,比如绝大多数结果都在20到25分之间,那么我们认为这里面没有一个结果是可信的!
假设有一个结果是25分,而其余结果都是15分甚至更低,那么我们会认为这个25分的匹配是一个更加可信的结果。那么我们可不可以认为它一定是准确的呢?实事求是而言,也不一定,也有可能真正正确的序列并没有被放进数据库里搜索,如果放进去可能会出现一个明显高于25分的结果(大多数情况下,25分是一个比较差的得分)。
这就引出另一个问题,即数据库的选择!其实,过大或者过小的数据库都不是合理的选择。数据库过大,搜库时间很大,复杂度变大,得到随机错误匹配的概率变大;数据库过小,容易遗漏真正的目标序列,得不到正确的结果。
随着生物信息学的反展,对于结果的过滤已经引入了更多的算法,比如FDR算法等等。具体算法思路我们在后续课程中还会展开讲解。
蛋白质数据库
介绍完搜库原理,我们接下来介绍一些蛋白质数据库的知识。先来个总表,大家感受一下:
1:序列数据库
目前来说,用的最多的是UniProt KB,该数据库来自欧洲生物信息学中心。其次是美国的NCBI Genebank。这两个数据库搜集了全世界已公布的所有物种的蛋白质序列。如果实在搜不到结果,还可以用EST标签或者自己去测序,只是自己测序无法保证蛋白的完整程度。
2:注释数据库
鉴定到蛋白只是万里长征的第一步,后面我们还需要对蛋白进行注释,比如我们最常用到的Gene Ontology。人类蛋白数据库已经注释得很完整,而有的物种注释不够完整或者说注释得比较差的情况下,则需要通过同源性序列来间接注释。
3:蛋白相互作用数据库
当需要进一步研究蛋白的功能及作用机理时,常常需要了解蛋白-蛋白或蛋白-小分子相互作用,有很多收集蛋白相互作用的数据库可以供我们搜索,或者绘制互作网络。
4:生物通路分析数据库
比如大名鼎鼎的KEGG等工具,还有一些有偏好性的数据库,比如专门针对代谢通路的BioCyc,或者针对人类(及大鼠和小鼠)物种的IPA等。
5:蛋白质组学数据库
当我们完成了从搜库、注释,到机理分析的一系列功能,并完成了生物学实验验证,打算发表文章了。有一些蛋白质组学领域的杂志,比如JPR、MCP等,会要求我们将数据结构上传到指定的数据库中,用于共享或是同行的质量审查。目前来说用的最多的是ProteomeXchange,ProteomeDB,和iProx这三个数据库。iprox是中国国家蛋白质中心建立的。另外一些蛋白质组学相关的数据库,以及发表在CNS上的大规模数据,有一些组织也会将其搜集起来,做人的human protein atlas,比如GeneCards就是整合得很好的综合性数据库,我们可以在其中查到别人做过的详细结果数据。
这么多种类繁杂的数据库,相互之间的数据信息有怎样的联系呢?下面这张图告诉你答案:
可以这样说,所有的信息,最初都是从基因组出发的。基因组的数据是来自INSDC(全世界最大的基因组合作机构)发布的各个物种的基因数据,其中NCBI会将其搜集到GenBank里,EBI搜集到EnsemblGenomes里。GenBank中测序完整且注释完整的数据会放到RefSeq中。
KEGG在生物通路中用的很多,其实它也是一个搜集各类基因和小分子的数据库,它的pathway数据是平常我们用得最多的,其相对来说是比较权威的。其实一些常用的数据库,大家也可以从图里了解它们的数据来源,以及相互的关联。
当然,我们做蛋白鉴定的时候,最关心的还是蛋白序列数据库。全球两大知名的序列数据库,一个是NCBI,一个是EBI。先介绍下NCBI数据库。在NCBI里可以搜索到各种各样的信息,各种和生化以及组学相关的数据库都可以整合到NCBI中。NCBI支持的数据格式包括NCBI GI、GenBank ID、RefSeq ID,以及Entrez ID等。
NCBI的NCBInr非冗余数据库是搜库时常常会用到的,但它的问题在于NCBI内部数据的一致性比较差,它搜集了各种来源的数据,格式都不一样,后续会发现,搜集到NCBInr之后,同一个基因编码的蛋白会搜到好多个版本。
2016年,NCBI将gi号取消了,换成了GenBank ID,此过程十分艰难,很多软件都要对其进行相应的转换,也给使用者带来了很多不便。因此个人建议,还是先在UniProt库里搜索。如果从UniProt里实在找不到的序列信息,再去NCBInr里搜索。
Tips:
虽然UniProt主要搜集的是蛋白信息,但是它与相当多的注释数据库,如GO,KEGG等等,都有交叉合作。因此UniProt中的注释信息是相当完整的。
但是NCBI的优势也是非常明显的,就是它的数据信息非常全面!从下图可以看出,在过去的7年时间里,NCBI包含的核酸序列、蛋白序列和基因信息均有爆发式的增长。这归功于近年来基因组和转录组技术的发展。其中很多是中国人做出的贡献。
刚刚我们也提到了NCBI的问题,那么它的缺点对我们搜库有什么影响呢?
举个例子。
比如有一次我们做某种橘子的蛋白鉴定,在NCBI中搜索,如果用NCBInr(非冗余)来搜,你会得到88138条蛋白序列,但其中有21%的序列是完全一样的,原因就是其包含的数据来源太多了!如果我们用GenBank,就会发现只有15%的冗余(GenBank也不是单一来源的数据库,它自己也有好几个注释序列的来源)。
而当我们选用UniProt的话,发现结果里没有冗余!这就是UniProt的好处 ,帮我们进行了前期蛋白数据库的过滤和准备。这就是我们推荐优先使用UniProt的原因。
事实上,现在用UniProt的人越来越多了。它是目前世界上最大最完整的蛋白数据库,其来源非常多,比如有GenBank,EMBL-Bank,DDBJ等的coding sequences都会成为其收集来源。
它的收集一样会存在如同NCBI的问题,会有冗余或者说数据来源太过于复杂,导致蛋白序列有各种的版本。所有UniProtKB中有一个最大的版本TrEMBL(它搜集的信息来源也很杂,所有蛋白数有6400多万种),不建议大家在用序列数据库的时候直接用TrEMBL搜库,因为没有去过冗余。另外一个子库Proteomes,包含了比较全的物种(目前有5000多种)。如果有reference参考序列的蛋白质组,这些物种的冗余度是非常低的,用于我们蛋白质组学的研究就非常适合。
Tips:
Swiss-Prot是经过人工注释和review的数据库,它只有55万种蛋白。但是除了人类和小鼠蛋白质数据库因为研究得很广泛比较全面以外,剩下的各个物种都不是很全面。因此建议除了人类和小鼠外,别的物种不要直接采用swiss-prot搜库。
如果从NCBI或者UniProt里都没搜索到你想要的蛋白质序列,那么可以尝试使用这些物种的EST。它们虽然不太完整,但是会比较丰富,也就是说研究对象还没用经过大规模的基因组测序,来自于小规模机构或个人提供的RNA sequence序列信息。先对其按照coding的序列格式进行氨基酸转换后搜库。也就是说当我们只有mRNA或者coding sequence,但没有进行DNA sequence的序列进行拼接的话,那么只能用这样的数据库。
说了这么多,我们来小结一下数据库的选择:UniProt Proteomes是第一优先级,除了人和小鼠可以用Swiss-Prot更好以外,其余所有物种都优先用Proteomes,第二优先级GenBank/NCBInr,用于少数UniProt没有收集到的物种。
既然UniProt这么好用,我们再来介绍一下它是如何使用。
首先,我们得确认一下所要搜索的物种的拉丁文名称,比如说猪,因为是很常见的物种,所以在其拉丁文名后,包含了其英文名pig。但你如果用sus scrofa来搜索会得到最准确的结果,否则会得到大量的候选。
搜索完毕后。我们可以得到具体数据,比如蛋白数量26000种,编码基因21000种,这个时候我们可以有个预判:猪的蛋白质组相对来说是比较完整的。在该搜索页面中,有download选项,点击后可以进入相应的下载界面,下载到本地,导入搜库软件中,就可以使用了。
Tips:
目前在UniProt Proteomes数据库里,有reference proteome(数据库里会用R标签来表示)的物种目前有5862种。另外51999种物种有proteome但是没有reference,说明其数据相对来说还不够全面。
总结
此次分享了蛋白质组学网络大课堂前面四节重要的综述&基础课,涵盖了实验、仪器及数据分析等各个方面,希望对大家入门有所帮助。