|
|
|
|
|
|
|
同的模型,可以从不同角度反映序列的特性,如结构、功能、进化关系等。很难断定,一个模型一定比另一个模型好,也不能说某个比对结果一定正确或一定错误,而只能说它们从某个角度反映了序列的生物学特性。此外,模型参数的不同,也可能导致比对结果的不同。 图3.1 序列比对,图中“-”表示插入和删除,用字符表示相同的残基,“+”表示相似残基。序列比对的数学模型大体可以分为两类,一类从全长序列出发,考虑序列的整体相似性,即整体比对;第二类考虑序列部分区域的相似性,即局部比对。局部相似性比对的生物学基础是蛋白质功能位点往往是由较短的序列片段组成的,这些部位的序列具有相当大的保守性,尽管在序列的其它部位可能有插入、删除或突变。此时,局部相似性比对往往比整体比对具有更高的灵敏度,其结果更具生物学意义。区分这两类相似性和这两种不同的比对方法,对于正确选择比对方法是十分重要的。应该指出,在实际应用中,用整体比对方法企图找出只有局部相似性的两个序列之间的关系,显然是徒劳的;而用局部比对得到的结果也不能说明这两个序列的三维结构或折叠方式一定相同。BLAST和Fast A等常用的数据库搜索程序均采用局部相似性比对的方法,具有较快的运行速度,而基于整体相似性比对的数据库搜索程序则需要超级计算机或专用计算机才能实现。 数据库查询,是指对序列、结构以及各种二次数据库中的注释信息进行关键词匹配查找。例如,对蛋白质序列数据库SwissProt输入关键词insulin(胰岛素),即可找出该数据库所有胰岛素或与胰岛素有关的序列条目(Entry)。数据库查询有时也称数据库检索,它和互联网上通过搜索引擎 (Search engine) 查找需要的信息是一个概念。数据库搜索在分子生物信息学中有特定含义,它是指通过特定的序列相似性比对算法,找出核酸或蛋白质序列数据库中与检测序列具有一定程度相似性的序列。例如,给定一个胰岛素序列,通过数据库搜索,可以在蛋白质序列数据库SwissProt中找出与该检测序列(query sequence)具有一定相似性的序列。因此,在生物信息学中,数据库搜索是专门针对核酸和蛋白质序列数据库而言,其搜索的对象,不是数据库的注释信息,而是序列信息。多序列比对双序列比对是序列分析的基础。然而,对于构成基因家族的成组的序列来说,我们要建立多个序列之间的关系,这样才能揭示整个基因家族的特征。由于可以提高序列比对的信噪比,多序列比对在阐明一组相关序列的重要生物学模式方面起着相当重要的作用。本章中,我们将介绍一系列多序列比对的方法,从完全手动的方式到广泛应用的计算机程序,即所谓自动比对的方法。多序列比对有时用来区分一组序列之间的差异,但其主要用于描述一组序列之间的相似性关系,以便对一个基因家族的特征有一个简明扼要的了解。与双序列比对一样,多序列比对的方法建立在某个数学或生物学模型之上。因此,正如我们不能对双序列比对的结果得出“正确或错误”的简单结论一样,多序列比对的结果也没有绝对正确和绝对错误之分,而只能认为所使用的模型在多大程度上反映了序列之间的相似性关系以及它们的生物学特征。目前,构建多序列比对模型的方法大体可以分为两大类。第一类是基于氨基酸残基的相似性,如物化性质、残基之间的可突变性等。另一类方法则主要利用蛋白质分子的二级结构和-结构信息,也就是说根据序列的高级结构特征确定比对结果。显然,这两种方法所得结果可能有很大差别。一般说来,很难断定哪种方法所得结果一定正确,应该说,它们从不同角度反映蛋白质序列中所包含的生物学信息。基于序列信息和基于结构信息的比对都是非常重要的比对模型,但它们都有不可避免的局限性,因为这两种方法都不能完全反映蛋白质分子所携带的全部信息。我们知道,蛋白质序列是经过DNA序列转录翻译得到的。从信息论的角度看,它应该与DNA分子所携带的信息更为“接近”。而蛋白质结构除了序列本身带来的信息外,还包括经过翻译后加工修饰所增加的结构信息,包括残基的修饰,分子间的相互作用等,最终形成稳定的天然蛋白质结构。因此,这也是对完全基于序列数据比对方法批评的主要原因。显然,如果能够利用结构数据,对于序列比对无疑有很大帮助。不幸的是,与大量的序列数据相比,实验测得的蛋白质三维结构数据实在少得可怜。在大多数情况下,并没有结构数据可以利用,我们只能依靠序列的相似性和一些生物化学特性建立一个比较满意的多序列比对模型。多序列比对的定义为了便于描述,我们对多序列比对过程给出下面的定义。把多序列比对看作一张二维表,表中每一行代表一个序列,每一列代表一个残基的位置。将序列依照下列规则填入表中:(a)一个序列所有残基的相对位置保持不变;(b)将不同序列间相同或相似的残基放入同一列,即尽可能将序列间相同或相似残基上下对齐(表4.1)。我们称比对前序列中残基的位置为绝对位置。如序列Ⅰ的第3位的残基是甘氨酸G,则绝对位置Ⅰ3就是甘氨酸,而不能变成任何其它氨基酸。相应地,我们称比对后序列中残基的位置为相对位置。显然,同一列中所有残基的相对位置相同,而每个残基的绝对位置不同,因为它们来自不同的序列。需要说明的是,绝对位置是序列本身固有的属性,或者说是比对前的位置,而相对位置则是经过比对后的位置,也就比对过程赋予它的属性。 1 2 3 4 5 6 7 8 9 1 I Y D G G A V - E A L II Y D G G - - - E A L III F E G G I L V E A L IV F D - G I L V Q A V V Y E G G A V V Q A L 表4.1 多序列比对的定义表示五个短序列(I-V)的比对结果。通过插入空位,使5个序列中大多数相同或相似残基放入同一列,并保持每个序列残基顺序不变。算法复杂性多序列比对的计算量相当可观,因此有必要分析以下技术的复杂性。双序列比对所需要的计算时间和内存空间与这两个序列的长度有关,或者说正比于这两个序列长度的乘积,用O(m1m2)表示。其中m1、m2是指两条序列的长度。三序列比对则可以理解为将双序列比对的两维空间扩展到三维,即在原有二维平面上增加一条坐标轴。这样算法复杂性就变成了O(m1m2m3),其中m3表示第三条序列的长度。随着序列数量的增加,算法复杂性也不断增加。我们用O(m1m2m3…mn)表示对n个序列进行比对时的算法复杂性,其中mn是最后一条序列的长度。若序列长度相差不大,则可简化成O(mn),其中n表示序列的数目,m表示序列的长度。显然,随着序列数量的增加,序列比对的算法复杂性按指数规律增长。降低算法复杂性,是研究多序列比对的一个重要方面。为此,产生了不少很有实用意义的多序列比对算法。这些方法的特点是利用启发式(heuristics)算法降低算法复杂性,以获得一个较为满意但并不一定是最优的比对结果,用来找出子序列、构建进化树、查找保守序列或序列模板,以及进行聚类(clustering)分析等。有的算法将动态规划和启发性算法结合起来。例如,对所有的序列进行两两比对,将所有的序列与某个特定的序列进行比对,根据某种给定的亲源树进行分组比对,等等。必须指出,上述方法求得的结果通常不是最优解,至少需要经过n-1次双序列比对,其中n为参与比对的序列个数。 < 1 > < 2 >
|
|
|
|
设为首页 | 加入收藏 | 广告服务 | 友情链接 | 版权申明
Copyriht 2007 - 2008 © 科普之友 All right reserved |