Fukushima's dynamics estimation
目次
修正履歴 _
2017/08/29
- DMRI解析方法をVBMEG2.0内のドキュメントを参照するように修正した。
2015/10/14
- 留意事項を追加(ダイナミクス推定で使用される信頼度パラメータは、初期値推定のものが継承される)
- ダイナミクス推定パラメータ(dbayes_parm.meg_file)の説明を追加(機能はVBMEG-Rev1632で追加)
2015/09/14 『初期値の推定を行う』の必要条件に、bayes_parm.area_key='dmri_area', reduce=1を追加。
ダイナミクス推定 _
概要 _
従来のVBMEGは、fMRIデータを事前知識として用い、MEG/EEGの逆問題を階層ベイズ推定により解くものであった。ダイナミクス推定は、従来法に加え、拡散強調MRI画像から抽出した解剖学的結合情報を追加し、より高い精度で逆問題を解く新しいアプローチである。解剖構造モデルを作成する作業がStep1.DMRIデータ解析に相当し、その情報を利用して推定を行う作業がStep2.ダイナミクス推定である。
Step1.Diffusion MRIデータ解析 _
解析データとして、
- T1-頭部MRI画像(DICOM形式)
- 拡散強調MRI画像(DICOM形式)
を用意する。
/home/cbi-data5/DTI(解析データディレクトリ)
|
|-- 3D(T1-頭部MRI画像)
| |-- 1.3.12.2.1107.5.2.32.35283.2013103111331835928852729.dcm
| |-- …
| `-- 1.3.12.2.1107.5.2.32.35283.2013103111332097695253486.dcm
|-- DTI(拡散強調MRI画像)
|-- 1.3.12.2.1107.5.2.32.35283.2013103111343145978153889.dcm
|-- …
`-- 1.3.12.2.1107.5.2.32.35283.2013103111544383509802522.dcm
このデータをDiffusion MRI data processingの手順で解析する。
解析結果データファイル _
解析で得られたファイルの中から、以下のファイルをVBMEGのダイナミクス推定プログラムの入力として使用する。
ファイル種別 | 出力ファイル |
皮質モデルファイル(.brain.mat) | 解析結果出力ディレクトリ/Subject/Subject.brain.mat |
皮質領域ファイル(.area.mat) | 解析結果出力ディレクトリ/Subject/Subject.area.mat |
皮質活動ファイル(.act.mat) | 解析結果出力ディレクトリ/Subject/Subject.act.mat |
Diffusion MRIファイル(.dmri.mat) | 解析結果出力ディレクトリ/connectivity/connectivity.dmri.mat |
Step2.ダイナミクス推定 _
通常のVBMEGの階層ベイズ推定で初期値を算出し、その初期値を元にダイナミクス推定を行う。
準備 _
- ダイナミクス推定に必要なファイル
- VBMEGの通常の階層ベイズ推定に必要なファイル
- Diffusion MRI file(.dmri.mat)
- 作業概要
- 拡散強調MRI画像の解析を行い、Diffusion MRI file(.dmri.mat)とVBMEG皮質モデルファイル群(.brain.mat, .area.mat, .act.mat)を作成する
- VBMEGの標準解析ステップ(VBMEG users manual)に従い、Leadfield行列の計算まで進める。ただし、VBMEG皮質モデルはDiffusion MRIファイルの解析時に作成されるものを用いる(皮質モデルのインポートステップは省略する)。
ダイナミクス推定手順 _
以下の推定は、MATLAB上で行う。
初期値の推定を行う _
初期値推定の方法に関してはまだ研究の余地がある。ここでは福嶋さんオススメの初期値の算出方法を紹介する。
- 皮質領域ファイルに、DiffusionMRIデータ解析で得られた領域を保存する
- area_file:皮質領域ファイル(.area.mat)
- dmri_file:DiffusionMRIデータ解析結果ファイル(.dmri.mat)
- dmri_area:キー名。任意の文字列
vb_areafile_add_dmri_area(area_file, dmri_file, 'dmri_area');
- VBMEGの通常のベイズ推定のパラメータを作る
パラメータの作成はGUIを使用すると比較的簡単に行える。ファイルを指定後、画面下のSaveボタンよりファイル保存を行うと、bayes_parmを含むファイルを保存することが出来る。 詳しくは(current_variance_estimation)を参照。
[必要条件]
bayes_parm.Tperiod = bayes_parm.twin_meg(2) - bayes_parm.twin_meg(1) + 1
bayes_parm.Tnext = bayes_parm.Tperiod
(以上の設定は,時間窓は一つのみ,という意味)
bayes_parm.area_key = 'dmri_area';
bayes_parm.reduce = 1;
bayes_parm.twin_global = bayes_parm.twin_noise
bayes_parm.basisfile_global = bayes_parm.basisfile
bayes_parm.area_key_global = bayes_parm.area_key
bayes_parm.Rfilt_global = bayes_parm.Rfilt
bayes_parm.reduce_global = bayes_parm.reduce
bayes_parm.patch_norm = OFF
bayes_parm.trial_average = ON
bayes_parm.temporal_filter = OFF
bayes_parm.expand_spatial_filter = ON
bayes_parm.variance_orientation = OFF
bayes_parm.soft_mode = 0
bayes_parm.forward_model = 'focal'
[推奨条件]
bayes_parm.noise_estimation_model = 1
bayes_parm.noise_model = 3
bayes_parm.twin_noise = [1, (bayes_parm.twin_meg(1) - 1)]
また,vbmeg_ard_estimate25.mの直前で満たすべきvb_parmの条件は
以下の通りです(一部はbayes_parmの設定から自動的に定まります).
[必要条件]
vb_parm.Norient = 1
vb_parm.Norient_var = 1
vb_parm.Nsession = 1
vb_parm.Norient_all = 1
vb_parm.Ntrials = 1
vb_parm.Nwindow = 1
vb_parm.soft_mode = 0
[推奨条件]
vb_parm.update_sx = 1
- ベイズ推定を行い初期値を算出する(出力ファイル:VBMEG階層ベイズファイル(.bayes.mat))
vb_job_vb(proj_root, bayes_parm);
ダイナミクス推定を行う _
$VBMEG/template/vb_set_dbayes_parm_test.mの内容を参考にファイル名をセットする。
パラメータ | 設定値 | 備考 |
dbayes_parm.bayes_file | ベイズ推定ファイル名(.bayes.mat) | proj_rootからの相対パス。初期値を含む階層ベイズ推定ファイル(.bayes.mat) |
dbayes_parm.dmri_file | DiffusionMRI解析結果ファイル名(.dmri.mat) | 絶対パス |
dbayes_parm.dbayes_file | ダイナミクス推定結果出力ファイル名(.dbayes.mat) | proj_rootからの相対パス |
dbayes_parm.meg_file | (Optional)ダイナミクス推定に使用するMEGファイル。指定しない場合は、初期値推定に使用したMEGファイルについてダイナミクス推定が行われる。(VBMEG Rev:1632で追加) | proj_rootからの相対パス |
Hyperparameters for the variance parameter of the MAR coefficients
パラメータ | デフォルト設定値 | 備考 |
dbayes_parm.ieta0 | 1e-2 | |
dbayes_parm.g0 | 1e2 | |
dbayes_parm.Ntrain | 500 |
準備が出来たら、以下のようにしてダイナミクス推定を実行する
vb_job_vb_dynamics(proj_root, dbayes_parm);
留意事項 _
- 信頼度パラメータ(a0,a0_act,Ta0,Ta0_act)は、初期値推定で使用したパラメータが、ダイナミクス推定でも使用される。
Step3.電流時系列を取り出す _
ダイナミクス推定で得られた電流時系列を取り出す _
$VBMEG/template/vb_set_current_parm_dynamics_test.mの内容を参考にファイル名をセットする。
パラメータ | 設定値 | 備考 |
current_parm.dbayes_file | ダイナミクス推定結果ファイル名(.dbayes.mat) | proj_rootからの相対パス |
current_parm.curr_file | 推定電流時系列ファイル名(.curr.mat) | proj_rootからの相対パス |
current_parm.trial_average | ON |
準備が出来たら、以下のようにして、電流時系列取り出し関数を実行する
vb_job_current_dynamics(proj_root, current_parm);
※得られた電流時系列を確認するには、job_plot_current_map.mを使う。
ダイナミクス推定関数が存在しない場合は _
- ダイナミクス推定関数は、VBMEGのSubversionリポジトリに2015/9/4にアップロードされました(Revision.1630)。関数が存在しない場合は、最新版をここから取得して下さい。