BEAST
1. ソフトウエアの入手先
https://www.beast2.org/
2. Infileの準備
BEASTには、infile作成専用のプログラム「BEAUTi」が同梱されている。
BEAUTiのタブに従って入力するが、BEAST1と2で入力方法が異なる。
2.1. sequence input
BEAUTiではnexuxあるいはFASTA形式が使用可能。
手持ちのデータフォーマットが上記と異なる場合、スクリプト等でConvert。
2.2. STR input
BEAST2でのEBSPはまだ試していないが、インプットは可能なようである。
3. BEAUti
BEAUtiを立ち上げると、まず"Partitions"というタブが選択されている。
ここで、準備したinfileをimportする。
menu>File>Import data
以降、それぞれのTabについて、役割を記述する。
[Partitions tab]
Partitionsでは、それぞれの配列データセットに関して、
Site model (塩基置換モデルの設定)、Clock model (進化速度の設定)、Partition tree (系統樹作成)を個別に行うか、
あるいは単一の設定をすべてに適用するかを選択できる。
パーティションごと、あるいは単一の設定を用いたい場合、
partitionリスト上部にあるUnlink Subt. Model./Link Subt. Model等をクリックする。
[Tips]
省略
[Site Model tab]
データセットに対して適用する塩基置換モデルのパラメータを入力する。
事前にKAKUSAN, JModeltest, MEGA等を用いてモデル推定を行い、該当するものを選択する。
設定可能なモデルが限られており、JC69/HKY/TN93/GTRのみ選択可能。
サイトごとの変異速度に離散ガンマ分布(discrete gamma)を仮定するのであれば、
カテゴリ数(任意)とshape parameter(Megaで推定可能)を入力。
入力した値はMCMCにおけるinitial valueとして利用される。
当然、Invarint siteの割合も設定可能。
JC96以外のモデルではTs/Tv比(Kappa)やnucleotide frequencies等が設定可能。
BEAST2から、codon positionの分割をしてくれなくなった。
事前に自前でデータセットを分割する必要がある。
[Clock Model tab]
系統樹の各枝における進化速度のモデルを選択する。
Strict clockはBSP等特別な場合を除いて推奨されない。
分子進化速度が一様であるケースは基本的に稀であり、厳密には枝間の進化速度の検定が必要。
進化速度をClock.rateに入力する。
Estimateのチェックボックスで、initial value として利用するか、値を固定するかを選択できる。
[Priors tab]
どのような前提で系統樹(もしくは家系図)の作成を進めるか、ここで決定する。
種分化モデルとしてYule/Calibrated Yule/Birth-Death model、
集団サイズNを仮定したCoalescentモデルとしてConstant/Exponentia/Bayesian Skyline/Extended Bayesian Skylineが、
プルダウンリストから選択可能。
たとえば種間の分岐年代推定の場合、Yule speciation modelを選択する場合が多い。
一方、種内多型の分岐年代であれば、BSPの方がより理にかなっている。
BEAST1ではtaxaタブから校正点の作成を行ったが、BEAST2ではこのPriors tabにてtaxon setを作成する。
+Add priorボタンを押してTaxon set editorを呼び出し、目的のtaxaを含むtaxon setを作成する。
setに名前を付けて保存すると、プルダウンリストが現れるので、校正点の確率分布に適用するモデルを選択する。
例えば、10-40万年の一様分布(どこでもOK)なら、Uniform priorを選択し、行先頭の矢印ボタンを押して、
lower=10, upper=40と入力する。
当然、校正点が多いほど制約がきつくなり、ノードの分岐年代のレンジは狭まる。
[MCMC tab]
ここでは、ベイズ推定にかける時間、ランの長さを決定する。
推定のチェーンが長い方が往々にして安定した結果が得られる(真実に近い結果とは限らないことに注意)
デフォルトでは10,000,000ステップのうち1,000回に1回データを取る、となっているが、
可能ならば各値を10倍に変更する。これで、計算にかかる時間も圧倒的に長くなるが、その分収束はよい。
一通りの設定が終わったら、<File>-<Save as>で、xmlファイルを作成し、BEAST本体でrun。
BEASTのrunが終了したら、Tracerにて、すべての項目のESS(Effective sample size)が200以上になっているのを確認。
さらに、Traceから収束しているかいないかを目視にて確認する。
値が一定のところをうろついていれば問題ないが、何らかの傾向をもって変化しているうちは、runは収束していない。
その後、BEASTのrunで得られた.treeファイルをTreeAnnotatorでサマライズして、Figtreeで表示させる。
*BEAST2から、starting treeの指定が、より簡便にできるようになった。
メニューバーの<View>-<Show starting tree panel>でstarting treeの設定が可能。
newick treeを直接指定して探索効率を上げられる。
また、cluster treeタブからは、なんとNJtreeが指定可能になった。
いずれのオプションも、尤度の最適化を効率的に行う上で重要と考えられる。
あるいは、禁じ手なのかもしれないが。