fMRI解析の基礎 (11):独立成分分析

最終更新日: 2020年7月19日

**ICA(独立成分分析)**は、PCAよりも強力で、現実的な潜在構造に基づいています。多くのパラメータを持っていて複雑なモデルを設計できる上に、正規性の仮定が無いという利点があります。

1. カクテルパーティー問題

カクテルパーティー問題と呼ばれる複数の音声の分離問題に、ICAを適用できます

異なる話者の音声波形は互いに独立であるため、重ね合わせによってできている音源から各音声波形を分離できるのです。各音声波形に対してそれぞれ重みがあるとすれば、その重みを推定してあげればよいのです。

Sound=i=1nwiVoicei\text{Sound} = \sum_{i=1}^n w_i \cdot \text{Voice}_i

2. fMRIデータへの適用

ICAには、Temporal ICASpatial ICA があります。fMRIデータに適用されるのは Spacial ICA であり、次元の高いボクセル空間での次元削減が行われます

  • Temporal ICA : 時系列方向の独立成分分析
    • 各ボクセルに重みがある。
  • Spatial ICA : 立体空間方向の独立成分分析
    • 各TRに重みがある。

Spatial ICA では、各成分 ckc_k を線形結合した信号をBOLD信号として考えます。各TRの信号 y(t)y^{(t)} について考えると、成分 ckc_k だけが共通となります。

[y1(t)yNv(t)]=m1(t)[c11c1Nv]++mNTR(t)[cNTR1cNTRNv] Y=MC\begin{array}{rcl} \begin{bmatrix} y_1^{(t)}\\ \vdots \\ y_{N_v}^{(t)}\end{bmatrix} &=&m_1^{(t)}\begin{bmatrix} c_{11}\\ \vdots \\ c_{1N_v}\end{bmatrix} + \ldots + m_{N_{TR}}^{(t)}\begin{bmatrix} c_{N_{TR}1}\\ \vdots \\ c_{N_{TR}N_v}\end{bmatrix} \\ \ \\ \therefore Y &=& MC \end{array}
YRNTR×Nv, MRNTR×NTR, CRNTR×NvY \in \R^{N_{TR} \times N_v}, \ M \in \R^{N_{TR} \times N_{TR}}, \ C \in \R^{N_{TR} \times N_v}

制約を与えないと解が一意に定まらないので、各成分は独立でそれぞれの分散が11としますMM が正則ならば逆行列を用いて CC を求められます。

C=M1Y=UYC=M^{-1}Y=UY

ICAを行うアルゴリズムはたくさんあり、CC に着目するものや、 MM の逆行列 UU に着目するものなどがあります。

統計的独立性の評価

系列 xx と 系列 yy が統計的に独立なときは、すべての x,yx,y において p(x,y)=p(x)p(y)p(x,y)=p(x)p(y) が成立します。しかし、これを確認する理想的な方法はありません

ピアソンの相関係数が代替として挙げられますが、1次と2次の統計量にしか依存していないため、高次の相関関係に弱くなります。

非正規分布

正規分布より「高いピーク」「高い尾」を持っている確率分布を考えます(leptokurtic distribution や super-Gaussian と呼ばれます)。例えば、下図のラプラス分布があります。

laplace.png

このような非正規分布はfMRIデータにうまく適合することが知られています。ほとんどのボクセルはタスクに対して応答が0である一方、一部のボクセルはかなり大きい応答を示すことをよく説明できるからです。

ICAの事前準備

  1. Mean Centering:時間方向で平均を00にし、ボクセル方向で平均を00にする。(順不同)
  2. Whitening:分散共分散行列を、分散11・共分散00にする。(D12VTD^{-\frac{1}{2}}V^TA1A^{-1}で変換)

3. ICAのアルゴリズム

ICAのアルゴリズムは多く提案されています。基本的には、成分 ckc_k どうしが独立になることを目指します

A. 相互情報量の最小化

エントロピー HH を用いて、相互情報量 II を規定します。

H(X)=E[logf(x)]=f(x)logf(x)dxI(X,Y)=H(X)+H(Y)H(X,Y)H(X)=\mathbb{E}[-\log f(x)]=- \int f(x) \log f(x) dx \\ I(X,Y)=H(X)+H(Y)-H(X,Y)

相互情報量は、「XX を観測したときに YY の情報がどのくらい増えるか?」を示しているため、I(X,Y)=0I(X,Y)=0 のときに XXYY は独立であるといえます

ICAに適用する方法の一つは、独立成分 CC の行同士の相互情報量を最小にするように UU を選択する方法です。これには、高次のモーメントの誤差が大きいという欠点があります。

B. 非正規性の最大化

  1. 尖度 (Kurtosis) の最大化
    • 分布のピークを最大化する。外れ値に弱い。
  2. ネゲントロピー (Negentropy) の最大化
    • 正規分布からどれくらい外れているかの指標であるネゲントロピー J(X)J(X) を最大化する。これが00だとXXは正規分布に従う。
J(X)=12[1+ln(2πσ2)]H(X)J(X)=\frac{1}{2}[1+\ln(2\pi\sigma^2)]-H(X)

ネゲントロピーは相互情報量より推定が難しいです。そのため、3次と4次のモーメントを多項式の期待値で近似した方法(Hyvarinrn (1999))が、FastICAとして広く使われています

C. 最尤法

いくつかの条件1を満たす場合に以下の尤度関数が得られます。

L(YU)=UNTRk=1NTRj=1Nvf(ckj)L(Y|U)=|U|^{N_{TR}}\prod_{k=1}^{N_{TR}}\prod_{j=1}^{N_{v}}f(c_{kj})

f(ckj)f(c_{kj}) はボクセル jj 、成分 kk の尤度であり、super-Gaussian を用います。

D. 情報量最大化原理 Infomax principle

ニューラルネットで使われる情報量の最大化を考えます。入力 yy に、 UU に相当する線形変換をし、活性化関数 gg 2 を通した出力 aa を得るとします。この出力同士の結合情報量 H(ai,aj)H(a_i,a_j) を最大化することで、出力をできるだけ均等に分布させます。これにより、成分の統計的独立性が最大化されます。

活性化関数には super-Gaussian を用いた方がよいとされます。その非線形性により、ただ単に UU の情報量を最大化する以上のことができると考えられます。

4. ICAの解釈

ICAを解釈する時には、次のような問題があります

  1. 成分の重要度が直接得られない。
  2. 成分ごとに要因を考える必要がある。

重要度の比較

最も単純なのは、ある成分を零ベクトルにしたときの変動(二乗誤差)を比べる方法です。

percentage of variance accounted by ci,ci=SSD(ci)iSSD(ci)\text{percentage of variance accounted by } c_i, \\ c_i = \frac{SSD(c_i)}{\sum_i SSD(c_i)}

要因の考察

自動化は困難なので3、明白な成分だけを考慮します。成分の重みと空間マップを利用して要因を決定します

タスクが要因のものは、タスク呈示との関連を考慮します。生理学的ノイズが要因のものは、位置(頭蓋骨近く=頭部動き由来)や周期性(呼吸・心拍)などを考慮します。

5. Noisy ICA

yV(i)=McV(i)+εV(i)εV(i)N(0,Σi)\begin{array}{l} y_{V(i)}=Mc_{V(i)}+\varepsilon_{V(i)} \\ \varepsilon_{V(i)} \sim N(0,\Sigma_i) \end{array}

ノイズ εV(i)\varepsilon_{V(i)} を考慮したモデルは上のようになります

このとき、 UU を求めるのは通常のICAより困難です。

M1yV(i)=cV(i)+M1εV(i)  UyV(i)=cV(i)+UεV(i)\begin{array}{rcl} M^{-1}y_{V(i)} &=& c_{V(i)}+M^{-1}\varepsilon_{V(i)} \\ \therefore \ \ Uy_{V(i)} &=& c_{V(i)}+U\varepsilon_{V(i)} \end{array}

また、ノイズの分散共分散行列 Σi\Sigma_i が未知であることも問題となります。FSLでは、Σi=σ2I\Sigma_i=\sigma^2I と仮定しているようです。

Noisy ICA の利点は、統計学的根拠が明確であることです。独立成分の確率分布から要因の議論ができます

6. 諸問題

  • Mが正方行列であることで計算が楽になるので、そんなに無いとしてもNTRN_{TR}の独立成分を全部推定するほうが良い。
  • ただ、FastICAでは独立成分が少ないほうが計算時間を減らせる。
  • ICAの前にPCAでノイズ除去するのは共線性を高めて良くないこともある。PCA→FastICAは良い。

7. Group ICA

一般的に使われるGroup ICA では、複数の被験者を時間軸で連結して1つの ICA をします。PCAでノイズ除去してから ICA をかけます。

タスクとの時系列相関から、被験者間に共通なタスク応答ネットワークを統計的有意性で議論できます。また、StatMapを作ることもできます。

8. ICA 対 GLM

ica_vs_glm.png


Reference

  • Ashby, F. G. (2019). Statistical analysis of fMRI data. MIT press. url
  • Hyvarinen, A. (1999). Fast and robust fixed-point algorithms for independent component analysis. IEEE transactions on Neural Networks, 10(3), 626-634. url

  1. Independent components, Identical Form, Independent sample of component values.
  2. ロジスティック関数が多用される。ある程度尖っている。
  3. 閾値による成分の有意性判断は困難。