SPM8

SPMというのはfMRIのデータ解析に使われるMatlab用のtoolboxで、ロンドン大のFILというinstituteが作っている。fMRIのデータ解析ソフトでは、おそらく世界で一番使われているtoolbox。最新versionはSPM8(2008年)という奴で、その前がSPM5(2005年)、でさらに前がSPM2(2002年)となっている。


にもかかわらず、SPM2をつい最近までずっと使っていた。というのも、SPM5のversion upでは主にMEG/EEG関係の機能が追加され、MRIの解析関係ではDCM(dynamic causal modeling)の関係以外はほぼ変更がなされていなかった。通常のSPM解析での変更点というとresidual estimationの時に使われているspm_est_smooth.mの関数の中でsinc interporlation(SPM2)を使うか、linear interporlation(SPM5)を使っているか位の違いしかなかった。


という訳で、これまではSPM2をそのまま使っていたのだが、いい加減version upせなあかんのと、SPM8ではfMRI部分でもかなり変化があるので、今やっている実験のデータ集めが終わるまでに、SPM8に移行せねばということで重い腰をようやく上げることにした。


SPM8のrelease noteによると主な変更点は

  • slice timing correctionにおけるTR制限(推奨2秒以下)の撤廃。
  • varianceが一様でない時(VBM等)のsmoothness estimationの変更
  • SPM推定のパラレル化 (spm_spm.m)
  • DCMの機能の充実
  • Baysian analysisの追加

あとは以前は"ROI"ボタンとなっていたのが、Eigenvariateとなっていて、これなんかはROIボタンが単にfMRI time seriesの抜き出しだと誤解する(自分も使い始めた当時はそう思っていた)のを防ぐには良いかなーと思った。


SPM5からのinterfaceに慣れなくてそっちの方が面倒かも。結局はbatchで解析するからあまり関係ないのだけど。。batch fileの移行作業の方は、新しく追加されたbatch systemを調べるのが面倒で、結局以前作ったbatchをベースに現在SPM2からSPM8へ移植作業中。


Preprocessの部分はほぼ変更点無しで1時間ほどで移植完了。
First levelのmodel specificationの方は途中で参照する関数の修正を思い出すのに手間取ったが、これも半日で完了。とここまではすんなり移行作業が進んだのだが、、


Second level用のmodel specificationは結構変わっている感じで、これは関数をちゃんと読まないといけないようなので、来週の宿題。


この移行作業中にspmのsettingで結構おざなりにされている設定で思い出した事があるので、これはまた別記事に。。