独立成分分析

複数信号源から出た情報からいずれかの信号源の情報を抽出することを、Blind Source Separationという。

 

こちらの文献を処理する。

導入にはこちらの記事も良いだろう。

www.hellocybernetics.tech

短くすると、情報源が見えない状態で情報を分離すること。

 x(t) = A s(t)

 u(t) = W x(t)

 Wを更新していくことで、分離信号 uを推定する。

 

独立性とは何かを考える。

 s = A^{-1}W^{-1} u

 Wをうまく見つけると、 W = A^{-1}となる。

 sの確率分布を統計的に独立であると仮定する。

そして、 uの確率分布が積の形になっていれば、良い Wであると言える。

これは、確率分布同士を比較する尺度の、KL情報量を使って最小化していく。

計算式の変形と代入をすることで、 Wを変数とする損失関数ができる。

 

あとは、勾配法を適用すれば良い。

ここで、分離行列については、ユークリッド空間における勾配ではダメなので、リーマン空間に拡張して、自然勾配アルゴリズムを使う

 \Delta W = - \eta E[\phi (u) u^T - I ] W

 

ICAがやっていることは面白い。PCAよりも最適化の臭いがする。

 

音響処理との交わりに興味があれば、こちらの文献も良いだろう。