原理
PhyML采用同时优化树拓扑和分支长度的JTT(Jones-Taylor-Thornton)或替代矩阵。独特的NNI+SPR混合搜索策略:先做快速NNI(Nearest Neighbor Interchange)达到局部最优,再做SPR做较大拓扑重排跳出局部最优。分支支持度检验使用aLRT而非bootstrap——对每个分支比较原树和NNI后的次优邻接树的似然值,近似卡方分布,计算效率远高于bootstrap。
步骤
1. 运行基础建树
phyml -i aligned.phy -d nt -b 0 -m GTR -f m -v e -c 4 -a e -s SPR --rand_start -o tlr
参数:-d nt(核苷酸数据)、-b 0(不做bootstrap)、-m GTR(替代模型)、-f m(ML估计碱基频率)、-v e(估计不变位点比例)、-c 4(4个Gamma速率类别)、-s SPR(SPR搜索)。
2. aLRT支持度评估
phyml -i aligned.phy -d nt -b -2 -m GTR -f m -v e -c 4 -s BEST --rand_start
-b -2启用SH-like aLRT。输出树Newick格式中每个分支标注chi2-based支持度值(原始aLRT统计量)。
3. 结果解读
aLRT输出文件*_phyml_tree.txt和*_phyml_stats.txt。统计文件中列出各分支的aLRT值——>0.90为显著支持。用FigTree打开树文件可视化,支持度标注在分支上方。
4. 多重起始点验证
SPR搜索可能陷入局部最优。用--rand_start --n_rand_starts 10从10个随机起始树开始搜索,比较各次结果的似然值——最佳者作为最终树。
参数选择建议
| 参数 | 推荐值 | 说明 |
|---|---|---|
| -s | SPR | 搜索精度最高,NNI速度快但精度低 |
| -b | -2 (SH-aLRT) | 最快支持度检验,-4为aBayes |
| -c | 4 | Gamma类别数,4为标准 |
FAQ
Q:PhyML aLRT和IQ-TREE UFBoot怎么选?
A:aLRT速度最快(比UFBoot快5-10倍)但仅在分支评估上—不产生树的分布。UFBoot更准确(近似真实bootstrap但速度快),输出树集合可供后续分析。时间充裕用UFBoot,快速初始筛查用aLRT。
Q:SPR和NNI搜索哪个好?
A:SPR做更大拓扑跳跃、适合复杂进化关系。NNI仅检查相邻分支交换、搜索局限于局部邻域。病毒序列多且分化较低时NNI够用,高分化背景下必须SPR。
Q:PHYLIP和FASTA有什么区别?
A:PHYLIP首行含序列数和长度(如"50 1000"),后续每序列占一行:名称10字符+序列。FASTA更自由。PhyML两种格式均接受,自动识别。
参考文献
- Guindon S, Dufayard JF, Lefort V, et al. New Algorithms and Methods to Estimate Maximum-Likelihood Phylogenies. Syst Biol. 2010;59(3):307-321. DOI: 10.1093/sysbio/syq010
- Anisimova M, Gascuel O. Approximate Likelihood-Ratio Test for Branches. Syst Biol. 2006;55(4):539-552. DOI: 10.1080/10635150600755453
