IQ-Tree
IQ-Tree是2014年推出的一款基于最大似然法(ML)的建树软件,具有准确、快速、灵活等特点,特别适用于大数据的系统发育分析。该软件的具体功能详见官方网站介绍(http://www.qtree.org/)。
本地版下载地址:http://www.iqtree.org/#downloa
在线服务器地址:http://iqtree.cibiv.univie.ac.at/
(1)数据准备:
IQ-TREE支持多种序列数据格式,其中Phylip为该软件首选,但也可以直接读取FASTA,程序会自动转为Phylip格式,省去格式转换的步骤,对于新手非常方便。
(2)模型选择:
在应用ML法重建系统发育树前,需要进行核苷酸替换模型的选择,IQ-TREE整合了ModelFinder这个模块,可以快速获得目的数据的最佳进化模型,推荐使用其替换jModelTest等软件。
MrMTGUI(MrModelTest/ModelTest)配置复杂,不易操作;jModelTest 支持界面操作,但是系统资源杀手。在大数据面前,这两款软件只能望洋兴叹,因而IQ-Tree软件中的ModelFinder自然成了首选,最大的特点就是快、很快、超级快,重点的内容说三遍。除外,它支持的数据类型除了核苷酸(含Codon)和氨基酸外,还能支持离散数据(包括二进制、形态数据等)。
IQ-tree可以根据分析目的,通过不同命令操作,本例仅演示只选择模型不建树,其命令格式为
iqtree -s seqname.phy -m MF -nt AUTO
注:
这里的-s 参数对应的是序列文件;
-m 参数默认使用ModelFinder选模型,也可使用jModeltest或ProtTest,只需可将MF改为TEST即可;
-nt对应的是CPU线程数,根据硬件配置修改(如:4线程,将AUTO改为4即可),也可以使用AUTO变成自动
如果只针对Mrbayes/Raxml计算最适模型,可以在-m MF 后添加一个 -mset参数,参考格式如下:
-mset JC,K80,SYM,F81,HKY,GTR -mrate E,G,I,G+I(用于Mrbayes)
(Raindy注:上述结果等同于-mset mrbaye)
-mset GTR -mrate E,G,I(用于raxML)
(Raindy注:上述结果等同于 -mset raxml)
程序运行完成后,会在序列所在目录生成多个文件,可以打开其中日志log文件,ModelFinder会根据不同标准推荐最佳模型,而如下图,基于AIC标准,示例数据的最佳模型为GTR+R4模型;而基于BIC标准(ModelFinder 默认推荐),示例数据的最佳模型为TIM3+R4。如果使用BEAST或Mrbayes等软件建树,需要加-mset 参数重新计算。赤池信息准则(Akaike Information Criterion,AIC)
贝叶斯信息准则(Bayesian Information Criterion,BIC)
原理参考:
https://blog.csdn.net/baidu_38172402/article/details/89075582
https://blog.csdn.net/xianlingmao/article/details/7891277
https://blog.csdn.net/lfdanding/article/details/50732762
AIC是衡量统计模型拟合优良性的一种标准,由日本统计学家赤池弘次在1974年提出,它建立在熵的概念上,提供了权衡估计模型复杂度和拟合数据优良性的标准。训练模型时,增加参数数量,也就是增加模型复杂度,会增大似然函数,但是也会导致过拟合现象,针对该问题,AIC和BIC均引入了与模型参数个数相关的惩罚项,BIC的惩罚项比AIC的大,考虑了样本数量,样本数量过多时,可有效防止模型精度过高造成的模型复杂度过高。
公式
AIC=2k−2ln(L)
BIC=kln(n)−2ln(L)
k为模型参数个数,n为位点数量,L为似然函数。
(3)ML树重建:
Windows版
IQ-TREE建树前,需要先调用出Window的命令行界面(Win键+R回车后,输入cmd再次回车即可显示,下图),示例的Windows版IQ-TREE主程序存放路径在D:\BiosoftslQtreebin,故而在CMD界面下,先输入D:切换到D盘,然后通过cd命令逐级进入IQ-TREE的子目录bin内。因版本不同,主程序名称路有不同。
命令格式:
igtree.exe(或/iqtree-omp)-s./NLV.fas-m GTR+R6-bb 1000-alrt 1000-nt AUTO
#注意:与Windows版不同的是mac版主程序没有扩展名
Mac版
IQ-TREE建树前,同样需要先调用终端(上图),可在Spotlight搜索栏中输入terminal.app回车,然后可以将IQ-TREE的主程序iqtree-omp直接拖入终端运行窗口内,根据命令格式依次输入参数和对应的内容。
参数注释:
/iqtree-omp(mac版)或/iqtree.exe(Windows版)
iQ TREE程序的路径(在IQ-TREE的bin子目录)
-s./NLV-sample.fas
参数-s即sequence,其之后为序列(含路径),可以将序列直接拖入命令运行窗口;
-m GTR+R6
参数-m即model,其后为选定的最佳模型;
-bb(或-b)1000
参数-bb即ultrafast bootstrap approximation(UFBoot),其后为重复抽样次数,默认值1000。大数据时推荐使用-bb参数,建议重复抽样次数调整为5000或10000;如果小数据推荐使用-b参数,其对应为常规算法的bootstrap;
-alrt 1000
参数-alrt非必须,即是否启用SH-aLRT检验。如果不启用该检验,可以直接删除,其后同样为重复抽样次数
-nt AUTO
参数-nt 即Number of Threads,用于IQ-TREE分析的线程数,可以用AUTO参数让系统自已分配,也可以自己指定
#Raindy注:
(1)如果需要指定一个outgroup,可以在模型参数之后,添加一个-0参数用以指定某一条序列为outgroup,如:-o NC 018093 SPVG即将示例中的名称为NC 018093 SPVG指定为outgroup;
(2)ultrafast bootstrap approximation(UFBoot)为IQ-TREE引入的一个算法,适用于大数据分析,但应用此法可能会导致计算结果偏高,需要注意。
(4)结果解读:
IQ-TREE建树完成,会在序列目录下生成多个文件,主要包括程序运行日志xx.log、ML树文件
(含有(UFBoot或BP/SH-aLRT评估分支置信度)和一致树文件xx.contree,可以用Figtree进行查看,将Nodel Label标签下拉菜单选择label(打开树文件前Figtree会提示,需要给树的节点/分枝指定一个名称,可以使用label作为默认名称)
.dat与.phy是我对齐序列文件以及分区文件。
.best_scheme与.best_scheme.nex里面是每个分区所匹配的模型。如果是iqtree不分区时不会有这个文件产生。
会有两个树文件一个是.contree一个是.treefile。
.treefile对应的是ML树。
.contree是一个由1000bootstrap trees为引导树生成的共有树。
计算AIC&BIC的数据在.iqtree里面。
作者:土雕
链接:https://www.jianshu.com/p/93d78b84b7cd
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
下图为示例数据生成的ML树(带SH-aLRT检验)的NLV.fas.treefile文件在Figtree中的显示结果:上图的NLV.fas.treefile如需进一步美化,推荐使用余光创博士的ggtree,可以>70 SH-aLRT且>95 UFboot的分支用指定的符号表示出来,简单三行代码搞定,参考R代码如下:
> require(ggtree)
>x= read.tree(file.choose())
> ggtree(x)+ geom-nodepoint(aes(subset = sub("/.*,",label)> 70 | sub("./",",label)>95)
初步导出效果如下图所示,实名圆圈表示> 70 SH-aLRT且> 95 UFboot的分支或节点:
下图为示例数据生成的一致树NLV.fas.contree文件经美化后的显示效果:
Figurc 1.Mid-point rooted phylogenetic tree based on the codon-aligned nucleotide sequences of the polyproteins of members of the family Potyviridae.
以上应用IQ-TREE建ML树的方法描述可参考Gao et al,2018,The first complete genome sequence of narcissus latent virus from Narcissus...
延伸阅读:
.Nguyen L-T,Schmidt HA,von Haeseler A,Minh BQ(2014)IQ-TREE:A fast and effectivestochastic algorithm for estimating maximum likelihood phylogenies.Molecular biology and evolution 32:268-742.
Kalyaanamoorthy S,Minh BQ,Wong TKF,von Haeseler A,Jermin LS(2017)ModelFinderfast model selection for accurate phylogenetic estimates.Nature Methods 14:587-589.
3.Hoang DT,Chernomor O,von Haeseler A,Minh BQ,Vinh LS(2018)UFBoot2:Improving the ultrafast bootstrap approximation.Molecular biology and evolution 35:518-522.
实例
1. 待建序列:NCBI上下载的63个16s参比序列和486个分离株的序列,共549个。
2. 使用jmodel进行了模型选择,88种模型可供选择。在i7 6700,8G的台式机上跑了7个多小时,计算完后统计AIC和BIC的时候卡死了,跑了两遍都这样,不知道怎么回事,最后放弃使用这个软件了。
3. 使用IQ-TREE进行模型选择和ML建树,288种模型可供选择。在i5 2450M,8G笔记本的VMware虚拟机(2个线程,4G内存)上执行。
#使用MUSCLE对549个序列对齐
conda install muscle
muscle -in 16s.fas -out 16s_muscle.fas
#使用BMGE对序列剪齐
conda install bmge
java -jar BMGE.jar -i 16s_muscle.fas' -t DNA -of 16s_muscle_trim.fas -m DNAPAM250:4 –g 0.5
#使用ModelFinder寻找最优模型
conda install iqtree
iqtree -s 16s_muscle_trim.fas -m MF -nt 2
得到最佳模型TIM3+F+R4
#使用UFBoot2建树
iqtree -s 16s_muscle_trim.fas -m TIM3+F+R4 -bb 1000 -nt AUTO
4. Figtree可视化树文件16s_muscle_trim.contree
16s_muscle_trim.contree: the consensus tree with assigned branch supports where
branch lengths are optimized on the original alignment.
参考基于ML法重建系统发育树-IQ-TREE篇
http://www.360doc.com/content/18/0125/13/45962007_724978365.shtml
模型选择准则:利用IQtree结果计算AIC&BIC
https://www.jianshu.com/p/93d78b84b7cd
使用IQ-TREE构建系统进化树
https://www.jianshu.com/p/f830282866cd