Geneious中應該使用哪種最大似然樹生成器?
- 以下基于機器學習翻譯,僅供參考。?
Geneious包含用于最大似然樹建立器PHYML,Garli,RAxML,PAUP *和FastTree的插件。在這篇文章中,我們將簡要回顧哪些數據集最適合哪種數據集,哪種數據集最快,以及每種數據集都有哪些選項。有關每個程序使用的算法的詳細信息,請參閱該程序的網站。如果您從這些插件發布您的結果,請記得引用您使用的程序的原作者。引用信息可以在各自的插件頁面上找到。
每個程序的背景
1.?PHYML
PHYML由?法國蒙彼利埃大學LIRMM的Stephane Guindon和他的同事撰寫??。它于2003年首次發布,Geneious插件使用本文中描述的3.2版本??。??PHYML是其最簡單,準確和速度最好的最大似然程序之一。
2.?RAxML
RaxML來自??亞歷山德羅Stamatakis?'??Exelixis公司實驗室??在海德堡研究所的理論研究,德國。它的開發目的是處理較大的數據集,其相對較低的內存消耗,先進的搜索算法和使用加速的可能性。 ?
Geneious插件當前使用RAxML版本8.2.7,因此下表中列出的功能適用于該版本。
3.?GARLI
Garli由?當前在堪薩斯大學的Derrick Zwickl撰寫和維護??。它基于GAML程序(Lewis,1998)。該程序的文檔可以在這里找到。
4.?PAUP *
PAUP *是Dave Swofford編寫的一個流行的系統發育程序,可用于構建最大簡約性,距離和最大似然樹。本文中有關PAUP *的信息只涉及最大似然樹。PAUP * 4.0b10曾經可以從Sinnauer Associates購買,但目前正在進行重大更新。目前免費“測試”版本都可以從這里。 ?
請注意,Geneious PAUP *插件不包含程序本身,它僅提供運行您自己的PAUP *副本的界面。您必須下載自己的PAUP *副本,并在Geneious第一次運行插件時將路徑設置為可執行文件。該插件目前兼容舊4.0b10版本,新的測試alpha版本(4.0a149及以上版本)
4.?FastTree
FastTree由Morgan N. Price??在???Lawrence Berkeley國家實驗室的Adam Arkin小組開發??。它針對多達一百萬個序列的極大比對進行了優化,并使用相鄰連接,最小演化和最大似然的組合來推斷近似最大似然樹。這里給出了它如何工作的詳細描述??,但總的來說,FastTree使用鄰居連接來獲得近似的起始樹,然后使用最小的演化方法來減少樹的長度,然后最大似然地進一步改進樹。Generate實現FastTree 2.1.5。
你可以用這些程序做什么?
所有程序都將從DNA和蛋白質比對中構建樹木,但是每種方法的選擇都有一些差異,總結在下表中。請注意,PAUP *將為蛋白質比對構建最大簡約性和距離樹,但不會構建最大似然樹。
?**?由于Garli設置的方式,Geneious插件中目前只實現了GTR + G + I模型的默認選項并且沒有引導。但是,如果您需要其他選項(如引導或分區),請與支持人員聯系,也可以根據Garli文檔自行編輯Garli配置文件(位于插件文件夾中)??。
PHYML和PAUP *為您提供最廣泛的模型選擇,并且可以輸入Modeltest比較DNA數據的大部分模型。但是,請記住,大多數這些模型都嵌套在其他程序中實施的通用時間可逆(GTR)模型中。PAUP *包含模型測試,因此您可以選擇將其作為樹構建過程的一部分來運行。對于PHYML和其他程序,您需要在Geneious之外運行jModeltest,然后在Geneious中手動配置適當的模型選項。?
PHYML也為您提供了多種計算支持值的方法,但它對分類群數量有內在的限制。我不知道Garli,PAUP *和RAxML有相似的數據集大小約束(雖然正如您在下面看到的,這些程序都是由FastTree為超大型數據集執行的)。
例如,如果您想估計不同密碼子位置或基因的不同比率,RAxML和PAUP *允許您劃分數據。在PAUP *中,這是通過編輯自定義命令塊完成的 - 請參閱PAUP *命令行指南以獲取可以用這種方式實現的完整選項列表。 ?
關于這些程序如何在Geneious中運行的簡要說明
這些插件不能在Geneious Java運行時環境中運行,因此它們不使用分配給Geneious的RAM。相反,他們作為獨立程序與Geneious提供接口。Geneious將您的文件導出到插件,運行插件程序,然后將結果導入Geneious。盡管樹構建過程本身并不使用分配給Geneious的RAM,但您需要為Geneious分配足夠的RAM才能處理文件的導出/導入 - 而對于大型文件,這可能需要大量數據。?
哪個最快?
這個問題的答案很大程度上取決于您所擁有的數據集類型。作為一個非常普遍的規則,速度如下所示:FastTree >> RAxML> PHYML> Garli >> PAUP *。 ?
FastTree是迄今為止擁有大量分類群的大樹最快的算法。FastTree可以在幾分鐘內生成一個支持值為10,000的分類樹,而由RAxML或Garli構建的同一棵樹可能需要幾天才能運行。PHYML甚至不會運行在這樣大的路線上,因為它具有4000個分類群的內置截止點。然而,由FastTree生成的樹是“近似最大似然”樹,而對于類群之間的關系不那么明確的數據集,它們可能不如其他方法生成的樹更精確地搜索樹拓撲結構(請參閱??FastTree網站??,以獲得關于FastTree與PHYML與RAxML的速度和準確性的更全面討論)。 ?
如果您的序列非常長,但只有少數分類群(例如,如果您要從少量細菌基因組中構建樹),那么RAxML和PHYML將執行FastTree。一個長度為400萬個堿基(計算時沒有支持值)的5個序列的樹在FastTree中花了大約14分鐘,而在RaxML和PHYML中花了大約1分鐘。Garli不能很好地處理長序列,最好用于較短的比對。?
在全部最大似然樹建造者中,RAxML似乎對于來自DNA數據的大型樹木來說效率最高。對于較小的數據集,PHYML是一個不錯的選擇,因為根據PHYML手冊,PhyML的“舒適區”通常位于100-200個序列中,少于2,000個字符長。該??PHYML網站??已采用了一系列數據集的PHYML和RAxML之間的一些廣泛的比較。 ?
PAUP *是最大似然樹構建器中最慢的,特別是在使用默認選項運行時。PAUP *默認??情況下使用樹分叉和重新連接(TBR)進行拓撲搜索,該算法比PHYML(NNI,最近鄰居立交)或RAxML(快速爬山)中的默認拓撲搜索選項評估更多的樹。要將PAUP *配置為使用NNI而不是PBR,請打開自定義命令塊并將SWAP = NNI添加到HSEARCH行。這將大大加快速度,但速度仍然不接近PHYML或RAxML。?
我怎樣才能讓我的樹跑得更快?
簡短的答案是獲得一臺更快的電腦。為你的treebuilder提供更多的內存不一定會加速它,但是可能意味著你可以在不耗盡內存的情況下構建更大的樹。速度主要取決于處理器的速度,目前這里提到的所有樹建設者都只使用一個處理器,并且無法將其配置為跨多個核心運行。
那么,哪棵樹最好?
這個問題沒有一個答案,因為它完全取決于數據集的性質,以及所選模型適合您的數據的程度。考慮到您選擇的數據和模型,最大似然樹建造者返回最高可能性正確的樹,但由于算法的差異,每個程序產生的似然值不能直接進行比較。使用多種建樹方法來評估樹形拓撲的穩健性是一種很好的做法。