RELION3チュートリアル

提供: Eospedia
2019年2月12日 (火) 01:08時点におけるHiryas (トーク | 投稿記録)による版

移動: 案内検索

RELION3

目次

1 前処理

1.1 解析の準備

私たちはプロジェクトごとに、すなわち構造解析したいものごとに一つのディレクトリを作成することをお勧めします。これをプロジェクトディレクトリと呼びます。プロジェクトディレクトリからRELION GUIを毎回起動することは重要です。プロジェクトディレクトリの中にすべての未加工の顕微鏡写真や顕微鏡動画をMRC形式かTIFF形式で保存するための別のディレクトリを作成してください。もしすべての動画が一つのディレクトリにある場合には、このディレクトリをMovies/とした方が好ましいでしょう。また、異なるディレクトリにある場合(例えば、違う日に集めたもの)には、Movies/15jan16またはMovies/23jan16とするといいでしょう。もし何か理由があり、RELIONのプロジェクトディレクトリの中に顕微鏡写真を入れたくない場合は、プロジェクトディレクトリの中に顕微鏡写真が保存されているディレクトリとのシンボリックリンクを作成することができます。

単一画像の顕微鏡写真にはmrc拡張子を、動画にはmrc、mrcs、tiff拡張子をつけることができます。チュートリアルのデータを解凍したとき、プロジェクトディレクトリ(Movies/)は作成されています。このディレクトリは、TIFF形式に圧縮された24つの動画、gain.mrc、実験の情報を含んだNOTESファイルが含まれています。

RELIONを起動してみましょう。前述のように、RELIONは常にプロジェクトディレクトリからの起動が必要です。エラーを防ぐために、RELIONは新しいディレクトリを初めて起動したときに確認を要求します。その為、新しいディレクトリで初めてRELIONを起動するときは、バックグラウンドで起動するための&の文字を使うべきではありません。プロジェクトディレクトリの中にいることを確認し、入力でRELIONを起動します。

relion 

そして新しいRELIONプロジェクトを作動するために“y“と答えます。 最初にすることとして、パイプラインの中に録画した顕微鏡動画の取り込みを行います。 job-typeブラウザから”Import”を選択し、以下のパラメータを埋めます。

●Input files: Movies/*.tiff   
●Node type: 2D micrograph movies   

これを行うことで、Current job: Give_alias_hereという空欄に効果的なaliasを規定すrことができます。[Run now!]ボタンをクリックし、job起動します。Import/job001というディレクトリが作成され、Import/moviesというこのディレクトリへのシンボリックリンクが一緒に作成されます。STARファイルとすべての動画が新しいディレクトリの中に作成されます。中を見てみましょう。

 less Import/job001/movies.star

もし違うソフトウェアで粒子を抽出した場合は、後述の事前処理を行う代わりに、STARファイルや3次元レファレンス、3次元マスクなどを取り込むために“Import”job-typeを使用してください。これについてはRELIONを使用する際の責任は取りません。また、ユーザーは正しいSTARファイルの生成に責任を取ってください。

1.2 電子線により誘起される画像の動きの補正

Motion correction job-typeは便利な全体フレーム動画の調整のためのUCSF MOTIONCOR2[21]ラッパーを規定します。あるいは、バージョン3.0以降はMOTIONCOR2と同じアルゴリズムであるRELION独自の実装を使用することもできます。RELION独自の実装はCPU でのみの実行となるので注意してください。[I/O]タブで設定をします。

 ●Input movies STAR file: Import/movies/movies.star

([Browse]ボタンで参照できるファイルは、STAR形式の動画ファイ ルのみです。)

 ●First frame for corrected sum: 1
 ●Last frame for corrected sum: 0

(これはすべての動画フレームに使用する際の結果です。)

 ●Pixel size(A) 0.885
 ●Voltage (kV) 200
 ●Dose per frame (e/A2) 1.277
 ●Pre-exposure (e/A2) 0
 ●Do dose-weighting? Yes
 ●Save non-dose-weighted as well? No

(いくつかの非用量加重顕微鏡写真にはCTF推定を行う方がよいで しょう。ディスク容量を節約するために、データが非常に良いの でこのオプションは使用しません。)

[Motioncor2]タブは以下のように入力します。

 ●Bfactor: 150

(超高解像度動画ではより大きい価値を使用します。)

 ●Number of patches X,Y  5 5
 ●Group frames: 1
 ●Binning factor: 1

(超高解像度動画ではたいてい2を使用します。)

 ●Gain-reference image: Movies/gain.mrc

(これは、オンザフライでのgain-reference補正用のgain- referenceファイルを規定するために使用できます。これらの動 画はまだgain補正されていないので、この場合には必要です。)

 ●Defect file:

(これは検出器上の壊れたピクセルを隠すために使用することがで きます。)

 ●Gain rotation: No rotation (0)
 ●Gain flip: No flipping (0)

(gain-reference画像はこのデータセットのために既に補正されて います。)

 ●Use RELION’s own implementation?  Yes

(これによって、UCSF実装をインストールする必要性が少なくなり ます。どちらにせよ、UCSFプログラムをインストールしている場 合は、それを使用することもできます。その場合、以下のオプシ ョンも入力する必要があります。)

[Running]タブは以下のように入力します。

 ●Do dose-weighing?  Yes
 ●Voltage (kV) 200
 ●Dose per frame (e/A2) 1.277
 ●Pre-exposure (e/A2) 0

このプログラムの実行には手頃な12スレッドの最新機器を用いればおおよそ5分かかります。MOTIONCOR2アルゴリズムのRELION独自の実装はGPUでは使用しないことに注意してください。しかしそれはマルチスレッドです。各スレッドは独立して動画フレーム場で動作するので、動画フレームの数をスレッドの数で割った数が整数になるように、いくつかのスレッドを使用することが最適です。これらの動画は24フレームあるので、12スレッドを使用すると各スレッドで2フレームが処理されます。[Run now!]ボタンの下の[Display:]ボタンからout:logfile.pdfを選択することで、推定された電子線によって誘起された変化を見ることができます。または、out:corrected_micrographs.starを選択することで、値が合計された顕微鏡写真を見ることができます。スクリーンサイズに依存して、見やすいように、顕微鏡写真(Scale:0.3)を縮小し、Sigma contrast:3を使い、見やすい数のコラム(例として、Number of columns:3)にするべきです。[Display:]ボタンから表示したときから顕微鏡写真は選択できないことに注意してください。もし、取り除きたい顕微鏡写真がある場合(今回はすべていい画像なので削除しないだろうが)は[Subset selection]job-typeが使用できます。

1.3 CTF推定

次に、それぞれ補正した顕微鏡写真からCTFの値を推定します。速度の為Kai ZhangのGCTFのためのラッパーとして[CTF estimation]job-typeにします。適切なGPUがない場合、Alexis RohouとNiko GrigoreffのCTFFIND4.1を使用することができます。[I/O]タブで、[Motion correction]jobのcorrected_micrographs.starファイルを選択するために[Browse]ボタンを使用します。また、他のタブは以下のように入力します。

I/Oタブにおいて

 ●Use micrograph without dose-weighting? No

(これらは重み付けされたものよりも良いThon ringsを持っているが、書き出さないことを前のステップで決めました。)

 ●Sperical aberration (mm): 1.4

(顕微鏡メーカーがこの値を提供してくれています。)

 ●Voltage (kV): 200
 ●Amplitude contrast: 0.1

(強度コントラストはほとんどないことが知られていますが、約10%の値を与えることで、多くの構造の結果がよくなることが示されています。これは低周波数の弱い散乱がモデル化されていないからです。)

 ●Magnified pixel size (A): 0.885

(これらはピクセルサイズ0.885Aのもとの動画です。)

 ●Amount of astigmatism (A): 100

(範囲が適切に調整されていれば、この値は多くのデータセットに適しています。)

Searchesタブにおいて、CIFFINDの一般的な値を設定します(正確な意味については、Nikoのドキュメンテーションを参照してください)。これらの設定は、GCTFを使用する場合には無視してください(デフォルトで、これをオフに切り替えることができるが)。

 ●FFT box size (pix): 512
 ●Minimum resolution (A): 30
 ●Maximum resolution (A): 7.1
 ●Minimum defocus cvalue (A): 5000
 ●Maximum defocus cvalue (A):50000
 ●Defocus step size (A): 500
 ●Amount of astigmatism (A): 100
 ●Estimate phase shifts  No

(これはphase-plateデータだけに役に立つ) GCTFを使用する場合はCTFFIND-4.1タブを無視してください。逆にGCTFを使用しない場合はCTFFIND-4.1タブウィ使用してください。今回の例として、GCTFを使用し、Getfタブを設定します。

 ●Use Gctf instead? Yes
 ●Gctf executable:  /wherever/it/is/Gctf

(環境変数である$RELION_CTFFIND_EXECUTABLEと$RELION_GCTF_EXECUTABLEは対応するプログラムのGUIエントリのデフォルト値を制御するために使用されます。)

 ●Ignore ‘Searches’ parameters? Yes

(GCTFにSearchesタブのパラメーターを渡すにはこれを’No’に設定します。デフォルトでは、これらの値は無視され、GCTF独自のデフォルトが使用されます。)

 ●Perform equi-phase averaging? Yes

(これによりThon ringのSNRが向上します。)

 ●Other Gctf options:
 ●Which GPUs to use: 0

(この小さいデータセットには1GPUで十分でしょう。)

マシンに応じて、複数のMPI処理を使用してプログラムを実行することができます。1プロセッサーとGPUのみを使用すると、動作はGCTFを使用すると31秒かかります。いったん動作が終わると、出力のCtfFind/job003/Moviesという出力ディレクトリの中にそれぞれの顕微鏡写真ごとに追加ファイルができます。.ctfファイルは算出されたパワースペクトルと適合したCTFモデルのMRCフォーマットの画像を含んでいます。.logファイルはCTFFINDかGCTFからの出力を含んでいます(CTFFINDを使用した場合のみ、.comファイルはCTFFINDを起動するために使用したスクリプトを含んでいます)。 Display:ボタンを使用してout:micrographs_ctf.starを選択すると、すべてのThon ring画像を見ることができます。実験の画像のThon rings間の0はモデルの0と一致するはずです。デフォーカス、最高分解能や性能指数などの順番の表示を並べ替えることができます。log.pdfファイルにはすべての顕微鏡写真に対する、デフォーカス、非点収差、推定解像度などの有用なパラメータのプロットとデータセット全体のヒストグラムが含まれています。データ収集における問題点を見つけ出すのに役に立ちます。  もしCTFモデルが実験のThon ringに十分に一致していない場合、それらの顕微鏡写真の.logファイルを削除して、Finished jobsリストからCtfFind/job003を選択し、parameter-panel の値を修正し、Continue nowボタンをクリックすることでjobを再実行することができます。存在しない.logファイルの顕微鏡写真のみが再処理されます。すべてのCTFモデルが十分に一致するまで実行できます。もしこれでも実行できないまたは、不十分なThon ringがあり顕微鏡写真を削除すると決めた場合、Subset selection jobタイプで破棄することができます。

1.4手動粒子抽出

次のManual picking jobタイプでは(平均化された)顕微鏡写真の「粒子座標」を手動で選択して使用します。自分たちのデータをより理解できるように少なくとも複数の顕微鏡写真を選択するのがよいでしょう。選択した粒子を使用して、参照なしの2Dクラス平均を計算し、その後、これらの粒子は全データセットの粒子を自動検出するためのテンプレートになります。しかしRELION3.0以降は、Laplacian-of-Gaussian(LoG)フィルターに基づく参照なしの自動抽出手順が含まれています。これまでにテストされたほとんどの場合、この手順は適切な開始座標を提供してくれるので、Manual pickingステップは飛ばすことができます。relion_it.pyスクリプトはこの機能を使用して、完全に自動化されたオンザフライ処理を実行します。このチュートリアルでは、説明のためにManual picking jobを起動し、その後LoGベースのAuto-pickingを継続して最初の粒子セットを細分化します。  手動粒子検出は経験あるのみです!RELIONで手動で粒子の検出をするのが好きでなければ、Jude ShortのXIMDISP[17](任意の拡張子付きで)、XMIPP-2.4[16](任意の拡張子付きで)、Steven LudtkeのE2BOXER.PY[18](.boxの拡張子付きで)の座標形式ファイルもサポートしています。もしこれらを使用する場合、顕微鏡写真(動画)を取り込んだディレクトリと同じディレクトリにテキストファイルとしてまとめた座標ファイルを保存してください。そして、同じ顕微鏡写真のルートネームは異なる(suffix+)拡張子で保存されていることを確認してください。例えば、顕微鏡写真がMovies/006.mrcの時、Micrographs/006.boxやMicrographs/006_pick.starとなります。Import jobタイプを使用し、Node type:を2D/3D particle coordinatesに設定してください。Input Files:の欄に整理されたファイルのsuffix拡張子に従ってlinux wildcardが含まれていることを確認してください。上記の例だと、それぞれMovies/*.boxやMovies/*_pick.starになります。  Manual picking jobタイプのI/OタブではCtfFind/job003に作成されたmicrographs_ctf.starファイルを選択するためにBrowseボタンを使用して、Colorsタブは無視して、Displayタブは下のように入力します。

 ●Prticle diameter (A): 200

(これは単に顕微鏡写真に表示された円の直径を調節します。)

 ●Scale for micrographs: 0.25

(これは画面サイズによります。)

 ●Sigma contrast: 3

(顕微鏡写真はほとんど最適な”sigma-contrast”で表示されています。黒が標準偏差の3倍低く、白が標準偏差の3倍高くなります。グレースケールは黒から白へ直線的に変化します。詳細はDisplayImages entry on the RELION wikiを参照してください。)

 ●White value: 0

(どの値を白にするか手動で設定してください。これが動作するには、Sigma contrastは0に設定されるべきです。)

 ●Black value: 0

(どの値を黒にするか手動で設定してください。これが動作するには、Sigma contrastは0に設定されるべきです。)

 ●Lowpass filter (A):20

(ノイズのひどい顕微鏡写真の粒子をより見やすくするための動作です。)

 ●Highpass filter (A): 0

(これは顕微鏡写真上の濃淡のグラデーションを取り除くのに役立ちます。)

 ●Pixel size: 0.885

(これは粒子の直径や、low-pass filterとhigh-pass filterの計算に必要です。)

 ●Scale for CTF image:1

(これは単にそれぞれの顕微鏡写真のCTFボタンをクリックしたときにThon ring画像がどれくらい大きくなるのか調節します。) Run now!ボタンをクリックすることでjobが実行され、必要に応じていくつかの粒子をクリックしてください。しかし、次のセクションではLoGベースの自動抽出を使用するので、必要でなければ選ぶことはありません。最初の[2D classification] jobに手動抽出した粒子を使用する場合は、適切なクラス平均を計算するために約500~1000個の粒子が必要になります。左クリックで選択、中クリックで選択された粒子の削除、右クリックで座標を保存する必要があるポップアップメニューが表示されます。Continue nowボタンをクリックし、Finished jobsからManualPick/job004を選択することによって、いつでもメニューから保存した座標のSTARファイルに戻ることができます(ポップアップメニューの座標を使用してSTARファイルを保存した場合)。

1.5 LoGベース自動選択

今回は、Laplacian-of-Gaussian(Log)フィルタに基づくテンプレートフリーの自動抽出の手順を使用して、最初の粒子セットを選択して下さい。その後、それらの粒子は[2D classification]jobで使用され、2番目の[Auto-picking]jobのテンプレートが生成されます。初期段階では多くの粒子を必要としないので、最初の3枚の顕微鏡写真に対してのみLoGべーすの自動抽出を実行します。一般的に、可能な限り良いテンプレートを得るために、おそらく使用可能なすべての顕微鏡写真に対してLoGベースの抽出を実行します。しかし、今回はこのチュートリアルの計算速度を上げるためにいくつかの顕微鏡写真のみを使用します。  最初にいくつかの顕微鏡写真を選択するために、[Subset selection]jobに移動し、I/Oタブで下を除くすべての空欄をままにします。

 ●OR select from picked cords: ManualPick/job004/cords_suffix_manualpick.star

(手動抽出で座標を保存したときに生成されます。今回は座標を使用するつもりはなく、顕微鏡写真のサブセットセレクションを行うためにそのjobを使用しているだけです。)

このjobにはalias 5micsを使用しました。Run!ボタンを押し、[Manual picking]jobと同じポップアップウィンドウを再び押すと、すべてのpickとCTFボタンが表示されます。‘File’メニューを使用して‘Invert selection’:最初の5枚の顕微鏡写真の前にあるチェックボックスをクリックして選択します。その後、‘File’メニューを再び使用して‘Save selection’を選択します。これで、ManualPick/job004/micrographs_selected.starというファイルができ、これを下記の[Auto-picking]jobに使用します。 その後、[Auto-picking]jobを処理し、I/Oタブの設定を行います。

 ●Input micrographs for autopick: Select/job005/micrographs_selected.star
 ●Pixels size in micrographs (A)  -1

(ピクセルサイズは入力STARファイルの中の情報から自動的に設定されます。)

 ●2D references:

(テンプレートフリーのLoGベースの自動抽出では空欄のままにします。)

 ●OR: provides a 3D reference?  No
 ●OR: use Laplacian-of-Gaussian?  Yes

Laplacianタブの設定をします。

 ●Min. diameter for loG filter (A)  150
 ●Max. diameter for loG filter (A)  180

(これは粒子投影のオングストロームの最小最大のサイズに対応します。)

 ●Are the particles white?  No

(黒です。)

 ●Maximum resolution to consider  20

(ここはデフォルト値のままでいいです。)

 ●Adjust default threshold  0

(正の値、すなわち閾値はより少ない粒子を選び、負の値もより少ない粒子を選んでください。有用な値は、おそらく[-1,1]の範囲ですが、多くの場合デフォルト値の0は正しい働きをします。)

 Referencesタブは無視して、autopickingタブの最初の四つのオプションは無視してください。下記のように設定してください。

 ●Write FOM maps?  No

(これは下のテンプレートベースの抽出で使用されます。)

 ●Read FOM maps?  No

(これは下のテンプレートベースの抽出で使用されます。)

 ●Shrink factor:  0

(縮小を0に設定すると、自動抽出プログラムは参照上のローパスフィルタの解像度に合わせて顕微鏡写真を縮小します。これはすごく早くなり、必要なメモリが少なくなるため、このチュートリアルを素早く実行するのに便利になります。0と1の間の値は顕微鏡写真のサイズの少数で表されるでしょう。これは縮小で1を使用するよりも正確な抽出が少なくなること、つまり縮小がないことに注意してください。この新しいパラメータの詳細は、次のサブセクションで説明します。)

 ●Use GPU acceleration?  No

(計算速度がとても速いので、LoGベースの自動抽出はGPU加速されていません。)

 ●Which GPUs to use:

 Helixタブを無視して、Running tabで単一MPIプロセッサを使用して実行します。もしかするとLoG_basedのようなaliasが有用かもしれません。単一プロセッサを使用すると、これらの計算は、私たちのコンピュータでは約40秒かかります。  Display:ボタンのcoords_suffix_autopickオプションをクリックすることで結果をチェックすることができます。この段階で表示されるポップアップウィンドウで手動で粒子を追加/削除できます。さらに、autopickingタブのノイズの標準偏差と平均のパラメータやLaplacianタブのデフォルトの閾値の調節をしている間、新しいjobを実行して、より多くの、またはより少ない粒子を抽出することができます。しかし、この段階では、単に2回目のauto-picking jobのテンプレート作成のための最初の粒子セットなので、多くの場合これは必要ないでしょう。










1.6 Particle extraction(粒子の抽出)

粒子をピックしたいすべての顕微鏡写真の座標ファイルを使って、対応する粒子を抽出し、必要なすべてのメタデータを【Particle extraction】jobタイプで取得することができます。【Particle extraction】 jobタイプの【I/O】タブで以下の設定をします。

 ● Micrograph STAR file: CtfFind/job003/micrographs_ctf.star

ファイルの選択には【Browse】ボタンが使用できます。ManuaPickディレクトリから選択した顕微鏡写真を選択することもできます。とにかくそれは、3つの選択されたファイルの為の唯一の座標ファイルなので問題ではありません。顕微鏡写真が不足していて座標座標ファイルが見つからないと、警告として【GUI】ボタンウィンドウが赤く表示される。)

 ● Coordinate-file suffix: ManulPick/job004/coords_suffix_manualpick.star

(ファイルの選択には【Broswe】ボタンが使用できます。)

 ● OR re-extract refined particles? No

(STARファイルの粒子のみを再抽出するために、【2D classification】、【3D classification】、【3D auto-refine】 jobから_data.starファイルが使用できます。例えば、抽出時に粒子を前もって縮小していた場合、初めの分類後は元の大きさの粒子で精密化を実行したいときにも役に立ちます。RELION-3.0において、この機能は、【3D classification】または【3D auto-refine】 jobに使われる3次元の参照を利用者指定のX、Y、Z座標上に're-center refined coodinates'するオプションとして拡張された。これは、すべての粒子のXとYの原点座標を調整します。新しく抽出された粒子の再構成は、X,Y,Zそれぞれ位置を中心とするようになります。これは、焦点を絞った微調整に役立ちます。

 ● Manually set pixel size? No

(CTF情報が含まれていない顕微鏡写真STARファイルを入力する時のみ必要です。)

【extract】タブで、実際の粒子抽出のための値を以下のように設定します。

 ● Particle box size (pix): 256

(これは常に偶数にすべきです!)

 ● Invert contrast? Yes

(これは黒を白に反転します。)

 ● Normalize particles? Yes

(常に正規化します。)

 ● Diameter background circle(pix): 200

(粒子はバックグラウンド領域のすべてのピクセルでの平均値が0に、標準偏差が1になるように正規化されます。バックグラウンド領域とは、(縮尺変更前に)ピクセル中の指定された円の外側の部分すべてのピクセルと決められています。負の値を設定すると、粒子ボックスサイズの75%の値が使用されます。)

 ● Stddev for white dust removal: -1
 ● Stddev for black dust removal: -1

(データを実際に見る場合、異常に白や黒よりの値のピクセルのみ除去されます。よく使うのは、stdevの値として5程度です。このデータセットでは異常な値のピクセルはありませんので、補正せずに、初期値の-1のままです。(すなわち、何もしません。))

 ● Rescale particles? Yes

(縮小した粒子は計算速度が速くなります。そのため、処理速度を上げるために初期段階ではよく粒子を縮小します。初期の適切な粒子の分類の計算速度を上げるために使います。再構成がナイキット周波数に近づくと、縮小せずに粒子を再抽出します。)

 ● Re-scaled sized (pixels)? 64

後ほど、同じtemplete-basedの自動選択粒子にも同じjob-typeを使用します。このjobには、LoG_basedのような別名を与えることをお勧めします。[Helix]タブを無視し、一つのMPIプロセッサーを使い、実行してください。粒子はExtract/job007/Movies/という新しいディレクトリの中のMRCスタック(RELIONではいつも.mrcs拡張子をもつ)の中に抽出されます。【Display:】ボタンからout: particles.starに格納された抽出粒子を可視化することによって、すべてうまく進んでいるかの確認をすぐにすることはとても良い考えです。画面上の右クリックでメニューを選択すると、すべての粒子の選択(Invert selection)や、すべての選択された粒子の(位置が合わせられてはいない、そのままの)平均の計算(Show average of selection)などができます。

1.7 Making templates for auto-picking(自動検出のためのテンプレート作成)

次に、全顕微鏡写真の自動検出のためのテンプレートを計算するために、jobタイプ【2D classification】を使用します。 【I/O】タブ上で(【Browse】ボタンを使って)Extract / job007 / particles.starファイルを選択します。 【CTF】タブの設定:

 ● Do CTF-correction? Yes

(ベイズフレームワークの中で、全ての位相強度補正を行います。)

 ● Have data been phase-flipped? No

(このオプションはRELION外でデータを事前処理した場合にのみ有効です。)

 ● Ignore CTFs until first peak? No

(振幅補正によって低解像度成分が誤って強く与えられ、全ての粒子が非常に少ないぼけたクラスに分類されるような場合には、このオプションが役立ちます。)

【Optimisation】タブの設定:

 ● Number of classes: 50

(クライオ電子顕微鏡(cryo-EM)では、少なくともクラス当たり約100個の粒子を使用するのが望ましいです。ネガティブ染色法の場合、1クラスで20~50程のより少ない粒子を使用します。ただし、粒子の数がすくないため、これらの数を緩和することで、さまざまなクラスへの分離が改善されました。おそらく、最低でも50クラス用意するべきです。

 ● Regularisation parameter T: 2

(Tの定義については[13]を参照してください。 クライオ電子顕微鏡(cryo-EM)において、2次元分類ではT=2-3が、3次元分類ではT=3-4の値が一般的に使用されます。ネガティブ染色の場合、これよりもより小さい値の方が良い場合もあります。一般的にクラス平均のノイズが非常に多く現れた場合は、一旦Tの値を減らしてください。もし、クラス平均の分解能が低すぎる場合はTの値を増やしてください。重要なことは、高分解能側のノイズのオーバーフィッティング(過学習)してしまっていることに気がつくことです。)

 ● Number of iterations: 25

(これをほとんど変えた事はほとんどありません。)

 ● Use fast subsets for large date sets? No

(Yesと設定した場合、最初の5回の反復は、K*100個の粒子のランダムなサブセットのみで行われます。(Kはクラスの数)次の5つはK*300個の粒子で、次の5つは30%のデータで設定して、そして最後の1つはすべてのデータを含むものです。これは[Niko Grigorieff et al]によるシステム実装に触発されました。このオプションは、とても大きなデータセットを分類するのに非常に便利です。(何十万もの粒子のマッチもかなり速いです。このようにセットされた小さなデータの場合、それは必要ありません。)

 ● Mask diameter (A): 200

(このマスクは全ての2次元クラス平均に適用されます。また、粒子画像の溶媒ノイズや隅にあるような隣接した粒子を除去するのに使われます。ノイズが大きい溶媒と隣り合った粒子が位置合わせの際に干渉してしまうかもしれないため、直径は小さく保ちたいでしょうが、他方では、クラス平均からシグナルを切り捨てたくないため、粒子の大きさよりも直径が大きいか確かめる必要があります。一方で、粒子の直径が最大寸法よりも大きいことを確認する必要があり、クラスの平均から任意のシグナルを切り取ることはよくありません。)

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

(正の値を与えた場合、この値を超える周波数を位置合わせの際に利用しません。これはノイズによる過学習を防ぐのにも役立ちます。ここではそれは必要ではありませんが、10-15Aで設定されている可能性があります。難しい分類、すなわち非常にノイズの多いデータの場合は、分解能を制限することによって問題が解決することが多いです。)

【Sampling】タブでは、デフォルトをほとんど変更しません。ほとんどのプロジェクトでは6度のサンプリングで十分です。いくつかの大きな正二十面体ウイルスは、より細かい角度サンプリングからの利益があるかもしれません。その場合、最初に6度のサンプリングで25回の反復を実行できます。そしていくつかの実行を続けます。(【Continue now】ボタンを使います。)さらに5回繰り返し、(【optimization】タブで30回までの繰り返し回数を設定して)例えば2回のサンプリングです。このデータ設定のために、この操作は全く必要ありません。前に何らかの形で失敗したjobを、【Continue now】ボタンを使用して再開することもできます。この場合、どのパラメータも変更する必要は無いでしょう。【2D classification】、【3D classification】、または【3Dauto-refine job】を続行するには、常に【I / O】タブの【Continue now】に_optimiser.starファイルを指定する必要があります。

【Helix】タブは無視し、【Compute】タブで以下のように設定を行います。

 ● Use parallel disc I/O? Yes

(この場合、すべてのMPIスレーブは自分の粒子をディスクから読み込みます。 高速(並列)ファイルシステムを使用している場合は、このオプションを使用してください。 並列ではないファイルシステムは、複数のMPIノードからの並行したアクセスを処理できない場合があることに注意してください。そのような場合、このオプションをNoに設定するべきです。この時、マスターMPIノードだけが粒子を読み込み、ネットワーク経由でMPIスレーブにデータを送信します。)

 ● Number of pooled particles: 30

(粒子はMPIスレーブによって個々のバッチに処理されます。各バッチの中で、粒子画像のスタックは、ディスクアクセス時間を改善するために1回だけ開閉されます。1つのバッチのすべての粒子画像は一緒にメモリに読み込まれます。nr_pooled_particlesパラメータは、スレッドごとに読み込まれる粒子の数を制御します。30に設定され、1つが8つのスレッドを使用する場合、30x8 = 240個の粒子のバッチが一緒に読み込まれます。これにより、ディスクアクセス、特にディスクアクセスのメタデータ処理が問題となるシステムでのパフォーマンスが向上する可能性があります。通常、GPUを使うときは、10-30の値を利用します。CPUのみを使う場合は3のようにより小さい値を使います。わずかなRAM(ランダム・アクセス・メモリ)の使用量の増加をもたらします。)

 ● Pre-read all particles into RAM? Yes

(Yesを選択すると、すべての粒子画像がコンピュータのメモリに読み込まれ、ディスクアクセスが遅いシステムでの計算が大幅に高速化されます。ただし、使用可能なRAMの量には注意が必要です。粒子は倍精度で読み込まれるため、N個の粒子をRAMに読み込むには(N *box size*box size* 4 /(1024 * 1024 * 1024))ギガバイトかかることになります。並列ディスクI / Oが「Yes」で選択されている場合、すべてのMPIスレーブは粒子すべて読み込みます。並列ディスクI / Oが「No」で選択されている場合、マスターのみがすべての粒子をRAMに読み込み、精密化の反復中にMPIスレーブにそれらの粒子を送信します。)

 ● Copy particles to scratch directory?

(すべての粒子を事前読み込みするのに十分なRAMを持っておらず、コンピュータに速いスクラッチディスク(SSD?)があるのなら、これは役に立ちます。この場合、一時のディレクトリを作成できるスクラッチディスクの名前を指定します。e.g. /ssd)

 ● Combine iterations though disc? No

このようにして、すべてのMPIノードは、ネットワークを介してそれぞれの反復の終わりとデータを結合します。もしネットワークがボトルにネックになっているか、どういうわけか問題を起こしている場合、オプションでNoを設定することができる。この場合、すべてのMPIノードのデータをディスクに書き込み/読み込みをします。

 ● Use GPU acceleration? Yes

(これらに合ったGPUをお持ちの場合、このjobは高速化されます。)

 ● Which GPUs to use: 0:1:2:3

(これは、あなたのシステムで使えるGPUに依存します。これを空のままにすると、プログラムは使用するGPUを特定しようと試みます。0または1を使ってGPU IDを入力してください。複数のMPIプロセッサーを使用している場合、指定したGPUで各MPIプロセスを実行できます。異なるMPIプロセスのGPU IDは、コロンで区切られます。 0:1:0:1はGPU 0でMPIプロセス0と2を実行し、MPIプロセス1と3はGPU 1で実行されます。)

【Running】タブで、Number of MPI processors(MPIプロセスの数)とNumber of threads(スレッドの数)を指定します。要求されたCPUまたはコアの総数は、2つの値の積になります。【2D classification】、【3D classification】、【3D initial model】、【3D auto-refine】は1つのMPIプロセスをマスターとして利用します。これは計算を一切行いませんが、MPIプロセッサーに要求にjobを送ります。したがって、1つが上記の4 GPUを指定している場合、5つのMPIプロセスで実行するのが得策です。スレッドは、しばしばより効率的なRAM使用に関して利点がありますが、MPIの並列化はスレッドよりも優れています。多くの場合、【3D classification】と【3D auto-refine】jobでは、各(マルチコアの)計算ノードで使用可能なRAMを共有するために、多くのスレッドを使用することが必要になります。。【2D claasification】ではメモリを消費しないので、スレッドがあまり必要ない場合があります。しかし、MPIプロセス間通信(拡張のボトルネック)が、多くのスレッドを実行する場合に比べて、速度を制限する場合もあります。さまざまなクラスタによって異なりますので、これらのパラメータを使用して、それぞれのコンピュータのセットアップによって最適なパフォーマンスを得る必要があります。すべての粒子をPAMに先読みしてパラレルディスクI/O、4GPUおよび、5MPIプロセッサーをそれぞれ6スレッドで使用したところ、作業はおよそ4分で終了しました。

多くの【2D classification】jobを実行するので、例えば、LoG_basedのような、意味のあるエイリアスを使用することが賢いやり方です。、[Display:]ボタン上でrun_it025_model.starを選択し、得られたクラス平均を見ることができます。特定の順番でクラスの平均を見ることを選択したいと思うかもしれません。ポップアップウィンドウでは、rlnClassDistribution(クラス粒子の個数)(【reverse order】をチェックして、昇順の代わりに降順の並び替え)、またはrlnAccuracyRotationsに基づくなど特定の順序でクラス平均を調べ、選択してみることができます。

1.8 Selecting templates for auto-picking (自動検出のためのテンプレート選択)

適切なクラス平均画像の選択は【Subset selection】jobで行われます。【Class option】タブ上に与えられたSelect classes from model.starと書かれた行の横にある【Browse】ボタンを利用して、【I/O】タブ上のClass2D/manualpick/run_it025_model_.starファイルを選択してください。

 ● Re-center the class averages?: Yes

(このオプションは、2次元クラス平均の自動センタリングが可能です。画像のセンタリングはその重心を基準としており、粒子の白(黒ではない)の部分をもとに計算されます。センタリングされたテンプレートが自動検出中に必要となる一方で、2D classification実行時ではクラス平均はセンタリングされないかもしれないので、再センタリングがしばしば必要となります。特にオートピッキングのためにクラスの平均画像を使用する場合、それが中心にあることが重要です。さもないと、すべての粒子座標が体系的に中心から外れてしまうためです。)

 ● Regroup the particles? No

(これは、それぞれの電子顕微鏡写真にある(選ばれた)粒子が非常に少ない場合に便利なオプションです。そのような場合、スペクトルノイズ強度とスケールファクターの推定が不安定になることがあります。デフォルトでは、スケールファクターの推定は顕微鏡写真ごとにそれぞれ計算されます。このオプションは計算実行時、複数の顕微鏡写真の粒子を一緒に計算してグループ化することが可能です。RELIONは、(クラス分類や自動精密化実行の際に)グループがとても小さくなっている場合に警告を出します。)

templates4autopickのようなエイリアスはとてもいいアイディアです。rlnClassDistributionカラムに基づいたクラス平均を再び求める可能性があります。代表となりそうな、見た目が異なる粒子のクラス平均を4〜6つ選択してください。見た目が似ているものを繰り返し選択したり、よくないクラス平均を含めたりしないでください。選択するにはクラス平均上で左クリックしてください。右クリックでポップアップメニューからSave selected classes オプションを使うことで、選択したクラス平均を保存できます。

1.9 Auto-picking(自動検出)

【Auto-picking】jobタイプでは、テンプレートとして選択された2次元クラス平均を使います。ただしすべての顕微鏡写真で自動ピッキングを実行する前に【auto piking】タブ上で4つの主要なパラメータ―を最適化する必要があります。the piking threshold、the Minimum inter-particle distance、the Maximum stddev noiseとthe Minimum avg noiseです。これは時間を短縮するために数枚の顕微鏡写真のみで行われます。LoG_basedのオートピッキング用に選んだのと同じ5つの顕微鏡写真を利用します。 次に、[auto piking]jobでの[I/O]タブ設定:

 ● Input micrographs for autopick: Select/5mics/micrographs.star
 ● Pixel size in microgfraphs (A): -1

(ピクセルサイズは、入力STARファイルの情報から自動的に設定されます。)

 ● References: Select/templates4autopick/class_averages.star
 ● OR: provide a 3D reference?No
 ● OR: use Laplacation-of-Gausssian?No

【References】タブでの設定:

 ● Lowpass filter references (A): 20

("Einstein-from-noise"のアーティファクトを避けるために、データから得ようとしている最終的な分解能よりも大幅に低いローパスフィルターを使用することは非常に重要です。)

 ● Highpass filter (A): -1

(たとえば200などの正の値を渡した場合、リファレンスの顕微鏡写真はオートピッキングよりも高いハイパス・フィルターが適用されます。これは強いグレースケール勾配(氷の厚さなどに依存)が顕微鏡写真にかかっているときに役立ちます。)

 ● Pixel size in references (A): 3.54

(負の値を渡した場合、入力した顕微鏡写真と同じスケールであると認識します。そうでない場合、例えば粒子を抜き出す上でのリファレンスを作るために使用される粒子をリスケールする必要があるので、正しいピクセルサイズの正の値をここのリファレンスに追加します。【particle extraction】jobで4倍の粒子(256から64)をダウンロードするため、参照のピクセルサイズは4*0.588=3.54Åです。)

 ● Mask diameter (A): -4

(負の値を与えた場合、(【2D classification】 jobタイプのときに使った値と同じ値が使えます。)

 ● Angular sampling (deg): 5

(この値はどんな場合でもほとんど正常に動くと思われます。)

 ● References have inverted contrast? Yes

(顕微鏡写真の中にある粒子は黒い(CTF補正がかかっていない)ので、使用するリファレンスは白を利用します。)

 ● Are References CTF corrected? Yes

(2Dクラス平均を行った際にCTF補正をしたためです。)

 ● Ignore CTFs until first peak: No

(【2D classification】jobでもリファレンス作製のために使用した場合のみこのオプションを使って下さい。)

【auto piking】タブでの設定:

 ● Picking threshold: 0.8

(これはpeak-searchアルゴリズムのためのFOMマップ中のしきい値です。この値よりも低いFOMの粒子は検出されません。)

 ● Minimum inter-particle distance (A): 200

(これは、隣接する2つの粒子間の最大許容距離です。反復的クラスタリングアルゴリズムはこの距離よりも互いに近い粒子を取り除きます。これの効果的な値は粒子直径の50%から60%の範囲であることが多いです。)

 ● Maximum stddev noise: -1

(これは炭素領域や非常に汚染されてる特徴が見て取れる領域のピッキングを防止するのに有効です。標準化された顕微鏡写真のバックグラウンド標準偏差がこの値より高い領域のピークは無視します。効果的な値は1.0から1.2の範囲であることが多いです。バックグラウンド標準偏差が高いため、ピークを除去するためにこの機能をオフにするには値を-1にして下さい。)

 ● Minimum avg noise -999

(これは炭素領域や非常に汚染されてる特徴が見て取れる領域のピッキングを防止するのに有効です。標準化された顕微鏡写真のバックグラウンド標準偏差がこの値より高い領域のピークは無視します。効果的な値は-0.5から0の範囲であることが多いです。バックグラウンド標準偏差が高いため、ピークを除去するためにこの機能をオフにするには値を -999にして下さい。)

 ● Write FOM maps? Yes

(下の説明参照。)

 ● Read FOM maps? No

(下の説明参照。)

 ● Shrink factor: 0

これを0に設定することで、オートピッキングプログラムは顕微鏡写真をリファレンスにおいてのローパスフィルターの解像度にまで縮小します。これはチュートリアルを手軽にできるように、実行をとても速く、要求メモリも軽くしてくれます。0から1の間の値は顕微鏡写真のサイズの画分の結果になります。これはshrink=1(縮小しない)にするよりもいくらか正確さの低い検出になるということに注意して下さい。これの新要素についての詳細な説明は次のサブセクションでします。)

 ● Use GPU acceleration? Yes

(適切なGPUを備えている場合のみ使って下さい。)

 ● Which GPUs to use:

(これを空白のままにした場合、このプログラムはどのGPUを使えばよいのか判断しようとします。しかし、もし使いたいGPUのIDが例えば0や1などと、はっきりと分かる場合は、この項目に入力して下さい。複数のMPI-processorsを使う場合(そうでない場合も)は、それぞれのMPI processを特定のGPUで動かすことができます。それぞれのMPI processesに割り振るGPU IDは0:1:0:1など、コロンで分けられています。0:1:0:1とはMPI processの0と2はGPU 0上を、MPI processの1と3はGPU 1上で動作しているという意味です。)

【Helix】タブは無視して下さい。 【Running】タブでひとつのMPI processorを使って動かして下さい。おそらくoptimise_paramsのようなエイリアスが有効かもしれません。GPUアクセラレーションを使うと、ジョブは30分で完了します。

この計算の高負荷な部分は、a probability-based figure-of-merit(それぞれの回転したリファレンスと顕微鏡写真の中の全ての場所での相互相関関数に関連した値)の計算をすることです。計算後には、前述のしきい値と最小距離のパラメータを利用した、より高速なpeak-detectionアルゴリズムが実行されます。これらのパラメータは最適化する必要があるため、 プログラムは【References】タブで指定されているようにいわゆるFOMマップをかき出します。これらはリファレンスごとに2つの大きなサイズ(顕微鏡写真のサイズ)のファイルになります。ハードディスク動作中のI/O障害を避けるために、FOMマップに書き出すときに自動検出プログラムは順次に動作するようにできます(従って上記で示した様に、一つのMPI processorで実行するべきです。)

FOMマップをディスクに書き出せば、より高速に検出するパラメータになるように最適化するために使用されます。最初に、動作させ終えたばかりのjobで【Display:】ボタンから coords_sufix_autopick オプションを使って、現在の設定で自動検出された粒子を調べます。ディスプレイウィンドウは、最後に実行した【Manual picking】jobのパラメーター(サイズやシグマコントラスト、カラーなど)を利用することに注意しておいて下さい。実際に【Manual picking】jobタイプでこれらのパラメーターを変更でき、左上の jobs メニューから Save job settings オプションで設定を保存できます。

FOMの状態を表示するために、【Colors】タブで次のように設定したあとに、これを行って下さい。

 ● Blue<>red color particles? Yes
 ● MetaDataLabel for color: rlnAutopickFigureOfMerit	
 ● STAR file with color label:

(この部分は空にしておいて下さい。)

 ● Blue value: 1
 ● Red value: 0

【Running】タブでjobを実行すると、従来通り【pick】ボタンと、【CTF】ボタンをもつ同様のGUIが示されます。ディスプレイウィンドウから両方の顕微鏡写真を開き、より多くのまたはより少ない粒子を選びたいか(つまり、しきい値を大きくするか小さくするか。)近くの粒子を同一とするか異なるものとするか決定します。(最小の粒子間距離の設定)各粒子が赤から青に着色されていることに注意してください。(赤のFOMはとても低く、青のFOMはとても高いです。)次のステップに進む間、両方の顕微鏡写真のディスプレイウィンドウを開いたままにすることができます。

【Finished jobs】から、AutoPick/optimise_params jobを選択して下さい。そして【autopicking】タブ上でパラメーターを変更して下さい。次のように変更して下さい。

 ● Write FOM maps? No
 ● Read FOM maps? Yes

【Continue now】ボタンをクリックすることで実行した時、全てのFOMの再計算の代わりに、以前書きだされたFOMマップをディスクから再読み込みします。新しい座標のその後の計算は、数秒で実行されます。

3つのパラメータをすべて使いこなして、検出結果をどのように変更するかを確認してください。すべての顕微鏡写真のauto-pickingに使用するパラメータがわかったら、GUIの左上にあるjob-typeブラウザの【Auto-picking】オプションをクリックして【Run now!】ボタンでjobを選択します。【I/O】タブで入力した顕微鏡写真のSTARファイルと選択した2つの顕微鏡写真を元の【CTF estimation】job のところで置き換えます。(CtfFind/job003/micrographs_ctf.star)【References】タブに表示されている通りすべて任せます。また、【auto picking】タブは以下のように設定します。

 ● Picking threshold: 0.0
 ● Minimum inter-particle distance (A): 100

(良い値はしばしば、粒子の直径のおよそ50-70%です。)

 ● Maximum stddev noise: -1
 ● Minimum avg noise: -999
 ● Write FOM maps? No
 ● Read FOM maps? No

ここで、jobは並列に(FOMマップが書き出せされてないのであれば)実行されるかもしれません。【Running】タブで、自動検出を実行するコアの数を指定します。MPIプロセッサーの最大有効数は、入力したSTARファイルの顕微鏡写真の数となります。シグナルMPIプロセスとシグナルGPUのみを使用して、計算はまだ約1分で終了しました。エイリアスとしてtempale_basedを使用しました。

FOMマップを読み込み書き出しをするかどうかによって、【Continue now】ボタンの動作の仕方に重要な違いがあることに注意して下さい。FOMマップを読み込みまたは書き出しをする場合には、【Continue now】ボタンをクリックすることで、プログラムは(一般的には少数の)全ての入力した顕微鏡写真を再度検出します。しかし、FOMマップの読み込みまたは書き込みをしない場合、すなわち、自動検出を全ての顕微鏡写真で行う2回目のjobでは、【Continue now】ボタンをクリックすることで、まだ自動検出を行っていない顕微鏡写真のみ再検出します。これはスケジュール化されたjobの反復にて有効です。たとえば、顕微鏡検査セッションの間の高速データ処理などです。また、詳細は13.3のセクションを見て下さい。もし再検出を全ての顕微鏡写真について、新しい値のセットを用いてしたい場合は(仕上がっていない顕微鏡写真だけ動作させる代わりとして)、【Run now!】ボタンの代わりに、左にあるjobタイプブラウザ上で【Auto-picking】jobタイプをクリックして下さい。そのとき、新しい出力ディレクトリが作成されます。 【Display:】ボタンからcoords_suffix_autopick オプションをクリックすることで、結果を再確認することができます。手動で全ての顕微鏡写真を調べて誤検知を取り除くのを好む方もいます。たとえば、顕微鏡写真上の炭素端や高コントラストの人工物はしばしば粒子と誤認されます。【Display:】ボタンからポップアップウィンドウを使うことで、それぞれの顕微鏡写真においてこれを実行できます。マウスの中ボタンを使って粒子を取り除いて下さい。中ボタンを押しっぱなしにすることで、広い範囲の誤認粒子を複数取り除けます。忘れずに右ボタンメニューから新しい座標を保存して下さい。

ひとたび全部の結果を満たしたすと、ディスクスペースを確保するために、最初のステップで書き出したFOMマップを削除したくなるかもしれません。手軽に行うために【Job actions】ボタンから、Gentle clean オプションを使うことができます。 ひとたび座標全体セットを満たしたら、以前のデータを全て保ちつつ、【Partcle extraction】jobを再実行する必要がありますが、【Input coordinates】を自動検出で新しく生成されたものに変えて下さい。これは下記のよりよい精密化のために使われる初期単粒子データセットを作成します。おそらく、template_basedのようなエイリアスは意義があるのでしょう。

1.9.1The shrink parameter(縮小値)

より速い処理を可能にするために、RELIONでは、コマンドライン引数 --shrink を通して顕微鏡写真をフィルタリングするオプションを実装しています。最もシンプルな使い方は --shrink 0 と使うことです。しかし、これはもっと制御して使うことができます。その場合は、次の方法に従って動作して下さい。

--shrink の初期値は1.0ですが、これは効果がなく、顕微鏡写真に全くフィルターをかけません。これは以前のバージョンのRELION-2.0の自動検出と同一の動作をします。 ● --shrink val = 0 では、テンプレートリファレンスのローパスと同じように、--lowpass 指定されたローパスフィルタをかけた顕微鏡写真となります。これは単粒子解析(らせん状検出のためではなく)のために使うことをお勧めします。 ● --shrink 0 < val ≤ 1 では、画像サイズが、size= val ·micrograph size にした結果になります。すなわち、valとは顕微鏡写真のオリジナルサイズに適用させたスケールファクターです。 ● --shrink val > 1 では、size = val − (val mod 2)、すなわち、valより小さい最小の偶数の整数値になります。これは顕微鏡写真に特定の(偶数の)整数サイズ与える方法です。

新しいサイズが--lowpassよりも小さい場合、これは要求された(あるいは初期設定の)分解能を超えて、分解能を制限することになるので、致命的ではありませんが警告をならす結果となります。RELIONの自動検出は多くのFFTを実行するため、顕微鏡写真のサイズもFFT計算の大きな落とし穴を避けるために自動的に調整されるようになりました。これらに関する注釈とどのようにパラメータが上書きされるかは、ユーザーが実行する各自動検出の最初の出力に表示されます。

1.10 Particle sorting(粒子ソート)

RELIONには、各粒子とそれらの調節されたCTF補正リファレンスとの間の差異に基づいて粒子を素早く並べ替える機能もあります。ソートプログラムは【Particle sorting】jobタイプからアクセスすることができ、それぞれの粒子でリファレンスが利用できるときであれば、いつでも動かせます。たとえば、【Auto-picking】、【2D classification】、【3D classificationo】、【3D auto-refaine】の後などです。その使用方法を示すために、自動検出の後に実行します。

【I/O】タブでは以下のように設定してください。

● Input particles to be sorted: Extract/allmics autopicked/particles.star (このファイルは自動検出後の抽出プログラムによって生成されます。【2D classification】、【3D classification】または、【3D auto-refine】jobの場合は、最後の反復での_data.starを入力するべきです。)

● References from model,star: (空のままにします。これは入力粒子が【2D classification】、【3D classification】または、【3D auto-refine】jobからくるときに利用されます。)

● OR autopicking references: Select/templates4autopick/class_averages.star (抽出された粒子のための座標を与える自動検出jobに使われた参照を入力してください。)

【CTF】タブ上では以下のように設定してください。

● Pixel size in references (A) -1 (参照はソートされる粒子と同じサイズです。) ● Are References CTF corrected? Yes ● Ignore CTFs until first peak? No

このプログラムは、シグナルMPIプロセスにおいて数秒で実行されます。複数のMPI processorsを動かす必要がないほどです。おそらくあなたはエイリアスとしてafter_autopickを使うことができると思います。このjobは出力ディレクトリに particles_sort.star と呼ばれる入力ファイルと同じファイルを生成しますが、rlnPartileSelectZScore と呼ばれるカラムの追加があります。。【Subset selection】jobタイプの 【OR select from particles.star】 とある行で、このファイルを選択することが出来ます。すべての粒子を表示するために必ずGUIの‘Max. nr. images’ エントリーを負の値に設定してください!ポップアップ表示ウィンドウ内にて、その新しいカラムに基づいて粒子を可視化できます。ディスプレイの上に良い粒子、下に良くない粒子をもつ強い傾向が見えてきます。下から上にスクロールして、下のすべての粒子を破棄する必要があるポイントを決定でき、右マウスメニューを使用して Select all above および、または1つずつ粒子を選択することができます。右マウスからポップアップメニューを使って、出力STARファイルに忘れずに保存しましょう。おそらく、after_sortingのようなエイリアスがこの【Subset selection】jobに役立つことでしょう。

 3.0のリリースから、RELIONはSTARfileの値に基づいて粒子のサブセットを選択するためのGUIベースの機能も実装しています。これはソート後の粒子の整理にも役に立ちます。もしデータセットが非常に大きい場合は、それらをすべて表示するのに長い時間と多くのコンピュータのメモリがいります。したがって、【Particle sorting】jobは、logfile_pdbも出力し、ソートアルゴリズムとそれらのヒストグラムから、すべての粒子のZスコアをプロットします。一度これらを見て、Zスコアのカットオフにとって良い値を決めることができます。これはチュートリアルで行わなかったと思いますが、それから【Sub selection】guiに行くことができます。【I/O】タブでparticles_sort.starファイルを読み込み、【Subset】タブで設定してください。

●Select based on metadata values? Yes ●Metadata label for subset selection rlnParticleSelectZscore ●Minimun metadata value: -9999. ●Maximum matadata value: 8.0 ●OR: select on image statistics? No ●OR: split into subsets? No









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

良くない粒子を取り除くために、大抵は参照なし2Dクラス平均を使います。 前項で述べた粒子抽出ステップ(例えば、自動検出結果の手動管理や抽出された粒子の分類)で良い粒子を含もうとしますが、ほとんどの場合、良くない粒子がデータの中にまだ存在しています。 良くない粒子は一緒にうまく平均化しないので、大抵は比較的小さいクラスになりやすく、不適切な2Dクラス平均を算出します。これらを取り除くことで効率的にデータをきれいにします。


2.1 Running the job(動作の実行)

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

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

【Optimisation(最適化)】タブを次の通りにセットします。

●Number of class: 100

(今、たくさんの粒子を持っています。)  After_sortingのようなエイリアスを用いると、20分ほどで終わります。 動作が終了したら、_model.starファイルを選択して【Subset selection】を起動することができます。class2d_aftersortのようなエイリアスは意味があります。ここで、すべての見栄えの良いクラスをクリックして選択します。(もしくは右クリックメニューオプション【Select all classes above】を使用する。)この時、自動検出において低いしきい値を使用して、高解像度のノイズが蓄積している場合、低解像度のゴーストのように見える【Einstein-from-noise】クラスに気を付けてください。こうしたクラスの選択は避けて下さい。より良いクラスがすべて選択されたら、マウス右クリックメニューオプションから選択したものを保存します。 この手順は、複数回繰り返すことがあるので、覚えておきましょう。また、2D classficationのあとのデータに残っている外れ画像を識別するために、ソート(並べ替え)アルゴリズムを再実行できることに注意してください。 す

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

ここではRELIONへの興味が深い人向けの、より詳細な情報を含んでいます。 お急ぎの方はこのセクションをスキップしても構いません。 RELION は 2D(3D)classification を繰り返すごとに、ファイルに書き出します。 2D クラス平均算出の最終反復時では、以下のファイルが作成されます。

● Class2D/after_sorting/run_it025_classes.mrcs 

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

●Class2D/after_sorting/run_it025_model.star 

 これは実際のクラス平均に沿って精密されたモデルパラメーター(クラス間の画像の分布、再構成された構造中のシグナル対ノイズ比の球面平均、全てのグループのノイズスペクトラム)を含んでいます。  less コマンドを使って、このファイルの中身を見てください。特に、data_model_classesテーブルのそれぞれのクラスの粒子分布を確認して下さい。これとクラス平均を比較すると、低分解能のクラスにある粒子はほとんどない一方で、高分解能のクラスに存在する粒子は多いと分かる。  平均的に少ない粒子を通しての平均化は自然と低いシグナル対ノイズ比になりますので、このときにベイズ推論的な考えを持つことが重要になります。それぞれのクラスにおいて概算されたスペクトラル、シグナル対ノイズ比はdata_model_class_N テーブルに保存されます。同様に、それぞれのグループにおいて概算されたノイズスペクトラムはdata_model_group_Nテーブルに保存されます。data_model_groupsテーブルはそれぞれのグループにて精密されたscale-factor強度を保存します。(平均よりも高い値をもつグループはより強力なシグナルを持っている、平均よりも低い値をもつグループは相対的に低いシグナルである)  これらの値はデフォーカスと相互関係があることが多いだけでなく、汚れのの蓄積や氷の厚さに影響される。

●Class2D/after_sorting/run_it025_data.star

 これはそれぞれの粒子に関わる全てのメタデータを含んでいます。そのメタデータとは、particles.star fileに入力した情報の他に、最適な方向、最適なクラス同定、対数尤度への寄与、などに関する追加情報です。 このファイルは再度新しく洗練されたデータをstarファイル同様の形式のでの入力に使用される。

●Class2D/after_sorting/run_it025_optimiser.star 

 これは終了しなかった場合の再起動に必要な精密化過程についての全体的な情報が含まれています。たとえば、もし25反復後でもまだ収束しなかった過程を考える場合(評価のために反復24と25から出したクラス平均を比較できる)、Finished jobs パネルの中で以下の機能を選択できる。I/O タブ上で、Continue from hereから上記のファイルを選択することが出来る。そのときに、Optimisationタブ上で

Number of iterations:40 

と設定して下さい。このジョブは、反復26から反復40名で繰り返されるだろう。また、Sampling タブで緻密な角度や並列処理をするサンプリング比率を選ぶかもしれません。optimiser.starファイルのもう1つの有用な特徴として、1行目に、これを動かすために与えられた正確なコマンドライン引数がコメントとして含まれています。

●Class2D/after_sorting/run_it025_sampling.star 	

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

2.3 Making groups

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

RELIONは、粒子をグループ化する際に、以下のふたつのことを実行します。ひとつは、平均のノイズのスペクトラム強度(σij^2)の推定と単一数としての強度スケールファクター(τi^2)の推定です。後者は、そのデータの異なる部分の間での、全領域シグナル対ノイズ比(SNRi)の違いを表現しており、例えば、氷の厚さ、デフォーカスまたは汚染等によるものです。  通常、顕微鏡写真上の全ての粒子は別々のグループとして扱っています。この動作は顕微鏡写真ごとに多くの粒子が存在する場合には良いです。しかし、高倍率で扱っている場合、サンプルは非常に希釈されるか、最終的に選択されたものは顕微鏡写真ごとには少数しか粒子が含まれておらず、強度スケールファクター(またノイズスペクトラ)強度の推定は不安定なものとなります。一般的に各グループに少なくとも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補正がされます。

3 De novo 3D model generation  (3Dモデル形成)

RELIONは、2Dの粒子から| 3D initial model | (3Dの初めのモデル)を生成することからSGDアルゴリズムを用いる。RELION-3.0によると、実行はcryoSPARCプログラムの実行にとてもよく従う。見ている方向とデータの合理的な配分の生成は(2D classification)の詳細なクラス平均を産出するために十分いい。このアルゴリズムは、適切な産出にとてもふさわしく、それ以降の低解像度モデルは、3D classificationか3D auto-refunementで利用できる。ここで留意すべきは、リリースされた3.0の実行の改善は、もはや2D classification動作からクラスにつき選択されたランダムな分子とともに分子の部分集合を選択することをしないことである。代わりに、選択された分子の一式の全体のデータを用いた時、そのアルゴリズムはとてもたくましいものである。

3.1 Running the job (動作の実行)

3D initial model のジョブタイプのI/Oタブのselect/class2d_aftersort/particles.starファイルを選択する。すべては、すでにCTFで順番にしている。OptimisationタブのFillにより従う(角のある初期状態の放置とサンプリングの相殺)

●Number of class : 1

(時々、一つのクラスより大きいもの。0をつかうと、データセットにまだ存在するだろう至適な分子のシンクの生成を助けるだろう。追加された議論sgd_skip_annealはまだ有用だろう。この場合、私たちはスピードアップするための一つのクラスをつかうだろう。)

●Mask diameter (A) : 200

前と同じ

●Flatten and enforce non-negative solvent  : Yes
●Symmetry C1

(対称性がなにかもわからないとき、C1の再構築はおそらく、始めることにベストな選択であるだろう。いくつかの高い対称性の物体は正しい空間グループよりC1のSGDによる解法が簡単だろう。このデータセットはいいデータで、正しいポイントグループD2が動作できる。しかしながら、C1からC2にどのように進行するかを説明すると、C1のSGDを動かすだろう。) 特に、実例の1つに、SGDタブのいくつかに変えることはできないことと、その初期状態はいくつかの場合に適している。しかしながら、このチュートリアルのスピードアップすることは、私たちは、反復のデフォルトの数の半分だけ行うだろう。 したがって、このように変化する。:

●Number of initial iterations : 25
●Number of in-between iterations : 100
●Number of final iterations : 25

Gomputeタブで、システム上で最適化する。再度RAMの中で数千の分子がプレリードできる。GPUの加速は、スピードアップを実現でき、反復の間の複数の極大化のステップは、2Dか3Dの精密化か分類の基準の準備はゆっくりになるだろう。4CPUのカードと、5MPInoプロセス、6スレッドのMPIプロセスを使い、システムはおよそ15分で済む。

3.2 Analysis the result (結果の分析)

UCSFキメラのような3Dビューワーの吐出量(Initial Model/job017/run-it/50_class001.mrc)を見る。もし、このポイントにおける対照的なポイントグループの追加を認識することは、RELIONの習慣における協調的なシステムの中心的なX,Y,軸における対照的な軸を整列させることを必要とするだろう。リリースされた3.0は新しいプログラムを促進することを含む。 この動作はコマンドラインから実行できる。

●Relion_align_symmetry - - i InitialModel/job017/run_it150_class001.mrc - -o InitialModel/job017/run_it150_class001_alignD2.mrc - -sym D2

それと、マップにおける対照的な軸のUCSFキメラかrelion_displayの確認はX,YとZ軸の実際の整列とする。私たちはD2の対称的なものを使うことを強要させるだろう。

●Relion_image_handler –i InitialModel/job017/run_it150_class001_alignD2.mrc –o InitialModel/job017/run_it150_class001_symD2.mrc –sym D2

後者のコマンドの出力マップは、入力マップに似ているだろう。 これによって確認できる。

●relion_display_ --i InitialModel / job017 / run_it150_class001_alignD2.mrc & relion_display –i InitialModel / job017 / run_it150_class001_symD2.mrc &

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

すべてのデータは異性分からなっています。問題は、どのくらいの費用でいられるかです。RELIONの3Dマルチリファレンス精密化手順は、強力な教師なし3次元分類へのアプローチを提供しています。

4.1 Running the job (ジョブを開始)

教師なし3次元分類は、[3D classification] ジョブタイプから、実行可能です。 [I/O]タブの設定:

●Input images STAR file: Select/class2d_aftersort/particles.star
●Reference map: Import/initial_3dref/3i3e_lp50A.mrc

このマップはパイプラインの部分のように、Brouseボタンで表れないように述べる。両方のタイプは空のフィールドの中に名付けられるか、importジョブタイプをつかうマップの移入が行われる。対照的なC1を動作させたり、非対称的なInitialModel / job017 / run_it150_class.mrcを使いことを選択する。しかしながら、すでに右の対称的なセッティングは、後々とても楽になるだろう。

●Reference mask (optional):

(これは空白のままにしておきます。これは、例えば、注目しているリボソーム精密化のために大/小サブユニットマスクを提供するところです。この項目を空のままにしておくと、[Optimisation]タブで指定された粒径の球形マスクが使用されます。 これは分類へのバイアスを最小限にする働きがあります。) [Reference]タブの設定:

●Ref. map is on absolute greyscale: No

(このマップがデータセットから再構築されたとき、すでに正しいグレースケールであります。RELION内の同じデータから再構築されていないマップは、おそらく、正しいグレースケール上にないと考慮しておきましょう。)

●Initial low-pass filter (A): 50

(精密化プロセスにバイアスが導入する可能性があるため、高解像度の初期参照モデルは使用してはいけません。[12]で説明したように、初期マップをできる限りフィルタリングする必要があります。リボソームでは大抵、70Åを使用し、小さい粒子では通常40〜60Åの値を使用します。)

●Symmetry: C1

(このサンプルはD2の対称性があることはわかっていますが、対称性を持たない初期分類を実行することをお勧めします。良くない粒子は適切なものから分離することができ、対称性は再構成されたマップで確認することができます。)

●Do CTF corection? Yes
●Has reference been CTF-correced? Yes

(このモデルは、SGDのCTFコレクションによって作られている。)

●Have data been phase flipped? No
●Ignore CTFs untill first peak? No

(リファレンスを作成するために使用した[2D classification]jobでもこのオプションを使用した場合にのみ、このオプションを使用します。) 【Optimisation】タブの設定:

●Number of class: 4

(より多くのクラスを使用すると、多様な情報が含まれているデータセットがより多くのサブセットに分割されます。計算コストは、CPU時間と必要なコンピュータメモリの両方の観点から、クラス数に比例して変化します。)

●Number of iterations: 25

(これは一般的には変更する必要はありません。)

●Regularisation parameter T: 4

(Tの定義については[13]を参照してください。クライオEMの、2次元分類では、通常、Tは1~2を設定し、3次元分類では2~4を設定します。ネガティブ染色の場合、少し低い値が効果的な時があります。クラス平均にノイズが見える場合はTの値を低くし、逆にクラス平均の分解能が低すぎる場合はTの値を高くします。主に気をつけなければならない点は、高解像度のノイズの過学習です。あらかじめ計算された結果に2という値を使用しました。おそらく4を設定しても同じようにうまくいくでしょう。)

●Mask diameter (A): 200

(前回の[2D classification]のjobタイプと同じ値を使用してください。)

●Mask individual particles with zeros? Yes

(Yes: 0 / No: 乱数)

●Limit resolution E-step to (A): -1

(正の値を指定すると、この値を超える周波数はアラインメントに含まれません。これは過学習を防ぐのにも役立ちます。実際に必要にではありませんが、10~15Aに設定されている可能性があります。) 【Helix】タブは無視して下さい。 以前の[2D-classification]の場合と同様に【Compute】タブに記入してください。 ここでも、【Running】タブで、使用するNumber of MPI processors(MPIプロセッサの数)とthreads(スレッド数)を指定できます。[2D classification]のjobタイプで説明したように、3次元分類は2次元分類よりも多くのメモリを必要とするため、より多くのスレッドが使用されることがあります。しかし、この場合、画像はかなり小さく、RAM不足はそれほど大きな問題ではないかもしれません。おそらく、最初の3次元分類を表示するためにfirst_exhaustiveのようなエイリアスを使用でき、徹底的な角度検索を使用しているのではないでしょうか。 精密化された再構成を分析する際には、UCSFキメラなどのしきい値マップだけでなく、スライスでそれらを見ることも非常に便利です。スライスビューでは、未解決の異質性のより良い印象を受けるでしょう。これは、スライスに不鮮明な領域や縞状の領域として表示されます。スライスはまた、溶媒領域の平坦性の良好な印象を確認できます。【Display:】ボタンを使用して、最後の反復からの再構成のいずれかを選択して、RELIONのスライスビューを開きます。 UCSFキメラなどを使用し、表示されたマップを3Dで見ると、マップが精密化の間にわずかに回転する可能性があるので、それらをすべて最良のものに合わせることはしばしば良い考えです。キメラでは、【Tools】 - > 【Volume Data】 - > 【Fit in Map】ツールを使用します。お互いに並んでいる複数のマップを見るには、【Tools】 - > 【Structure Comparison】 - >【Title Structures】ツールと、【Viewing】ウィンドウの【independent】中心回転方法を組み合わせたものが好ましいです。 2次元分類の場合と同様に、【Subset selection】を使用して、1つ以上のクラスに割り当てられた粒子のサブセットを選択することができます。【I/O】タブで、_model.starファイルのサブセットを最後の反復から選択します。表示ウィンドウには、4つの精密化されたモデルの中央スライスが表示されます。最適なクラスを選択し、右クリックメニューを使用して対応する粒子を保存します。class3d_first_exhaustiveのようなエイリアスを使用してください。

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

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

出力ファイルは基本的に2次元分類の実行時と同じです。(実際に2次元,3次元精密時に同じ記法を利用しています)唯一の違いは、以前に出力された2次元クラス平均に関するシングルMRCスタックとは対照的に、各クラスのマップが別々のMRCマップとして保存されることです。例えば、run_it025_class00?.mrcというMRCマップです。 今まで通り、小さいクラスは大きなクラスより精密にローパスフィルターにかけられ、スペクトルのシグナル対ノイズ比(SNR)が_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)コラムを画面に出力します。ここでそのファイルを参照して、お好みの言語でプロットできます。もし、使用者のコンピューターにgnuplotがインストールされているのであれば、以下の通りに入力して下さい。

●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のシェルコマンドと併用して実行できます。

5 High-resolution 3D refinement(三次元精密化)

十分に均質なサブセットは一旦選択されると、このサブセットを自動的に高い解像度に精密化するために[3D auto-refine]を使用することができます。この手順は分解能を推定するために、gold-standard Fourier Shell Correlation(FSC)(二つの群に分け、互いに独立して再構成した場合に、どの分解能まで相関があるかにより判断)と言われる判断基準を用います。これにより、過学習を避けることができます[15]。角度の割当の正確さを推定する新しい手順([14])と組み合わせ、精密化が収束するときに自動的に決定されます。そのため、この手順は使用者の入力をほとんど必要としません。すなわち、客観性をのこしたまま、多くのデータセットのための優れたマップが生成がされていると述べられています。もう一つの長所は、一般的にこの手順は必要な実行回数が一回のみであり、最適化のための引数はほとんどありません。  しかしながら、前に高解像度の精密化を始めた時、スケール未満とともに選ばれた粒子の正しいセットを再度抽出して、それによりもしかすると高解像度になるかもしれない。これをすることで、GUIのParticle extraction のジョブタイプとI/Oタブを与える。

●micrograph STAR file : CtfFind / job003 / micrographs – ctf.star

(そのままでよい)

●Coordinate – file suffix : 

(空でよい)

●OR re – extract refined particles ? Yes
●Refined particles STAR file : Select /class3d – first_exhausitive /    particle.star

(今、選択された粒子の微粒にされたサブセットだけをつかうだろう)

●Re – center refined coodinates ? Yes

(3D classificationの動作以上から整列させたオフセットに従ってすべての粒子は再度中央に置かれるだろう)

●Recenter on – X , Y , Z (pix) 0.0.0

(箱の真ん中の分子を中心にキープさせたい)

●Manually set pixel size ?  No

(入力したマイクログラフstarファイルはCTFの情報に含まれていないことが必要である。) Extractタブはすべてキープする。

●Particle box size (pix) 360

(大きな箱をつかうだろう。それにより非局在化させたCTFシグナルはより良いモデルになるだろう。これはCTF精密化の後が大事である。)

●Rescale particles ? yes

(とても大きな画像が働くことを防ぐことで、360×0.885/256 = 1.244 Åのピクセルサイズを減少させ、採取しましょう。これは、おそらく十分に小さいデータ、2.5 Åの大きな達成可能な解像度に制限があるだろう。) この動作では、エイリアスbest3dclass_bigboxを使用する。 加えて、256ピクセルのボックスサイズに従って一番いいマップを入手したことのいたずらは必要である。

●relion_image_handler –i Class3D/job018/run_it025_class001.mrc –angpix 3.54 –rescale_angpix 1.244 –o Class3D/job018/run_it025_class001_box256.mrc –new_box256 

5.1 Running the auto-refine job (自動精錬動作の実行)

3D auto-refine のジョブタイプのI/Oタブ

●Input images STAR file : Extract/best3dclass_fullsize/particles.star
●Reference map : Class3D / job018 / run_it025_class001_box256.mrc
●Reference mask (optional)

(からのままでいい) Reference タブ

●Ref. map is on absolute gryscale ?  No

スケール現象の画像の違う標準化によると、正しく絶対的なグレースケールはマップの中に確立しなかった。このオプションの“No”は大事で、精密化の最初の相互作用のグレースケールは正しくなるだろう。

●Initial low-pass filter (A) 50

マップの高い頻度の成分に向かってバイアスを防いだことは低いパスのフィルターから自動精密化され始める。それと解像度から完全に依存された粒子の“gold standard”の維持は、1頭文字より高かった。

●Symmetry D2

(高解像度の粒子の照準は、強要された対称性の粒子の4倍効率的にするだろう) CTFのパラメータで、OpimisationとAuto-samplingタブは、3D classificationと同じでとどまる 【Sampling】タブでの配向性のサンプリング間隔は反復の最初の数回のみ使用されており、ここでのアルゴリズムは収束するまで、角度サンプリング間隔が自動的に細かくなっていきます。したがって、8面体または正20面体対称よりも小さい角度で、全ての精密化仮定でで、一般的に大域探索では、初期値の角度である7.5度のサンプルを使用し、局所探索では1.8度のサンプルから行います。より正確な対称の精密化を行う場合のみ、3.7度でのサンプリングを行い、局所探索では0.9度ごとにサンプリングを行います。 MPIのノードは1つのマスター(他のスレーブを管理するだけのもの)と2つのスレーブ(2つの半分のセットに作用するもの)のセットで分かれているので、奇数のMPI処理装置を使用するのが最も効率が良いです。ナイキスト周波数までのすべての周波数が考慮されているため、必要メモリは最終反復でかなり増加します。従って、使っているクラスターノードのコアと同じ数のスレッドで動かしたいデータセットのボックスより大きいサイズで作られたボックスが必要です。もしかするとafter_first_class3dのようなエイリアスが良いかもしれません。

5.2 Analysing the results (結果の分析)

 出力ファイルは3D classificationを実行したときのものと大部分が同じです。しかし、全てにおけるプログラムの反復では、2つのrun_it0??_half?_model.starと2つのrun_it0??_half?_class001.mrcファイルを書き出します。それぞれデータの半分が精密化されます。収束した場合にのみ、ひとつのrun_model.starとrun_class001.mrcファイルを書き出します(名前に_it0??がありません)。最終反復では、2つの独立した半分の復元データが一緒に結合されているので、一般的に最終反復で解像度がかなり改良されます。プログラムはすべてのデータでナイキスト周波数を使用しているので、この反復では更に多くのメモリとCPUが必要です。 角度サンプリングでの自動増加が自動精密化手順の様子が重要な側面であることに注意してください。[14]で説明されているシグナル対ノイズの考察が基礎となっており、角度の精度と併進運動の割り当てを評価します。プログラムは必要だと判断したものよりも細かい角度や並進運動サンプリング比は使用しません(結果がよくならないためです)。評価された精度と採用したサンプリング比は現在の解像度評価と一緒にすべて_optimiser.starと_model.starファイルに保存されますが、stdoutファイルからも抽出されるかもしれません。 例えば、以下のように試してみてください。

●grep Auto Refine3D/after_first_class3d/run.out

6 Mask creation & Postprocessing(マスク作成 & 後処理)

7 CTF and beamtilt refinement(CTFとビームチルトの精密化)

8 Bayesian polishing(ベイジアンポリッシング)

9 Locak-resolution estimation(ローカル解像度推定)

10 Checking the handedness(利き手のチェック)

11 まとめ

11.1 フローチャートの作成

どのようにして最終的な再構築をするか気になるでしょう。Finished jobリストから実行した最後の動作を選択し、Job actionsボタンからMake flowchartオプションを試してください。これを実行するためにはシステムにLATEXTikZパッケージが必要となります。最初の項は正確な作業名のないフローチャートの全体像です。これは、出版目的に役立つでしょう(おそらくお気に入りのvector-based designプログラムの編集後に)。フローチャートの全体像の後に、最初の詳細なフローチャートにどのようにして終了するかが示されています。10ステップ以上からなるフローチャートは複数の構成要素に分けられることに注意してください。作業中に複数枝分かれすることがあるでしょう。それ故に、最終作業のフローチャートに従って、それぞれの分岐についてフローチャートがあるでしょう。リンクをクリックすることでPDFファイルから合致する位置を得ることができます。

11.2 ディレクトリのクリーンアップ

ディスクの空間を確保するために、RELIONは作業ディレクトリをクリーンアップするオプションを持っています。これには2つのモードがあります。gentleクリーンは作業ディレクトリから中間ファイルのみを削除します。harshクリーンは作業からのインプットを必要とする新たな作業を開始するのに必要なファイルを削除します。例えば、harshクリーンはMotion Corr作業から平均化された、あるいはParticle extraction作業から少量のスタックを抽出された顕微鏡写真を削除します。一方、gentleクリーンは2D classification, 3D classificationあるいは3D auto-refine作業の中間反復からすべてのファイルを削除します。Job actionsボタンから個別に作業をクリーンアップすることができます。あるいは、GUIのトップメニューから下がった、Jobsからすべての作業をクリーンアップすることができます。私たちは計算前の結果に頭を悩ませていたプロジェクトディレクトリのtarballを作る前にそのメニューからGently clean all jobsオプションを使いました。長期間保存されていたデータを取る前にプロジェクトディレクトリをクリーンアップしたいでしょう。

11.3 質問や引用

以上です!このチュートリアルを楽しんで、そして役に立つことを願います。もしRELIONについて質問があれば、初めにRELION WikiFAQCCPEMメーリングリストを確認してください。それが助けにならなければ、CCPEMリストを利用して質問してください。お願いですから、決してSjorsに直接メールを送信しないでください。質問全てに返答できるわけではありません。もしRELIONが利用者の研究に有益であると思ったら私たちの論文を引用し、あなたの研究仲間たちに伝えてください。

11.4 参考文献

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., 579, 125-157.


12 付録 A:インストールの注意

12.1 MPIのインストール

MPI(message passing interface)がインストールされた計算機クラスター、もしくはNVIDIA GPU搭載のマルチコアデスクトップマシンが必要になることに注意してください。RELIONをコンパイルするには、mpi-develパッケージが必要です。おそらく存在する種類(MPICH, LAM-MPI, etc)またはバージョンはそれほど重要ではありません。まだシステム内にmpi-develをインストールしてなければ、openMPIをインストールすることをお勧めします。

12.2 CUDAのインストール

NVIDIAの比較的新しいGPU(compute capability 3.5+以上)を持っている場合、オートピッキング、分類、精密化作業を高速に実行できます。GPU-accelerationサポートを含むRELIONをコンパイルするには、CUDAをインストールする必要があります。このチュートリアルの準備にはCUDA-8.0を使用しました。NVIDIAのWebサイトからダウンロードしてください。

12.3 RELIONのインストール

RELIONはオープンソースのソフトウェアです。the RELION wikiから無料でダウンロードして、手順に従ってインストールしてください。もし、job submission system(Sun Grid EngineやPBS/TORQUE etc)に詳しくない場合は、インストール手順の説明にあるように、qsub.cshスクリプトの設定に関して、システム管理者にお尋ねください。分散メモリ並列化のためのMPIと、共用メモリの並列化のためのpthreadsの両方を使用する、いわゆるハイブリッド並列計算を実行したいときは注意してください。ジョブキューイングシステムはこれを可能とするためにいくつかの調整が必要な場合があります。再度、システム管理者にお尋ねください。

12.4 モーション補正ソフトウェアのインストール

RELION-3.0は全フレーム顕微鏡写真ムービーアライメントに使用される、UCSFプログラムMOTIONCOR2へのラッパーを提供します。Dabid Agardのページからプログラムをダウンロードし、インストールの手順に従ってください。また、RELIONの保有する、MOTIONCOR2の実行を使うかもしれません。なので、もし、UCSF実行をインストールするのに問題が発生しても心配しないでください。バージョン3.0において、Nico grigorieff’s groupからUNBLURへのラッパーはGUIから中止されていることに注意してください。

12.5 CTF推定ソフトウェアのインストール

CTF推定はRELIONに含まれていません。代わりに、RELIONはAlexis RohouやNiko Grigorieff’s CTFFIND4へのラッパーを提供します。Niko’s CTFFIND websiteからダウンロードし、手順に従ってインストールしてください。また、もし、パソコンにNVIDIA graphics card(GPU)が入っているならKai Zhang’s GCTFを使うこともできます。その際は、LMBに関するKaiのWebサイトからダウンロードしてください。

12.6 RESMAPのインストール

局所分解能推定はRELIONが所有するポストプロセッシングプログラムの中、あるいはAlp KucukelbirのRESMAPへのラッパーを通して実行される。AlpのRESMAP Webサイトからダウンロードし、手順に従ってインストールしてください。



13 付録B:RELIONの利用

13.1 GUIについて

13.1.1 pipeline approach

RELION-3.0では、一つのプログラムの出力を次のプログラムの入力として順次繋いでいくような情報の受け渡し(パイプライン)を円滑に実現できるようなGUIを設計しました。詳細は2016 Proceedings of the CCP-EM Spring Symposium[3]で公開されています。  RELION-3.0を使うにあたって、まずプロジェクト(すなわち構造決定したい分子)ごとにディレクトリを作成することを推奨します。ここではこのディレクトリの呼称をプロジェクトディレクトリとします。RELIONのGUIは「relion」とコマンドを打つことで起動させることができますが、この動作は常にプロジェクトディレクトリに移動してから行うことを念頭に置いてください。

このソフトのGUIでは、すべてのジョブや、あるジョブによる出力がどのように他のジョブの入力に使われたのかといった履歴を保存することができ、この機能によってパイプラインが形成されます。各種ジョブにはそれぞれ独自の出力ディレクトリが与えられます。ここではたとえば あるジョブの出力のためにClass2D/ というディレクトリができるとします。こういったジョブディレクトリの中でさらに新しいジョブが実行されると、その新しいジョブには一連の番号が与えられます。たとえばClass2Dのもとで作られたとあるジョブにはClass2D/job010という番号が振り分けられます。さらに、ジョブディレクトリのもとでは、Class2D/job010/run といったように出力名が定められます。このソフトでは、各ジョブに意味のある名前が付けられるような仕組みを備えるために、ファイルシステム上の個々のジョブディレクトリへの記号リンクとして実装された"エイリアス"システムを使用しています。 パイプラインに関するすべての情報はdefault_pipeline.starという名前のファイルに保存されていますが、基本的にはこのファイルを見る必要はありません。もしdefault_pipeline.starファイルが壊れてしまった場合は、最後に実行したジョブディレクトリで保存されたバックアップから復元することができます。

13.1.2 The upper half: jobtype-browser and parameter-panel(上半分:jobタイプブラウザとパラメータパネル)

このソフトのGUIは上半分と下半分に分かれています。上半分の左側にはジョブの種類が縦リスト上に並べられており、行いたいジョブを選ぶことができます。たとえば2D classificationを行いたいときは、上半分の左側のブラウザで選択すればいいわけです。上半分の右側には複数のタブがあるパネルがあり、それぞれのジョブタイプへのパラメータを入力できます。GUIの左上には機能のおおよその概要が分かる3つのメニューが書かれています。 【Schedule】ボタンでは、後でジョブを実行するときのスケジューリングを行うことができます。それに対して【Run now!】ボタンは今すぐに実行したいときに使います。【Schedule】ボタンは、繰り返し実行できるよう完全自動化された「パイプライン」を用意したいときに役立ちます。たとえば、データが収集されていくにつれてそれが瞬時に反映できるようなパイプラインを実現したいときに有効です。詳細は13.3を参照してください。 GUIの左側のjobtype-browserをクリックすると、新しい動作(【Run now!】ボタン付き)が右側のパラメータパネルにロードされます。

13.1.3 The lower half: job-lists and stdout/stderr windows

GUIの下半分には、まだ実行中のジョブ(【Running jobs】)、すでに完了しているジョブ(【Finished jobs】)、または後で実行するようにスケジュールされたジョブ(【Scheduled jobs】)のリストがあります。これらのリスト内のジョブをクリックすると、そのジョブのパラメータがパラメータパネルにロードされ、【Run now!】ボタンの色が変わり、【continue now!】に変わります。それをクリックすると、新しい出力jobディレクトリが作成されることはありませんが、パラメータパネルで指定されたパラメータに従ってjobが続行されます。【2D classification】、【3D classification】、【3D auto-refine】のジョブでは、_optimiser.starというファイルが必要になり、ファイル名には、run_ct23のような継続された繰り返しのファイル名が付きます。他のjobタイプでは、それらが以前に実行されるまで、その時点から継続することができます。【モーション補正】、【CTF推定】、【自動ピッキング】、【粒子抽出】は、これまでに行われていなかった顕微鏡写真でのみ実行されます。【Input to this job】(このjobへの入力)と【Output from this job】(このjobからの出力)は、リンクjobをまとめてリストし、プロジェクト履歴内を前後にブラウズするために使用できます。

GUIの下半分の下部には、選択された(実行済みまたは実行中の)jobの標準出力(stdout)と標準エラー出力(stderr)がそれぞれ黒と赤のテキストで表示されます。標準エラー出力は理想的には何もない状態でなければなりません。これらのテキスト表示は、jobリスト内のjobをクリックするたびに更新されます。stdoutまたはstderrのディスプレイをダブルクリックすると、スクロールがしやすくなるようテキスト全体を含むポップアップウィンドウが開きます。

13.1.4 The Display button(ディスプレイボタン)

runボタンとscheduleボタンの下にある【Display:】ボタンでは、各ジョブにおける最重要たる入力ファイルと出力ファイルを視覚的に表示することができます。GUIの下半分にあるjobリストのうちのひとつのjobを選択した後に【Display:】ボタンをクリックすると、選択されたjobの入力と出力がすべて(例えば、パーティクル、顕微鏡写真、座標、 PDFファイルなど)がポップアップメニューとして表示されます。中間体のファイルを表示するといったような一般的な機能はGUI左上の3つのメニューのうちFile>Displayを選択することで使うことができます。

2.1.5 The Job action button(jobアクションボタン)

【Job action】ボタンは、選択した(実行中、完了後、またはスケジュールされた)ジョブの設定を含む小さなメニューを開きます。ここで、note.txtというファイルにアクセスすることができます。このファイルは個々のジョブディレクトリに保存されており、ユーザーのコメントを格納したり、jobのエイリアスを変更したり、jobを終えたものをマークすることができたり、job履歴のフローチャートを作ったり(LATEXとTikZパッケージがシステムにインストールされている場合は、第11章を参照してください)、ディスク容量を節約するためにjobを削除またはクリーンアップ(13.1.6参照)したりすることができます。

2.1.6 Clean-up to save disk space(ディスク領域を節約するためのクリーンアップ)

ジョブを削除すると、ジョブディレクトリ全体がプロジェクトディレクトリからTrash/というディレクトリに移動します。RELIONの左上にある【File】メニューの【Trash】フォルダを空にすると、完全に削除され空き領域が増えます。これを行うまでは、左上の[job]メニューから対応する設定を使用して、ジョブを復元することができます。

ディスク容量を節約するため、ジョブを「clean」にすると、refine jobのすべての中間的な繰り返しに対して書き出されたファイルのような中間ファイルをごみ箱フォルダに移動します。これには2つのクリーニングオプションがあり、片方は【gentle clean】という方法です。この方法では、他のジョブへの入力として使用できるすべてのファイルをそのまま残します。もう一方は【harsh clean】という完全なクリーニング方法です。この方法では全てのファイルを消すことになるため、より多くの容量を確保できます。その中でも【Motion correction】、【Particle extraction】、【Movie refinement】、【Particle polishing】のジョブタイプから選択できる粒子スタック、または顕微鏡写真を含むディレクトリに関しては、とりわけ多くの容量を確保できます。

 また、RELIONの左上にある【job】メニューの対応するオプション(【Gently clean all jobs】あるいは、【Harshly clean all jobs】)を使用して、プロジェクト内のすべてのディレクトリをワンクリックで消去することもできます。 その際、特定のディレクトリを削除対象から除外したい場合には、NO_HARSH_CLEANというファイルをその中に置いてください。

 例えば、保護したい粒子データがjob098にある場合、次のコマンドを実行してください。

 $ touch Polish/job098/NO_HARSH_CLEAN

※ touchコマンドは、指定したファイルが存在しない場合には空のファイルを作成するプログラムです。存在している場合には、ファイルの修正時刻を変更します。