第三章 序列两两比对
4
序
言
识别序列的进化关系能帮助我们描绘未知序列的功能。当一组序列 的比对显示出了显著的相似性,我们就认为它们属于同一个家族。如果 这个家族中一个成员的结构或功能已知,那么它的这些信息就可以推广 到家族中其它没有通过实验验证的序列。所以序列比对可以用于预测未 知结构和功能的序列的结构和功能。 序列比对可以用来推断两条序列是否是相关的。如果两条序列显著 相似,那么这种相似性是随机产生的可能性非常小,也就是说这两条序 列有共同的进化起源。当一个序列比对被正确的做出来,它就反应了两 条序列的进化关系:相同位置出现不同残基的区域代表残基替换;一条 序列的残基对应另一条序列的空位的区域代表在进化的过程中一条序列 出现过残基插入或删除。有一种情况也是可能的,那就是来源于同一祖 先的两条序列在某种程度上分离以至于它们有共同祖先的关系已经不能 从序列的水平上识别了。如果那样的话,它们的进化距离就必须通过其 它的方法识别了。
7
序
言
序列相似(similarity)与序列一致(identity)
序列比对中用到的另一对相关术语是序列相似与序列一致。这两个 概念对于核苷酸序列是同义的。而对于蛋白质序列,这两个概念是非常 不同的。在蛋白质序列比对中,序列一致是指待比对的两条序列中相同 残基匹配的比例;序列相似是指待比对的两条序列中很容易彼此替换具 有相似理化性质残基匹配的比例。有两种方法计算序列相似/一致度。 一种方法是用两条序列的全部长度,而另一种是利用较短的序列进 行标准化。第一种方法用如下公式计算序列相似度: S=[(Ls*2)/(La+Lb)]*100 其中S是序列相似的百分比,Ls是相似的残基数目,La和Lb分别是两条 序列的长度。
8
序
言
序列相似(similarity)与序列一致(identity)
第一种方法用如下公式计算序列一致度: I=[(Li*2)/(La+Lb)]*100 其中I是序列一致的百分比,Li是一致的残基数目,La和Lb分别是两条序 列的长度。 第二种方法利用如下公式计算序列的一致/相似度: I(S)%=Li(S)/La% 其中La是较短序列的长度。
Dotmatcher(bioweb.pasteur.fr/seqanal/interfaces/dotmatcher.html) Dottup(bioweb.pasteur.fr/seqanal/interfaces/dottup.html) Dothelix(www.genebee.msu.su/services/dhm/advanced.html) MatrixPlot(www.cbs.dtu.dk/service/MatrixPlot/ )
18
序列比对的方法
自我比较
19
序列比对的方法
点阵方法
点阵法给出了两条序列关系的一种直观描述,它很容易识别出序 列中高度相似的区域。这种方法的一个显著的优点是可以基于矩阵中 存在的水平方向上或垂直方向上长度相同的对角线来识别序列中的重 复区域。因此这种方法在基因组学中有一定应用。它在识别染色体重 复和比较两个高度相关的基因组中基因顺序的保守性非常有用。它在 通过检测序列的自补性来识别核苷酸序列的二级结构也非常有用。 点阵法能显示所有可能的序列匹配。然而,它要求用户将邻近的 对角线连接起来来构造带有残基插入和删除的全序列比对。这种方法 的另一个缺点是它缺少评价比对质量的统计上的精确性。这种方法在 两两比对中也存在局限性。它很难构造多序列比对。下面是几个利用 点阵法设计的序列两两比对的工具。
20
序列比对的方法
动态规划方法
动态规划是一种通过匹配两条序列中所有可能的字符对来确定最 优比对的方法。它和点阵法基本相似,就是也需要构造一个二维的矩 阵。而它确是通过将点阵转换为记录序列间匹配和失配的得分矩阵来 找最优比对的定量的方法。通过寻找矩阵中的最高分数集合来精确的 找到最佳联配
21
序列比对的方法
6
序
言
序列同源(homology)与序列相似(similarity)
对于DNA序列,由于只存在四种碱基,两条不相关的序列同一位置 至少有25%的机会相同,而对于蛋白质序列,一共有20中氨基酸,所以 不相关的序列中出现同一氨基酸的概率为5%。序列长度也是一个关键因 素。序列越短随机出现相同的残基的概率就高,序列越长随机相同的概 率就越小。 这就要求对短的序列给予高的阈值来判断它们同源。例如,对于有 100个氨基酸的蛋白质序列,如果全局比对有30%或更高的残基相同,就 认为它们很有可能同源,这个范围被称为“安全范围”;如果有20%~ 30%的氨基酸相同,它们的同源关系就不那么肯定了,这个范围被称为 “模糊范围”;如果有低于20%的氨基酸相同,那么就很难认为它们具 有同源关系,这个范围被称为“黑暗范围”(P33图3.1)。这是一种不精 确的方法,尤其是对模糊范围很难判定是否同源,后面介绍的序列比对 的统计学上的显著性将会给出精确的方法判断序列是否同源。
22
序列比对的方法
A
A T
1 0 0 0 0
C
0 1 1 2 2
T
0 2 2 2 3
G
0 2 3 3 3
C
0 2 3 4 4
C
0 2 3 5 5
T
0 3 3 5 6
G
C T
最佳比对是:A C T G C C T
A -TG - CT
23
序列比对的方法
空位罚分
在寻找最优比对时要用到代表插入和删除的空位。因为在自然进化 过程中插入和删除发生的频率要比替换相对少,所以引进空位在计算上 应该是比较谨慎的以反映在进化中插入和删除发生的少。然而实际中分 配罚分值是比较任意的,因为没有革命性的理论来确定引进插入和删除 所付出的精确的代价。如果罚分值设置的过低,空位就会过多以至于无 关序列也会得到很高的相似性得分;如果罚分值设置的过高,空位就很 难被引进以至于很难找到合理的比对,这也是不切实际的。通过对球状 蛋白的经验学习,我们已经得到了一组适合于大部分比对的罚分值。在 大多数比对程序中它们可以被用作默认的罚分值。
12
序列比对的方法
13
序列比对的方法
14
序列比对的方法
点阵方法
用点阵法比较大序列时存在一个问题,那就是高噪音水平。在大多 数点平面上,点被画的到处都是,使真正的比对难以被识别。对于DNA 序列,问题尤其严重,因为DNA序列中只有四种字符,所以每一个碱基 都有1/4的机会与另一条序列的碱基匹配。为了降低噪音,我们不再直接 扫描单个碱基的匹配,而是引进过滤技术。用一个适当长度的“窗口” 来覆盖一段连续的残基。当使用过滤器时,窗口沿着两条序列滑动来比 较所有可能的连续残基。只有当等于窗口长度的一段连续残基和另一条 序列相同长度的残基匹配时才在矩阵中相应位置画点。这种方法在降低 噪音水平上是有效的。窗口也被称作“tuple”,其大小是可以被操纵的以 使它能识别特定模式的序列。然而,如果窗口被选的很长,比对的敏感 性就降低了。
序列比对的方法
比对算法
比对算法,不管是全局比对还是局部比对,基本上是相似的,只是 比对相似残基时最优化策略不同。所有比对算法都是基于以下三种方法 的:点阵方法,动态规划方法和基于单词的方法。点阵法和动态规划算 法在这章讲,而基于单词的方法将在下一章讲。
11
序列比对的方法
点阵方法
最基本的序列比对方法是点阵法,也叫点平面图法。这是一种在二 维矩阵中比较两条序列的直观方法。待比较的两条序列被放在矩阵的横 轴和纵轴上。我们通过扫描一条序列上的每一个残基与另一条序列的所 有残基的相似性来比较两条序列。如果发现了一个残基匹配就在相应位 置画一个点。而矩阵的其它位置保持空白。如果两条序列有大量的相似 区域,就用直线沿着对角线将连续的点连接起来。如果对角线的中间出 现断点,就表明有残基的插入和删除。矩阵中平行的对角线代表序列中 的重复区域。
3
序
进化基础
言
DNA和蛋白质是进化的产物。它们可以被认为是编码数百万年 进化史的分子化石。在进化史上,这些分子经历了随机变化过程,期 中一些被进化所选择而保留了下来。这些被选择的序列逐渐积累突变 和交叉,进化的痕迹在序列的某些部分被保留下来从而可以识别它们 共同的祖先。进化痕迹的存在是由于一些对序列结构和功能起关键作 用的残基倾向于被自然选择所保留;而另一些不起关键作用的残基倾 向于频繁的改变。例如,一个酵母家族的活性位点残基倾向于被保存 下来是由于它们对催化功能起作用。所以,通过序列比对,保守的和 改变了的序列模式就能被识别出来。在比对中序列的保守度体现了不 同序列之间的进化关系。反之,序列之间的差别反映了在进化的过程 中序列以替换、插入和删除残基的形式发生了变化。
15
序列比对的方法
16
序列比对的方法
17
序列比对的方法
点阵方法
点阵法有许多变形。例如,一条序列可以和它自身比对以识别内部 重复元素。在自比对当中会存在一条主对角线以表示其完美匹配。如果 内部重复元素存在,会观察到在主对角线的上方或下方有短的对角线。 DNA序列的自补(也叫反向重复),例如那些存在发夹结构的家族,也 能用点距阵法识别。在这种情况下,一条DNA序列与它的反向补序列进 行比较。平行的对角线代表反向重复。为了比较蛋白质序列,必须使用 一个权重系统来描述氨基酸残基的相似度。
9
序列比对的方法
序列两两比对的最终目的是找到两条序列的最佳匹配,也就是找到 残基之间的最大相似。为了达到这个目标,一条序列需要相对于另一条 序列移动以找到具有最大相似程度的位置。有两种经常用到的不同的比 对策略:全局比对和局部比对。
全局比对和局部比对
在全局比对中,我们假定两条序列在整个长度上是相似的。全局比 对时我们从头到尾的比较两条序列以找到最佳匹配。这种方法很适用于 比对两条大体上长度相同且极度相似的序列。对于发散的不同长度的序 列,这种方法不能产生最理想的结果因为它不能识别出两条序列中高度 相似的局部序列。 在局部比对中,我们不假设两条序列全局相似,只是找两条序列中 高度相似的局部区域而不考虑其它区域。这种方法能比对比较分散的序 列来找出DNA或蛋白质序列中的保守模式。被比对的两条序列可以不等 长。 这种方法很适合于比对包含相似模块的分散的生物序列, 以找出 domain或motif。 10