以下內(nèi)容都是基于Christopher P. Randle教授在研究組上交流時的課件整理而來。?
最大似然法選擇的最優(yōu)樹是使得觀察到的性狀分布(character state distribution)出現(xiàn)的概率最大的樹。
最重要的是理解似然值(likelihood)。
What?is Likelihood??什么是似然值?
The likelihood of a hypothesis is the proportion to the probability that it is true. Meaning, the likelihood of hypothesis is the probability of observing data given hypothesis h.
嘗試翻譯一下,就是給出一個假設h,該假設的似然值L(h)就是:在此假設是真實條件下,發(fā)生事件d的概率p(d/h)。
舉個簡單的例子:
分子實驗室里有兩個好朋友Ron和Anthony要拋硬幣決定誰去干活。Anthony從口袋里掏出一枚硬幣,但是Ron一直懷疑Anthony的人品,因為Anthony經(jīng)常放一枚假硬幣(假硬幣正面朝上的概率為90%,而真硬幣為50%)在口袋里。為了區(qū)分真假硬幣,兩個人沒有去找如來佛祖辨真假,而是開始炫統(tǒng)計學。
此時有兩個相互對立的假設(competing hypotheses):
假設1:硬幣是真的
假設2:硬幣是假的
而最大似然值方法就可以用來評估這兩個兩個相互對立的假設誰更有可能是真的。
在計算這兩個假設的似然值之前,我們先來說下二項分布(binomial distribution)。
在生活中,我們經(jīng)常會碰到兩個對立的事件,比如現(xiàn)在的硬幣是真是假。二者非此即彼,概率相加為1。
現(xiàn)在還是以拋硬幣為例,結果只有兩種:正面朝上和反面朝上。拋硬幣是個獨立(每次拋硬幣事件之間不會相互影響)可重復事件。假設正面朝上的概率為p,拋n次硬幣,正面朝上出現(xiàn)x次的概率為:
?

然后兩人開始拋硬幣,拋了4次,有3次是正面朝上。

在假設1硬幣是真的條件下,正面朝上的概率p=50%,此時

假設2硬幣是假的條件下,p=90%,此時
?

0.25和0.29好像相差不大啊,于是兩人繼續(xù)拋了4次,都是正面朝上,現(xiàn)在n=8,x=7,同上面的計算方式得到:L(h1)=0.03125,L(h2)=0.38264
假設2硬幣是假的似然值就比假設1大多了。統(tǒng)計學告訴我們這枚硬幣大概率是假的。
Phylogeny and Likelihood 系統(tǒng)發(fā)育和似然值
The likelihood of a phylogeny is the probability a character state distribution (the data) given that phylogeny. The tree hypothesis (topology+ branch lengths) that maximizes the probability of having observed data, is the tree of maximum likelihood, and is to be preferred over less "likely" hypotheses.
簡單翻譯一下,就是基于現(xiàn)有的性狀數(shù)據(jù),存在千千萬種假設的系統(tǒng)發(fā)育樹。對某一給定的系統(tǒng)發(fā)育樹,在它是真實的這一假設前提下,計算使得現(xiàn)有性狀分布出現(xiàn)的概率,就是該樹的似然值。似然值最大的那棵系統(tǒng)發(fā)育樹(已給定拓撲結構和分支長度信息)就是最大似然樹,我們更傾向于選擇它。用公式表示如下:

那么如何估算系統(tǒng)發(fā)育樹的似然值呢(estimating the likelihood of a topology)?
再來舉一個簡單的例子:

有4個taxa:1、2、3、4,它們的一段DNA序列信息可以看作一套性狀J(a set of character J),由在每個位點上的堿基(性狀1、2、3··j··n)組成。
對某一個位點j,我們假設它演化的拓撲結構(topology1)如上圖右邊所展示。
最大似然法和最大簡約法的不同就在于它考慮了所有的情況。在最大簡約法里,給出右面的topology,我們的直覺就是taxon1和taxon2上面的node應該是堿基C,這是最簡單的一種解釋,而最大似然法會把所有的四種堿基的情況考慮進去 。兩個未知的性狀狀態(tài)(character state),即node上的堿基,都有四種可能,即A、C、T、G四種堿基,所以可能情況的總和是4的二次方,共16種可能性,對這16種可能性我們都要進行估計。

The likelihood of topology 1 given character j is the sum of the probabilities of all state optimizations for two nodes.
對j性狀來說,給定的topology1這一拓撲結構的似然值就是兩個節(jié)點上16種堿基分布概率的加和。
值得注意的是,topology1是只是所有可能的拓撲結構中的一種假設。 除了topology1,還有其他可能的topologies,比如taxon1和taxon2是獨立演化出C。?
The likelihood of the tree for all characters in set J, then will be the product of the likelihoods estimated for each character in set J, or the joint probability。
如果系統(tǒng)發(fā)育樹把J這套性狀中的所有性狀都考慮進去了(也就是這一段DNA序列所有堿基位點),那么該樹的似然值就是所有性狀估算的似然值的的乘積。?

?每個樹的似然值都很小,因此我們一般用自然對數(shù)(ln值)表示

The computational difficulty?of estimating the likelihood for any one character on any one tree will grow exponentially with an increase in the number of taxa(n).
通過上一節(jié)我們知道,隨著分類群的增加,可能的拓撲結構數(shù)量會呈指數(shù)式增長,這就造成了計算上的困難。
幸運的是,F(xiàn)elsenstein(1981)想出了修剪算法(pruning algorithm)。這里放一段這個算法具體原理的英文原文:
Simply, the method calculates likelihoods of nodes individually under all state optimizations starting at the nodes near the tips and working toward internal nodes. Rather than estimating the likelihood of an entire tree given a set of state optimizations, the pruning algorithm avoids repeating the calculations of any state optimizations for any node by rearranging the terms in the estimate, so that calculation occurs one node at a time.
這里求助了deepseek,用它給的例子解釋一下:
假設人的鼻子有三種:高鼻,矮鼻和塌鼻,這里有一個100多代的大家族,我們想通過后代的鼻子特征來知道老祖宗的特征,和這個特征是如何遺傳的。如果用我們上述講到的最大似然值的計算方法,我們要從最早的祖先開始,他有三種可能鼻子性狀,然后下一代人又有三種鼻子性狀,就算100代單傳,我們也要計算計算量也3的100次方。
而修剪算法就會從現(xiàn)在活著的最年輕一代人(相當于系統(tǒng)發(fā)育樹中的末端節(jié)點tips)開始,倒推上一代(相當于系統(tǒng)發(fā)育樹中的internal nodes)的性狀。比如兒子是高鼻,就明確了在兒子一代,高鼻概率是1,矮鼻和塌鼻概率是0。然后對父親一代的推論是:不管爺爺一代的性狀如何,根據(jù)兒子是高鼻,父親高鼻的概率是XX,矮鼻是YY…,最后向上不斷倒推到老祖宗三種鼻子性狀的概率。
這個方法的好處是
1. 避免了重復計算,比如“爺爺→爸爸→你”和“爺爺→叔叔→表弟”兩條路徑都涉及爺爺,傳統(tǒng)方法會重復計算爺爺,而剪枝法只算一次。
2.?每次只關心“父子兩代”的關系,其他信息被壓縮傳遞(類似數(shù)學中的動態(tài)規(guī)劃:將大問題拆解為小問題,并存儲中間結果避免重復計算)
舉一個更生活化的例子,我們在拼圖時都是從最邊緣處(末端節(jié)點)往里拼,而不會從中心(根節(jié)點)隨機試錯。
What is a model? 什么是模型?
到目前為止,我們還沒說到系統(tǒng)發(fā)育樹是怎樣把性狀分布概率的相關信息包含進去的,我們需要用模型來清楚地展示性狀狀態(tài)的發(fā)生過程。
Tree imply nothing regarding probability of state change. A process model of evolution is required to assess the likelihood of a tree.
怎么把一系列性狀、系統(tǒng)發(fā)育樹與概率聯(lián)系起來呢(how the probability of a set of characters is estimated for a given phylogeny and model)?我們就需要模型(model)。
A model is simply a hypothesis that has been formulated statistically so that the predictions of that model can take the form of some probability distribution. The essential aspects of a model are called parameters. These govern how the prediction of the model are allowed to vary.
模型就是用數(shù)學公式來表示的一個假設,模型的預測就會以概率分布的形式呈現(xiàn)出來。模型最關鍵的是它的參數(shù),參數(shù)決定了模型如何做出預測。
我們在這里舉一個簡單的建立模型的例子:
還是剛才的拋硬幣問題,Ron掏出一枚硬幣,我們給出一個假設:這是一枚真硬幣,這時用參數(shù):正面朝上的概率p就可以表示這個假設。在“這是一枚真硬幣”假設前提下下,參數(shù)p的值是50%。
這是一個簡單的假設模型,一個參數(shù)就可以搞定。但是當情況復雜時需要多個參數(shù)。