RELIONチュートリアル

提供: Eospedia
2017年2月10日 (金) 01:10時点におけるFisherman1 (トーク | 投稿記録)による版

移動: 案内検索

1 Getting prepared(準備)

1.1 Recommended reading(参考書)

RELIONの品質向上の背景には以下の論文があります。 ●S.H.W. Scheres (2012) "RELION: Implementation of a Bayesian approach to cryo-EM structure determination" J.Struc. Biol., 180, 519-530. ●S.H.W. Scheres (2012) "A Bayesian view on cryo-EM structure determination" J.Mol. Biol. 415, 406-418. RELIONの使い方の包括的な概要に関しては以下の論文を参考にしています。 ●S.H.W. Scheres (2016) "Processing of structurally heterogeneous cryo-EM data in RELION" Meth. Enzym., in press.

1.2 Install MPI

1.3 Install CUDI

1.4 Install RELION

1.5 Install motion-correction software

1.6 Install CTF-estimation software

1.7 Install RESMAP

1.8 Download the test data

2 What's new in RELION-2.0?

2.1 The GUI

2.2 Optimise computations for your stepup

2.3 On-the-fly processing running scheduled jobs

2.4 Helical processing

2.5 Other new functionalities

2.6 How this tutorial works

4. Reference-free 2D class averaging (参照無2次元クラス平均)

前書き

良くない粒子を取り除くために、大抵は参照なし2Dクラス平均を使います。

前項で述べた粒子抽出ステップ(例えば、自動検出結果の手動管理や抽出された粒子の分類)で良い粒子を含もうとしますが、ほとんどの場合、良くない粒子がデータの中にまだ存在しています。

良くない粒子は一緒にうまく平均化しないので、大抵は比較的小さいクラスになりやすく、不適切な2Dクラス平均を算出します。これらを取り除くことで効率的にデータをきれいにします。

4.1 Running the jobs (動作の実行)

このチュートリアルでは動作タイプを【2D classificiation(2次元分類)】にセットし、その中の【I/O】タブは次の通りにセットします。その他オプションは、前述の自動検出のテンプレートを作成した時と同じです。

Input images STAR file: Select/after_sorting/particle.star

現在約10,000個の粒子が存在するので、もっと多くのクラスを利用することができます。従って、【Optimisation(最適化)】タブを次の通りにセットします。

Number of class: 100

この動作は以前に述べた動作のものよりはるかに負担がかかる(アルゴリズムは粒子の数とクラスの数に比例してスケーリングされます)ので、この動作を並列処理することをお勧めします。1つもしくは複数のGPUがある場合、この動作を1時間半分程度で実行できます。aftersortのようなエイリアスを使用できます。

動作が終了したら、_model.staファイルを選択して【Subset select】を起動することができます。class2d_aftersortのようなエイリアスは意味があります。ここで、すべての見栄えの良いクラスをクリックして選択します。(もしくは右クリックメニューオプション【Select all classes above】を使用する。)この時、自動検出において低いしきい値を使用して、高解像度のノイズが蓄積している場合、低解像度の影のように見える【Einstein-from-noise】クラスに気を付けてください。上記の選択は避けて下さい。より良いクラスがすべて選択されたら、マウス右クリックメニューオプションから選択したものを保存します。

この手順は、複数回繰り返すことがあるので、覚えておきましょう。また、2D classficationのあとのデータに残っている異常値を識別するために、ソート(並べ替え)アルゴリズムを再実行できることに注意してください。

4.2 Analysing the results in more detail(より詳細な結果の分析)

ここではRELIONへの興味が深い人向けの、より詳細な情報を含んでいます。 お急ぎの方はこのセクションをスキップしても構いません。

RELION は 2D(3D)classification を繰り返すごとに、ファイルに書き出します。 2D クラス平均算出の最終反復時では、以下のファイルが作成されます。

● Class2D/allparts_run1/run_it025_classes.mrcs 

これはクラス平均結果をMRCスタックしています。これらはメインGUIのDisplay: ボタンから _modal.star を選択したときに表示される画像です。RELION は GUIから選択した場合、完全なCTF補正かかることに注意して下さい。そのためクラス平均はおそらくモノクロになります。もしデータが良ければ、その画像はローパスフィルターをかけた原子モデルにとてもそっくりな投影になります。 2D クラス平均の質は3Dマップがうまくいくかどうかの指標になります。我々はタンパク質ドメインの投影を用いた内部構造と、理想的には平らになっているであろう粒子周りの溶解可能領域を見たいと思う。
溶解可能領域の放射状に伸びた筋は典型的な過剰適合の兆候です。もしこれがおきたときは、2D classification アルゴリズムのE-step内で解像度に制限をかけてみて下さい。

●Class2D/allparts_run1/run_it025_model.star 

これは実際のクラス平均に沿って精製されたモデルパラメーター(classを超えた画像の分布、再構成された構造中のシグナル対ノイズ比の球体平均、全てのグループのノイズスペクトラム、など)を含んでいます。

less コマンドを使って、このファイルの中身を見てください。特に、data_model_classesテーブルのそれぞれのクラスの粒子分布を確認して下さい。これとクラス平均を比較すると、低解像度のクラスにある粒子はほとんどない一方で、高解像度のクラスに存在する粒子は多いと分かる。

平均的に少ない粒子を通しての平均化は自然と低いシグナル対ノイズ比になりますので、このときにベイズ推論的な考えを持つことが重要になります。それぞれのクラスにおいて概算されたスペクトラル、シグナル対ノイズ比はdata_model_class_N テーブルに保存されます。同様に、それぞれのグループにおいて概算されたノイズスペクトラムはdata_model_group_Nテーブルに保存されます。data_model_groupsテーブルはそれぞれのグループにて精製されたscale-factor強度を保存します。(平均よりも高い値をもつグループはより強力なシグナルを持っている、平均よりも低い値をもつグループは相対的に低いシグナルである)

これらの値はデフォーカスと相互関係があることが多いだけでなく、汚れのの蓄積や氷の厚さに影響される。

 

●Class2D/allparts_run1/run_it025_data.star

これはそれぞれの粒子に関わる全てのメタデータを含んでいます。particles.star fileに入力した情報の他に、最適な方向、最適なクラス課題、対数尤度への寄与、などなどに関する追加情報。

このファイルは再度新しく洗練されたデータをstarファイル同様の形式のでの入力に使用される。  

●Class2D/allparts_run1/run_it025_optimiser.star 

これは終了しなかった場合の再起動に必要な精製過程についての全体的な情報が含まれています。たとえば、もし25反復後でもまだ収束しなかった過程を考える場合(評価のために反復24と25から出したクラス平均を比較できる)、Finished jobs パネルの中で以下の機能を選択できる。I/O タブ上で、Continue from hereから上記のファイルを選択することが出来る。そしてそのときに、Optimisationタブ上でNumber of iterations:40 と設定して下さい。また、Sampling タブで緻密な角度や並列処理をするサンプリング比率を選ぶかもしれない。optimiser.starファイルのもう1つの有用な特徴が1行目に、これを動かすために与えられた正確なコマンドライン引数コメントが含まれています。  

●Class2D/allparts_run1/run_it025_sampling.star 

これはサンプリング率の採用についての情報が含まれています。このファイルもまた再起動に必要なファイルです。

4.3 Making groups

ここではRELIONへの興味が深い人向けの、より詳細な情報を含んでいます。 お急ぎの方はこのセクションをスキップしても構いません。

RELIONの粒子グループはともに以下のふたつのことを実行します。氷の厚さ、デフォーカスまたは汚染のためのスペクトラムノイズ強度平均の推定と、そのデータの異なる部分間全体のシグナル対ノイズ比の違いを表すシングルナンバー強度スケールファクターの推定。

通常、顕微鏡写真上の全ての粒子は別々のグループとして扱う。この動作は顕微鏡写真ごとに多くの粒子が存在する場合良い。しかし、高倍率で扱っている場合、サンプルは非常に希釈されるか、最終的に選択されたものは顕微鏡写真ごとには少数しか粒子が含まれておらず、スケールファクター(またノイズスペクトラ)強度の推定は不安定なものとなります。一般的に各グループに少なくとも10〜20の粒子がある方が良いとしているが、各グループの粒子の初期数は2D,3Dクラス化後より少なくなるだろうということに注意しておいて下さい。

顕微鏡写真ごとに粒子が殆ど無い場合、複数の顕微鏡写真から粒子グループを作る方が良い。このことから、RELION 2.0での新しいGUIとして【Subset selection】上で便利な機能が追加されています。それは【I/O】タブ上で _model.starファイルを選択した時、【Regroup particle?】と表示された時【Yes】と入力し、【Approximate nr of groups : 5】と【Class option】タブで入力することで、すべての粒子を5つのグループに分類できます。(実際の数は入力値によって幾分変化するため、入力上での近似値となる)この方法は以前の最終バージョンのRELIONでは避けられた方法でした。このチュートリアルの顕微鏡写真には十分な粒子が含まれているので、ここではこの手順を使用しません。

RELIONは、他のプログラムで時々使用されるデフォーカスグループとは非常に異なることに注意しておいて下さい。RELIONは常に各粒子に使用されたグループとは無関係に(異方性の)CTF補正されます。

5. Unsupervised 3D classification (教師無3次元クラス分類)

前書き

全てのデータセットは違う成分です!この疑問は どのくらい進んで関連付けられるかです。RELIONの 3Dマルチリファレンス精製手順は強力な無監視の3D classification への近道を提供している。しかし、まだ一つ必要になる。低解像度の総意モデルが一緒にスタートとするには。低解像度の初期のクリスタル構造から生成したガラクトシダーゼモデル(PDB-ID 3I3E)を使うとしよう。これはすでに project directory の中に 3i3e_lp50A.mrcという名前で入っている。定型的なプロジェクトの中では良い初期モデルを用意できない可能性がある。その場合は違うプログラムから別のモデルを持ってくる必要がある。RELIONは最初のモデルを生成することはまだできない。   すでにリファレンスモデルを正しいピクセルとボックスサイズで作っています。もしこの事例に当てはまらないモデルを使う場合は、コマンドラインからrelion_image_handler というプログラムを使って、ピクセルサイズ(--anpixelと--rescale_angpixというオプションを使う)とボックスサイズ(--new_box)を変更してもかまわない  

この場合、Importという機能を使って、直接プロジェクトに初期モデルをインポート出来る。ファイルを入力したら、3i3a_lp50A.mrc を選択して、the Node typeで3D referenceを選択して下さい。initial-3drefのようなエイリアスを使う。

5.1

【Optimisation】タブの設定:

・Number of class: 4

より多くのクラスを使用すると、多様な情報が含まれているデータセットがより多くのサブセットに分割されます。計算のコストCPUとメモリに関係して、クラスの数に比例して増加します。

・Number of iterations: 25

これは今後変更する必要はありません。

・Regularisation parameter T: 4

Tの定義については[10]を参照してください。低温EM2D分類では、通常、Tは1~2を設定し、3D分類では2~4を設定する。ネガティブ染色の場合、少し低い値が効果的な時があります。クラス平均が荒々しく見える場合はTの値を低くし、逆にクラス平均の解像度が低すぎる場合はTの値を高くします。高解像度のノイズを大きく認識することが主になります。あらかじめ計算された結果に2という値を使用しました。おそらく4を設定しても同じようにうまくいくでしょう。

・Mask diameter (A): 200

前回の【2D classification】の動作タイプと同じ値を使用してください。

・Mask individual particles with zeros? Yes
・Limit resolution E-step to (A): -1

正の値を指定すると、この値を超える周波数はアラインメントに含まれません。これは過適合を防ぐのにも役立ちます。ここではそれは本当に必要にではありませんが、10~15Aに設定されている可能性があります。

【Sampling】タブでは、通常何かを変更する必要はありません(正20面体のような大型で高度に対称な粒子の場合、線量1は典型的にはこの時点で3.7度の角度サンプリングを使用します)。【Helix】タブを無視し、以前の【2D-classification】の場合と同様に【Compute】タブに記入してください。ここでも、【Running】タブで、使用する【Number of MPI processors(MPIプロセッサの数)】と【threads(スレッド数)】を指定できます。【2D classification】の動作タイプで説明したように、3D分類は2D分類よりも多くのメモリを必要とするため、より多くのスレッドが使用されることがあります。しかし、この場合、画像はかなり小さく、RAM不足はそれほど大きな問題ではないかもしれません。おそらく、最初の3D分類を示すために[first_exhaustive]のようなエイリアスを使用でき、徹底的な角度検索を使用しているのではないでしょうか。

洗練された再構成を分析する際には、UCSFキメラなどのしきい値マップだけでなく、スライスでそれらを見ることも非常に便利です。スライスビューでは、未解決の異質性のより良い印象を受けるでしょう。これは、スライスに不鮮明な領域や縞状の領域として表示されます。スライスはまた、溶媒領域の平坦性の良好な印象を与える。[Display]を使用します。ボタンを押して、最後の反復からの再構成のいずれかを選択してRELIONのスライスビューを開きます。

レンダリングされた地図を3Dで見ると UCSFキメラを使用すると、マップが細分化の間にわずかに回転する可能性があるので、それらをすべて最良のものに合わせることはしばしば良い考えです。キメラでは、【Tools】 - > 【Volume Data】 - > 【Fit in Map】ツールを使用します。お互いに並んでいる複数のマップを見るには、【Tools】 - > 【Structure Comparison】 - >【Title Structures】ツールと、【Viewing】ウィンドウの【independent】中心回転方法を組み合わせたものが好ましいです。

2D分類の場合と同様に、【Subset selection】を使用して、1つ以上のクラスに割り当てられた粒子のサブセットを選択することができます。【I/O】タブで、_model.starファイルのサブセットを最後の反復から選択します。表示された表示ウィンドウには、4つの洗練されたモデルの中央スライスが表示されます。最適なクラスを選択し、マウス右クリックポップアップメニューを使用して対応する粒子を保存します。class3d_first_exhaustiveのようなエイリアスを使用してください。

5.2

ここではRELIONへの興味が深い人向けの、より詳細な情報を含んでいます。 お急ぎの方はこのセクションをスキップしても構いません。

出力ファイルは基本的に2dクラス化の実行時と同じです。(実際に2d,3dクラス精製時に同じ記法を利用している)唯一の違いは、以前に出力された2Dクラス平均に関するシングルMRCスタックとは対照的に、各クラスのマップが別々のMRCマップとして保存されることです。

今まで通り、よりクラスが小さいと、大きなクラスより精密にローパスフィルターにかけられ、スペクトルのシグナル対ノイズ比が【_model.star】ファイルの【data_model_class_N】テーブル(N = 1,,,,K)に保存されます。おそらく今がSTARファイルから任意のタイプのデータを抽出するのに便利な2つの手軽なスクリプトを導入するいい機会です。以下の通りにタイプして下さい。

relion_star_printtable Class3D/first_exhaustive/run_it025_model.star data_model_class_1 rlnResolution rlnSsnrMap


上記はdata_model_class_1テーブルから解像度に関する(rlnResolution)コラムとスペクトルのシグナル対ノイズ比に関する(rlnSsnrMap)コラムを画面に出力します。ここでそのファイルを参照して、お気に入りの言語でプロットできます。もし、使用者のコンピューターに【gnplot】がインストールされているのであれば、以下の通りにタイプして下さい。

relion_star_plottable Class3D/first_exhaustive/run_it025_model.star data_model_class_1 rlnResolution rlnSsnrMap

実行が収束したかどうかを確認するには(上記のように)、以下でも確認できます。

grep _rlnChangesOptimalClasses Class3D/first_exhaustive/run_it???_optimiser.star

今までで分かるように、STARファイルはさまざまなタイプの入出力データを扱うのに非常に便利なツールです。得られた結果の分析するための柔軟で強力なツールとなる【relion_star_printtable】のようなスクリプトは、だいたい【grep】や【awk】のようなlinuxのシェルコマンドと併用して実行できる。