双序列比对的理论基础(一)

双序列比对的理论基础(一)

比对的具体流程:
1使用字符串模拟生物序列,那么两条序列的相似性比对可看成两个字符串的对齐,运用特定的算法搜索所有可能的比对方案。
2 采用具有生物学意义的打分机制(替换矩阵),衡量算法的比对结果,获得最优比对。

1.1 字符模型的建立。

两条序列x和y;
长度分别为m和n;
xi 表示序列x中的第i个字符。
yi 表示序列y中的第i个字符。
这些字符全部来自字母表Ω={A、T、C、G} 表示是基因序列。
或者全来自Ω={A、R、N、D、C、Q、E、G、H、I、L、K、M、F、P、S、T、W、Y、V、X}。表示是氨基酸序列。
比对结果的输出模型:输出的结果可能是含有空位(gap),所以字符表中得添加上“——”,表示序列进化中,发生了插入或缺失。

2.1 打分机制的建立

我们现在得建立一个打分机制,对我们序列比对的结果进行评估也就是进行量化。而前人已经为我们建好了。从概率论角度来描述就是:

序列相关之于无关的的对数相对似然

这句话是《生物序列分析》书中的原话,初次读到这句时候,也是一脸懵b。啥是相关啥又是无关?似然又是什么鬼? 下面我们就探讨一下机制建立的过程。

2.1.1打分机制建立的假设:

  1,接受进化论的观点。即是基于进化论的模型,即两条待对比的序列是有同一条“祖先”序列进化而来。这句话其实对应着书中一开始提到的大自然是修补匠,不是发明家。进化过程中,发生了碱基或氨基酸的替换、插入、缺失。
2,序列不同位点上突变的发生时相互独立的(将任意长的连续空位当做一个突变来看待)
3,只考虑无空位的全局二序列联配,即两条完全联配的等长序列。

2.1.2打分机制建立时的符号说明

两条序列x和y;
长度分别为m和n;
xi 表示序列x中的第i个字符。
yi 表示序列y中的第i个字符。
a,b表示字母表中的字符。

2.1.3 打分机制的推导

  建立打分矩阵的目的就是为比对的结果进行计分,以衡量两条序列相关之于无关的相对似然。
“相关之于无关的相对似然”,当初我也是百思不得其解。复习了点概率论的基础后,才体会到这句话。这句话可以说是双序列比对的数理基础。我将这句话拆开来讲。
 1,相关。
“相关”是指匹配(match)模型M,在匹配模型中,联合概率pab表示残基a和残基b是由它们共同祖先中某个未知的残基c(c可能就是a或b)衍生而来的概率。
如果以上还是难以理解的话,我提供一个不太严谨的说法。即假设造物主真的存在,造物主无形的手调控着生物的进化,比如它决定了任意位点的鸟氨酸突变成为赖氨酸的概率是0.3、亮氨酸不突变(保守)的概率是0.5等等诸如此类。
  2,无关。
“无关”是指无关或随机模型R,在该模型中是不受进化的约束,即序列x上的某一位点出现a的概率为pa,则在序列y中同一位点出现b的概率是pb,两个概率是相互独立的。即两条序列这一位点出现a,b的概率为pa*pb
  3,相对。
在匹配模型中,两条序列出现的概率为
P ( x , y M ) = i p x i y i P ( x , y | M ) = \prod _ { i } p _ { x i y _ { i } }
在随机模型中,两条序列出现的概率为 P ( x , y R ) = i q x i i q y i P ( x , y | R ) = \prod _ { i } q _ { x i } \prod _ { i } q _ { y _ { i } }
然后用匹配模型下的概率除以随机模型下的概率(背景分布),即 P ( x , y / M ) P ( x , y / R ) = i p x i y i i q x i i q y i \frac { P ( x , y / M ) } { P ( x , y / R ) } = \frac {\prod _ { i } p _ { x i y _ { i } } } { \prod _ { i } q _ { x i } \prod _ { i } q _ { y _ { i } } } 。为啥除以随机模型下的概率?我的解释:以亮氨酸与鸟氨酸为例,可能在自然界中这两个氨基酸联配的概率为0.9,但是两个氨基酸随机成对出现的概率为0.8。看似两个氨基酸十分的保守,实则不然。当然这种说法,很是牵强。如果不能接受这种解释的话,可以自己看看相对熵的定义,也许你会理解的更为深入。
为了得到可加的计分系统,我们对该比值取对数,称为对数几率比
log P ( x , y / M ) P ( x , y / R ) = log i p x i y i i q x i i q y i \log\frac { P ( x , y / M ) } { P ( x , y / R ) }=\log\frac {\prod _ { i } p _ { x i y _ { i } } } { \prod _ { i } q _ { x i } \prod _ { i } q _ { y _ { i } } }
so,现在打分系统已经初步建立好了。我们只需要知道20中氨基酸任意两两在匹配模型中的发生概率,除以随机出现的概率。
例如一个比对的结果:
CSA
| | |
GSA
 针对此结果我们用 log p C G q C q G \log \frac { p _ { C G } } { q _ { C } q _ { G } } + log p S S q S q S \log \frac { p _ { SS } } { q _ { S } q _ { S } } + log p A A q A q A \log \frac { p _ { A A } } { q _ { A } q _ { A } }
来表示序列比对结果的分值,显然分值越大,则表明比对结果输出的序列间的同源性最大,也是我们所期望的结果。

  4,似然。就像我之前所举例的,假设有造物主按照一定的概率调控着生物的进化,那这个概率就相当于匹配模型中的两个残基进行联配的概率。but,现在并没有造物主,所以我们并不知道两个残基在自然界中的联配概率。除非我们将自然界中的所有序列进行比对,然后进行统计得出概率,但这是不可能的。一,数据量过大,不可能获得所有的序列。二,即便你获得了所有的数据,你又如何进行比对,毕竟现在的目的就是设计序列比对的算法。所以,我们应该退而求其次,应用一部分的数据进行统计,用观测得到的频率来表示概率(也就是最大似然估计)。而似然(likelihood)就是通过某些观测的结果来对有关事物的参数进行估计。

3.1 本篇总结

  进行到这里,相信你已经对序列比对的理论基础有了一定的认知。但是,现在又有新的疑问。如何进行似然估计?似然估计得出打分机制即替换矩阵怎么用呢?

发布了50 篇原创文章 · 获赞 13 · 访问量 8814

猜你喜欢

转载自blog.csdn.net/weixin_43770577/article/details/103983494