为确定两个或多个序列之间的相似性以至于同源性,而将它们按照一定的规律排列。
背景及简介
序列比对是生物信息学的基本组成和重要基础。序列比对的基本思想是,基于生物学中序列决定结构,结构决定功能的普遍规律,将核酸序列和蛋白质一级结构上的序列都看成由基本字符组成的字符串,检测序列之间的相似性,发现生物序列中的功能、结构和进化的信息。
序列比对的理论基础是进化学说,如果两个序列之间具有足够的相似性,就推测二者可能有共同的进化祖先,经过序列内残基的替换、残基或序列片段的缺失、以及序列重组等
遗传变异过程分别演化而来。序列相似和序列同源是不同的概念,序列之间的相似程度是可以量化的参数,而序列是否同源需要有进化事实的验证。在残基-残基比对中,可以明显看到序列中某些氨基酸残基比其它位置上的残基更保守,这些信息揭示了这些保守位点上的残基对蛋白质的结构和功能是至关重要的,例如它们可能是酶的
活性位点残基,形成
二硫键的
半胱氨酸残基,与配体结合部位的残基,与
金属离子结合的残基,形成特定结构motif的残基等等。但并不是所有保守的残基都一定是结构功能重要的,可能它们只是由于历史的原因被保留下来,而不是由于进化压力而保留下来。因此,如果两个序列有显著的
保守性,要确定二者具有共同的进化历史,进而认为二者有近似的结构和功能还需要更多实验和信息的支持。通过大量实验和序列比对的分析,一般认为蛋白质的结构和功能比序列具有更大的
保守性,因此粗略的说,如果序列之间的相似性超过30%,它们就很可能是同源的。
值得注意的是,在分子生物学中,DNA或蛋白质的相似性是多方面的,可能是核酸或氨基酸序列的相似,可能是结构的相似,也可能是功能的相似。一级结构序列相似的分子在高级结构和功能上并不必然有相似性,反之,序列不相似的分子,可能折叠成相同的空间形状,并具有相同的功能。一般的序列比对主要是针对一级结构序列上的比较。
分类
双序列比对
在生物信息处理中,我们希望找出两条序列S和T之间具有的某种相似性关系,这种寻找生物序列相似性关系的算法就是双序列比对算法。我们通常利用两个序列之间的字符差异来测定序列之间的相似性,两条序列中相应位置的字符如果差异大,那么序列的相似性低,反之,序列的相似性就高。
多序列比对
把两个以上字符序列对齐,逐列比较其字符的异同,使得每一列字符尽可能一致,以发现其共同的结构特征的方法称为多序列比对。多序列比对问题其实是双序列比对问题的推广。
多序列比对的目标是使得参与比对的序列中有尽可能多的列具有相同的字符,即,使得相同残基的位点位于同一列,这样以便于发现不同的序列之间的相似部分,从而推断它们在结构和功能上的相似关系,主要用于分子进化关系,预测蛋白质的二级结构和三级结构、估计
蛋白质折叠类型的总数,
基因组序列分析等。
由于多序列比对能够揭示双序列比对所不能发现的序列微弱相似性、序列模式和功能位点,因而对蛋白质和核酸序列的结构、功能和进化研究更加有用。
全局比对
全局比对是指将参与比对的两条序列里面的所有字符进行比对。 全局比对主要被用来寻找关系密切的序列。由于这些序列也都很易通过本地比对方法找到,现在全局比对也有些被认为只是一种技巧。另外,全局比对在应用于
分子进化时也有些问题(比如domain shuffling -见下),这也限制了这种方法的可用性。
局部比对
1981年,由F. Smith 和 M.Waterman首次提出局部比对
算法,动态规划方法通过较少的改动便可以用来识别匹配的子序列, 并且忽略匹配区域之前或之后的失配和空位;局部比对时,表中小于零的位置用零代替。主要用来考察两序列的某些特殊片段。
算法过程
实际操作中利用计算机程序实现序列比对的基本算法。序列比对不仅需要考虑子序列之间的匹配,而且需要对整个序列进行比较。也就是说,必须考虑两个序列中所有残基的匹配。这就意味着,不可能使所有残基都能严格匹配。在这种情况下,序列比对中确定空位的过程变得十分复杂。
在进行序列两两比对时,有两方面问题直接影响相似性分值:取代矩阵和
空位罚分。
取代矩阵
粗糙的比对方法仅仅用相同/不同来描述两个残基的关系,显然这种方法无法描述残基取代对结构和功能的不同影响效果,
缬氨酸对
异亮氨酸的取代与
谷氨酸对异亮氨酸的取代应该给予不同的打分。因此如果用一个取代矩阵来描述
氨基酸残基两两取代的分值会大大提高比对的敏感性和生物学意义。虽然针对不同的研究目标和对象应该构建适宜的取代矩阵,但国际上常用的取代矩阵有PAM和BLOSUM等,它们来源于不同的构建方法和不同的参数选择,包括PAM250、BLOSUM62、BLOSUM90、BLOSUM30等。对于不同的对象可以采用不同的取代矩阵以获得更多信息,例如对
同源性较高的序列可以采用BLOSUM90矩阵,而对同源性较低的序列可采用BLOSUM30矩阵。
空位罚分
空位罚分是为了补偿插入和缺失对序列相似性的影响,由于没有什么合适的
理论模型能很好地描述空位问题,因此空位罚分缺乏理论依据而更多的带有主观特色。一般的处理方法是用两个罚分值,一个对插入的第一个
空位罚分,如10-15;另一个对空位的延伸罚分,如1-2。对于具体的比对问题,采用不同的罚分方法会取得不同的效果。
对于比对计算产生的分值,到底多大才能说明两个序列是同源的,对此有统计学方法加以说明,主要的思想是把具有相同长度的随机序列进行比对,把分值与最初的比对分值相比,看看比对结果是否具有显著性。相关的参数E代表随机比对分值不低于实际比对分值的
概率。对于严格的比对,必须E值低于一定阈值才能说明比对的结果具有足够的统计学显著性,这样就排除了由于偶然的因素产生高比对得分的可能。
序列比对的统计检验
序列比对实际上是根据特定数学模型找出序列之间最大匹配残基数。而序列比对数学模型一般用来描述序列中每一个子
字符串之间的匹配情况。通过改变某些参数可以得到不同比对结果,例如空位罚分值大小。此外,序列长度差异和字母表复杂度也会影响比对结果。合理调节参数,会减少空位数目,得到较好的结果,而放宽对空位罚分的限制,理论上任意序列都可以得到某个对比结果。因此序列比对的结果并不能作为两者之间一定存在同源关系的依据。
常用序列比对程序通常给出一些统计值,用来表示结果的可信度。
BLAST程序中使用的统计值由概率p和期望值e。概率p表示比对结果得到的分数值的可信度。一般来说,p越接近于0,则比对结果的可信度越大。期望值e描述搜索某一特定数据库时,随机出现的匹配序列数目。
重要性
生物信息学的研究重点主要体现在基因组学和蛋白质学两方面,具体地说就是从
核酸和蛋白质序列出发, 分析序列中表达结构和功能的生物信息。生物信息学的基本任务是对各种生物分析序列进行分析, 也就是研究新的计算机方法, 从大量的序列信息中获取
基因结构、功能和进化等知识。而在序列分析中, 将未知序列同已知序列进行相似性比较是一种强有力的研究手段,从序列的片段测定, 拼接, 基因的表达分析, 到RNA和蛋白质的结构功能预测。物种亲缘树的构建都需要进行生物分子序列的相似性比较。生物信息学中的序列比对
算法的研究具有非常重要的理论意义和实践意义。