其他分享
首页 > 其他分享> > 双序列比对的理论基础之建造替换矩阵的合理性证明

双序列比对的理论基础之建造替换矩阵的合理性证明

作者:互联网

双序列比对的理论基础之建造替换矩阵的合理性证明

 前言:如果对最大似然估计没有概念的话,可以看看我之前写的《似然,似然,似是而然》
 结合前几篇文章我们大致的了解了计分矩阵的流程:对某以蛋白质家族进行多序列对比,然后按某一阈值(等同残基比)进行聚类,之后将匹配的无空位的区域划分为block,然后统计各个block中残基之间的联配的频率,用归一化的频率估计概率,进行最大似然估计,估计出在自然界中各残基联配的概率(即匹配模型M的参数)。
  《双序列比对的基础(2)之替换(计分)矩阵系列》提出了疑问:怎么没进行最大似然估计啊?没有列似然函数啊,没有求极值点啊。从样本数据得到的频率怎么直接估计为总体的参数呢? 所以怀疑建造的替换矩阵是不合理的!
 那么本文就探讨探讨这个问题。
 首先,之前我们说过我们必须将生物学的问题抽象成数学模型。而残基对之间的联配可看做是多项分布。多项分布是二项分布的推广。
 二项分布就是我抛出一枚硬币,它的结果不是正面就是反面。我们抛出10次,计算出现5次正面的概率很简单。而多项分布则是我扔色子会有六种状态,现在我扔了十次,我想知道出现事件A(A事件=点数为1出现2次和点数为2出现4次和点数为3出现1次和点数为4出现1次和点数为5出现1次和点数为6出1次。)的概率是多少?注意在多项分布中,每个状态出现的频率必须大于0!
  而残基对之间的联配情况就可看做多项分布,只不过有210中状态(20种氨基酸的两两组合),并且在blocks中每种状态都出现过。所以我们就可以按照多项分布式列出似然函数,为进行最大似然估计奠定了基础。
 符号说明:
n={n1n_{1}n1​、n2n_{2}n2​、n3n_{3}n3​、、、n210n_{210}n210​}
nin_{i}ni​:第i种状态被观测到的频率。如 n1n_{1}n1​可表示鸟氨酸与亮氨酸在blocks中联配的频率。
N:blocks中出现的残基对总数=n1n_{1}n1​+ n2n_{2}n2​+n3n_{3}n3​+…+n210n_{210}n210​
θ\thetaθ={ θ1\theta_{1}θ1​、 θ2\theta_{2}θ2​、 θ3\theta_{3}θ3​、、、 θ210\theta_{210}θ210​}
θi\theta_{i}θi​=第i种状态出现的概率参数。
θML\theta^{ML}θML=n/N(用归一化的频率表示概率)
 所以现在我们需要证明当θ\thetaθ=θML\theta^{ML}θML 时,似然函数L(n1n_{1}n1​,n2n_{2}n2​,n3n_{3}n3​,n210n_{210}n210​|θ\thetaθ)取得最大值。即可将 θML\theta^{ML}θML估计为在自然界中残基对联配和残基与空位联配的概率。
 下面我们将提供两种证明方法。分别用到了相对熵的性质和拉格朗日乘数法。
  第一种:此证明等价于任意θ\thetaθ!=θML\theta^{ML}θML,logLn1,n2,n3,,,n210θML)L(n1,n2,n3,,,n210θ)\log \frac { L(n_{1},n_{2},n_{3},,,n_{210}|\theta^{ML}) } { L \left( n _ { 1 } , n _ { 2 } ,n_{3} , ,, n _ {210 } |\theta \right) }logL(n1​,n2​,n3​,,,n210​∣θ)L(n1​,n2​,n3​,,,n210​∣θML)​ >0
 根据多向分布的概率函数可以轻易的写出对应的似然函数。(两函数形式上一样,只是看待的角度不一样) 因此
L(n1n_{1}n1​,n2n_{2}n2​,n3n_{3}n3​,n210n_{210}n210​|θ\thetaθ)=N!i=1210ni!\frac { N ! } { \prod _ { i = 1 } ^ { 210 } n _ { i } ! }∏i=1210​ni​!N!​*i=1210θini\prod _ { i = 1 } ^ { 210 } \theta _ { i } ^ { n _ { i } }∏i=1210​θini​​

从而,logLn1,n2,n3,,,n210θML)L(n1,n2,n3,,,n210θ)\log \frac { L(n_{1},n_{2},n_{3},,,n_{210}|\theta^{ML}) } { L \left( n _ { 1 } , n _ { 2 } ,n_{3} , ,, n _ {210 } |\theta \right) }logL(n1​,n2​,n3​,,,n210​∣θ)L(n1​,n2​,n3​,,,n210​∣θML)​=logi=1210(θiML)nii=1210θini\log \frac { \prod _ { i = 1 } ^ { 2 1 0 } \left( \theta _ { i } ^ { M L } \right) ^ { n _ { i } } } { \prod _ { i = 1 } ^ { 210} \theta _ { i } ^ { n _ { i } } }log∏i=1210​θini​​∏i=1210​(θiML​)ni​​=i=1210nilogθiMLθi\sum _ { i = 1 } ^ { 210 } n _ { i } \log \frac { \theta _ { i } ^ { ML } } { \theta _ { i } }∑i=1210​ni​logθi​θiML​​
又因为
nin_{i}ni​/N=θiML\theta_{i}^{ML}θiML​
所以将nin_{i}ni​换掉,
i=1210nilogθiMLθi\sum _ { i = 1 } ^ { 210 } n _ { i } \log \frac { \theta _ { i } ^ { ML } } { \theta _ { i } }∑i=1210​ni​logθi​θiML​​ = Ni=1210θiMLlogθiMLθiN \sum _ { i = 1 } ^ { 210 } \theta _ { i } ^ { M L } \log \frac { \theta _ { i } ^ { M L } } { \theta _ { i } }N∑i=1210​θiML​logθi​θiML​​
我们可以发现:
i=1210θiMLlogθiMLθi\sum _ { i = 1 } ^ { 210 } \theta _ { i } ^ { M L } \log \frac { \theta _ { i } ^ { M L } } { \theta _ { i } }∑i=1210​θiML​logθi​θiML​​是相对熵的形式,而根据相对熵大于等于0的性质,且N大于0,所以我们得证。
ps:

相对熵:H(PQ)=iP(xi)logP(xi)Q(xi)H ( P \| Q ) = \sum _ { i } P \left( x _ { i } \right) \log \frac { P \left( x _ { i } \right) } { Q \left( x _ { i } \right) }H(P∥Q)=∑i​P(xi​)logQ(xi​)P(xi​)​

(相对熵大于等于0的证明将放在另一篇博客。)
 第二种证明方法:
 最大似然估计本身就是多元函数求极值点。所以我们应该求出并证明极值点为θML\theta^{ML}θML=n\N
  我们现在所已知的是多元函数(即上文的似然函数)和变量的限制条件:i=1210θi\sum _ { i = 1 } ^ { 210 } \theta _ { i }∑i=1210​θi​=1
  多元函数、极值、约束条件,看到这些我们可以很快的联想到可以使用拉格朗日乘数法。(另一篇博客将介绍此法的背景应用)
  证明此法如下:
似然函数:L(n1n_{1}n1​,n2n_{2}n2​,n3n_{3}n3​,n210n_{210}n210​|θ\thetaθ)=N!i=1210ni!\frac { N ! } { \prod _ { i = 1 } ^ { 210 } n _ { i } ! }∏i=1210​ni​!N!​*i=1210θini\prod _ { i = 1 } ^ { 210 } \theta _ { i } ^ { n _ { i } }∏i=1210​θini​​
 构造Lagrange函数:
Lagrange(θ1\theta_{1}θ1​,θ2\theta_{2}θ2​,θ3\theta_{3}θ3​,θ210\theta_{210}θ210​,λ\lambdaλ)=L(n1n_{1}n1​,n2n_{2}n2​,n3n_{3}n3​,n210n_{210}n210​|θ\thetaθ)-λ\lambdaλ(i=1210θi\sum _ { i = 1 } ^ { 210 } \theta _ { i }∑i=1210​θi​ -1)
 对似然函数取对数:
Lagrange(θ1\theta_{1}θ1​,θ2\theta_{2}θ2​,θ3\theta_{3}θ3​,θ210\theta_{210}θ210​,λ\lambdaλ)=logN!i=1210ni!+i=1210nilogθi\log N ! - \sum _ { i = 1 } ^ { 210 } n _ { i } ! + \sum _ { i = 1 } ^ { 210 } n _ { i } \log \theta _ { i }logN!−∑i=1210​ni​!+∑i=1210​ni​logθi​-λ\lambdaλ(i=1210θi\sum _ { i = 1 } ^ { 210 } \theta _ { i }∑i=1210​θi​ -1)
  然后对Lagrange函数求关于θi\theta_{i}θi​的偏导:
Lagrange(θ1,,θ210,λ)θi\frac { \partial Lagrange \left( \theta _ { 1 } , \ldots , \theta _ { 210 } , \lambda \right) } { \partial \theta _ { i } }∂θi​∂Lagrange(θ1​,…,θ210​,λ)​=niθiλ\frac { n _ { i } } { \theta _ { i } } - \lambdaθi​ni​​−λ
  取极值时,导数为0:
niθiλ\frac { n _ { i } } { \theta _ { i } } - \lambdaθi​ni​​−λ=0
  故 niλ=θi\frac { n _ { i } } { \lambda } = \theta _ { i }λni​​=θi​
又因为 i=1210θi=i=1210niλ=1\sum _ { i = 1 } ^ { 210 } \theta _ { i } = \sum _ { i = 1 } ^ { 210 } \frac { n _ { i } } { \lambda } = 1∑i=1210​θi​=∑i=1210​λni​​=1
 故λ\lambdaλ=N
  故θi=niλ=niN\theta _ { i } = \frac { n _ { i } } { \lambda } = \frac { n _ { i } } { N }θi​=λni​​=Nni​​
  故可证:θi=niN=θiML\theta _ { i } = \frac { n _ { i } } { N }=\theta _ { i } ^ { ML }θi​=Nni​​=θiML​
 以上就是两种证明方法。写到这里,我自己明白了并最大似然估计出看此文的读者们明白了,233333333333。

奋发秃强 发布了53 篇原创文章 · 获赞 13 · 访问量 9149 私信 关注

标签:ni,1210,log,210,ML,矩阵,序列,theta,合理性
来源: https://blog.csdn.net/weixin_43770577/article/details/104088542