VeryFastTree はFastTree-2 の計算時間や大量データの扱いを大幅に向上させている。VeryFastTree ではFastTree-2 をソースコードから再設計しているが、推定するのステップ、手法、探索的アルゴリズムは継承している。そのためFastTree-2 と同様に、近似的な近隣結合法による初期樹を構築し、局所最適解の中から一番枝長の短い系統樹を最良の系統樹として選ぶ最小進化法をNNI もしくはSPR による部分的な再配置・剪定で行い、NNIを用いたML 法で最終的な樹を探索する。強調すべき改善点は、① ML 法を用いたNNI 計算を樹形計算について剪定部分に対して独立した樹形計算が並列して実行するため、計算速度が向上した; ② 枝長推定・プロファイル更新などの並列計算を強化; ③SSE3、AVX/AVX2、およびAVX512 をサポートしているため、CPU が対応していれば計算がさらに高速化する。
Piñeiro et al. (2020) Very Fast Tree: speeding up the estimation of phylogenies for large alignments through parallelization and vectorization strategies. Bioinformatics 36: 4658-4659. https://doi.org/10.1093/bioinformatics/btaa582
Windows での導入方法 [Link]
macOS での導入方法 [Link]
terminal で核酸 (nucleotide) のmultiple alignment を指定して計算させる
veryfasttree -threads 8 -nt <filename.fasta> -gtr -cat 8 -threads 8 > tree.nwk
-threads スレッド数を指定
-nt 核酸のfasta, phylip, nexus ファイルを指定
-gtr 一般時間反転可能モデル (GTR) を適用する
-cat n サイト毎のカテゴリを指定する (default は20)、もし固定する場合は-nocat
-gamma NNI/SPRによる樹探索 + 枝長最適化を、CAT approximation で行う。塩基座に相対的な置換速度を割り当てて、最尤法で樹形と枝長を最適化する。精度を多少犠牲にして速度を優先することができる (FastTree-2 からの機能; Price et al. 2010)。
計算終了後にtree.nwk が出力されるため、FigTree で編集する。各ノードの局所的な支持率は "SH-like local support" として出力される (1000回検定している)。NNI で計算しているため、クレードの近傍に解像度の低いノードが存在する場合は尤度の高い代替トポロジーが考慮されていない可能性があるため、支持値の解釈には慎重にあるべきである。
より詳しい使い方はmacでインフォマティクス [Link] もしくはソフトウェアマニュアルを参照されたい。
Price et al. (2010) FastTree 2—approximately maximum-likelihood trees for large alignments. PLoS One 5(3):1–10. https://doi.org/10.1371/journal.pone.0009490.