**ICA(独立成分分析)**は、PCAよりも強力で、現実的な潜在構造に基づいています 。多くのパラメータを持っていて複雑なモデルを設計できる上に、正規性の仮定が無いという利点があります。
1. カクテルパーティー問題
カクテルパーティー問題と呼ばれる複数の音声の分離問題に、ICAを適用できます 。
異なる話者の音声波形は互いに独立であるため、重ね合わせによってできている音源から各音声波形を分離できるのです。各音声波形に対してそれぞれ重みがあるとすれば、その重みを推定してあげればよいのです。
Sound = ∑ i = 1 n w i ⋅ Voice i \text{Sound} = \sum_{i=1}^n w_i \cdot \text{Voice}_i Sound = i = 1 ∑ n w i ⋅ Voice i
2. fMRIデータへの適用
ICAには、Temporal ICA と Spatial ICA があります。fMRIデータに適用されるのは Spacial ICA であり、次元の高いボクセル空間での次元削減が行われます 。
Temporal ICA : 時系列方向の独立成分分析
Spatial ICA : 立体空間方向の独立成分分析
Spatial ICA では、各成分 c k c_k c k を線形結合した信号をBOLD信号として考えます 。各TRの信号 y ( t ) y^{(t)} y ( t ) について考えると、成分 c k c_k c k だけが共通となります。
[ y 1 ( t ) ⋮ y N v ( t ) ] = m 1 ( t ) [ c 11 ⋮ c 1 N v ] + … + m N T R ( t ) [ c N T R 1 ⋮ c N T R N v ] ∴ Y = M C \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} ⎣ ⎡ y 1 ( t ) ⋮ y N v ( t ) ⎦ ⎤ ∴ Y = = m 1 ( t ) ⎣ ⎡ c 11 ⋮ c 1 N v ⎦ ⎤ + … + m N TR ( t ) ⎣ ⎡ c N TR 1 ⋮ c N TR N v ⎦ ⎤ MC
Y ∈ R N T R × N v , M ∈ R N T R × N T R , C ∈ R N T R × N v Y \in \R^{N_{TR} \times N_v}, \ M \in \R^{N_{TR} \times N_{TR}}, \ C \in \R^{N_{TR} \times N_v} Y ∈ R N TR × N v , M ∈ R N TR × N TR , C ∈ R N TR × N v
制約を与えないと解が一意に定まらないので、各成分は独立でそれぞれの分散が1 1 1 とします 。M M M が正則ならば逆行列を用いて C C C を求められます。
C = M − 1 Y = U Y C=M^{-1}Y=UY C = M − 1 Y = U Y
ICAを行うアルゴリズムはたくさんあり、C C C に着目するものや、 M M M の逆行列 U U U に着目するものなどがあります。
統計的独立性の評価
系列 x x x と 系列 y y y が統計的に独立なときは、すべての x , y x,y x , y において p ( x , y ) = p ( x ) p ( y ) p(x,y)=p(x)p(y) p ( x , y ) = p ( x ) p ( y ) が成立します。しかし、これを確認する理想的な方法はありません
。
ピアソンの相関係数が代替として挙げられますが、1次と2次の統計量にしか依存していないため、高次の相関関係に弱くなります。
非正規分布
正規分布より「高いピーク」「高い尾」を持っている確率分布を考えます(leptokurtic distribution や super-Gaussian と呼ばれます)。例えば、下図のラプラス分布 があります。
このような非正規分布はfMRIデータにうまく適合することが知られています 。ほとんどのボクセルはタスクに対して応答が0である一方、一部のボクセルはかなり大きい応答を示すことをよく説明できるからです。
ICAの事前準備
Mean Centering:時間方向で平均を0 0 0 にし、ボクセル方向で平均を0 0 0 にする。(順不同)
Whitening:分散共分散行列を、分散1 1 1 ・共分散0 0 0 にする。(D − 1 2 V T D^{-\frac{1}{2}}V^T D − 2 1 V T やA − 1 A^{-1} A − 1 で変換)
3. ICAのアルゴリズム
ICAのアルゴリズムは多く提案されています。基本的には、成分 c k c_k c k どうしが独立になることを目指します 。
A. 相互情報量の最小化
エントロピー H H H を用いて、相互情報量 I I I を規定します。
H ( X ) = E [ − log f ( x ) ] = − ∫ f ( x ) log f ( x ) d x I ( 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) H ( X ) = E [ − log f ( x )] = − ∫ f ( x ) log f ( x ) d x I ( X , Y ) = H ( X ) + H ( Y ) − H ( X , Y )
相互情報量は、「X X X を観測したときに Y Y Y の情報がどのくらい増えるか?」を示しているため、I ( X , Y ) = 0 I(X,Y)=0 I ( X , Y ) = 0 のときに X X X と Y Y Y は独立であるといえます 。
ICAに適用する方法の一つは、独立成分 C C C の行同士の相互情報量を最小にするように U U U を選択する方法です。これには、高次のモーメントの誤差が大きいという欠点があります。
B. 非正規性の最大化
尖度 (Kurtosis) の最大化
ネゲントロピー (Negentropy) の最大化
正規分布からどれくらい外れているかの指標であるネゲントロピー J ( X ) J(X) J ( X ) を最大化する。これが0 0 0 だとX X X は正規分布に従う。
J ( X ) = 1 2 [ 1 + ln ( 2 π σ 2 ) ] − H ( X ) J(X)=\frac{1}{2}[1+\ln(2\pi\sigma^2)]-H(X) J ( X ) = 2 1 [ 1 + ln ( 2 π σ 2 )] − H ( X )
ネゲントロピーは相互情報量より推定が難しいです。そのため、3次と4次のモーメントを多項式の期待値で近似した方法(Hyvarinrn (1999) )が、FastICA として広く使われています 。
C. 最尤法
いくつかの条件 を満たす場合に以下の尤度関数が得られます。
L ( Y ∣ U ) = ∣ U ∣ N T R ∏ k = 1 N T R ∏ j = 1 N v f ( c k j ) L(Y|U)=|U|^{N_{TR}}\prod_{k=1}^{N_{TR}}\prod_{j=1}^{N_{v}}f(c_{kj}) L ( Y ∣ U ) = ∣ U ∣ N TR k = 1 ∏ N TR j = 1 ∏ N v f ( c kj )
f ( c k j ) f(c_{kj}) f ( c kj ) はボクセル j j j 、成分 k k k の尤度であり、super-Gaussian を用います。
D. 情報量最大化原理 Infomax principle
ニューラルネットで使われる情報量の最大化を考えます。入力 y y y に、 U U U に相当する線形変換をし、活性化関数 g g g を通した出力 a a a を得るとします。この出力同士の結合情報量 H ( a i , a j ) H(a_i,a_j) H ( a i , a j ) を最大化することで、出力をできるだけ均等に分布させます 。これにより、成分の統計的独立性が最大化されます。
活性化関数には super-Gaussian を用いた方がよいとされます。その非線形性により、ただ単に U U U の情報量を最大化する以上のことができると考えられます。
4. ICAの解釈
ICAを解釈する時には、次のような問題があります 。
成分の重要度が直接得られない。
成分ごとに要因を考える必要がある。
重要度の比較
最も単純なのは、ある成分を零ベクトルにしたときの変動(二乗誤差)を比べる方法 です。
percentage of variance accounted by c i , c i = S S D ( c i ) ∑ i S S D ( c i ) \text{percentage of variance accounted by } c_i, \\
c_i = \frac{SSD(c_i)}{\sum_i SSD(c_i)} percentage of variance accounted by c i , c i = ∑ i SS D ( c i ) SS D ( c i )
要因の考察
自動化は困難なので 、明白な成分だけを考慮します。成分の重みと空間マップを利用して要因を決定します 。
タスクが要因のものは、タスク呈示との関連を考慮します。生理学的ノイズが要因のものは、位置(頭蓋骨近く=頭部動き由来)や周期性(呼吸・心拍)などを考慮します。
5. Noisy ICA
y V ( i ) = M c V ( 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} y V ( i ) = M c V ( i ) + ε V ( i ) ε V ( i ) ∼ N ( 0 , Σ i )
ノイズ ε V ( i ) \varepsilon_{V(i)} ε V ( i ) を考慮したモデルは上のようになります 。
このとき、 U U U を求めるのは通常のICAより困難です。
M − 1 y V ( i ) = c V ( i ) + M − 1 ε V ( i ) ∴ U y V ( i ) = c V ( 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} M − 1 y V ( i ) ∴ U y V ( i ) = = c V ( i ) + M − 1 ε V ( i ) c V ( i ) + U ε V ( i )
また、ノイズの分散共分散行列 Σ i \Sigma_i Σ i が未知であることも問題となります。FSLでは、Σ i = σ 2 I \Sigma_i=\sigma^2I Σ i = σ 2 I と仮定しているようです。
Noisy ICA の利点は、統計学的根拠が明確であることです。独立成分の確率分布から要因の議論ができます 。
6. 諸問題
Mが正方行列であることで計算が楽になるので、そんなに無いとしてもN T R N_{TR} N TR の独立成分を全部推定するほうが良い。
ただ、FastICAでは独立成分が少ないほうが計算時間を減らせる。
ICAの前にPCAでノイズ除去するのは共線性を高めて良くないこともある。PCA→FastICAは良い。
7. Group ICA
一般的に使われるGroup ICA では、複数の被験者を時間軸で連結して1つの ICA をします 。PCAでノイズ除去してから ICA をかけます。
タスクとの時系列相関から、被験者間に共通なタスク応答ネットワークを統計的有意性で議論できます。また、StatMapを作ることもできます。
8. ICA 対 GLM
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