ICAは最初にPCAを実行する必要がありますか?


9

私は、ICAを適用する前に(fastICAパッケージを使用して)PCAを適用するというアプリケーションベースの論文をレビューしました。私の質問は、ICA(fastICA)ではPCAを最初に実行する必要があるのですか?

この論文では、

... PCAを事前に適用すると、(1)ホワイトニングの前に小さな後続の固有値を破棄し、(2)ペアごとの依存関係を最小限に抑えることで計算の複雑さを軽減することで、ICAのパフォーマンスが向上することも主張されています。PCAは入力データを非相関化します。残りの高次依存関係はICAによって分離されます。

また、他の論文はICAの前にPCAを適用しています、例えばこれ

ICAの前にPCAを実行する他の長所と短所はありますか?理論を参考にしてください。


この発表された研究は、PCAベースの次元削減によるICAへの悪影響を発見しています。
ボノボ2018年

回答:


9

fastICAアプローチでは、ホワイトニング前の手順が必要です。データはまずPCAを使用して変換されます。これにより、対角共分散行列が得られ、次に各次元が正規化されて、共分散行列が単位行列(ホワイトニング)と等しくなります。

恒等共分散行列をもたらすデータの無限変換があり、ソースがガウスの場合、そこで停止します(ガウスの多変量分布の場合、平均と共分散は十分な統計です)、非ガウスのソースが存在する場合、いくつかを最小化できますホワイトニングされたデータへの依存度の測定。したがって、独立性を最大化するホワイトニングされたデータのローテーションを探します。FastICAは、情報理論上の測度と固定小数点反復方式を使用してこれを実現します。

問題をより深く理解するために、ヒバリネンの研究をお勧めします。

  • A.ハイバリネン。独立成分分析のための高速で堅牢な固定小数点アルゴリズム。IEEE Transactions on Neural Networks 10(3):626-634、1999。
  • A.Hyvärinen、J。Karhunen、E。Oja、独立成分分析、Wiley&Sons。2001年

PCAを実行することと次元削減を実行することはまったく同じではないことに注意してください。信号よりも多くの観測値(信号ごと)がある場合、説明された分散の100%を保持するPCAを実行してから、ホワイトニングと固定小数点の反復を続行できます。独立成分の推定値を取得します。次元削減を実行する必要があるかどうかは、コンテキストに大きく依存し、モデリングの仮定とデータ分布に基づいています。


2
これは良い答えですが、私が知っている限り、最後のポイントをより強くすることができます。ほとんどの場合、PCAステップを使用して次元を減らすことをお勧めします(データを白くすることに加えて)。実際、次元が高すぎる場合、ICAは簡単にオーバーフィットして無意味なコンポーネントを生成する可能性があります。PCAによる前処理により、この問題が解決されることがよくあります(OPの引用で述べられているように)。
amoeba 14

4

PCAをデータに適用すると、元の座標軸を回転させるという唯一の効果があります。これは線形変換であり、たとえばフーリエ変換とまったく同じです。したがって、それ自体はデータに対して実際には何もできません。

ただし、新しいPCAスペースで表されるデータには、いくつかの興味深い特性があります。PCAを使用した座標回転に続いて、新しい軸によって説明される合計分散のパーセンテージなどの確立された基準に基づいて、一部のディメンションを破棄できます。信号によっては、この方法でかなりの量の次元削減を達成できる可能性があり、これにより次のICAのパフォーマンスが確実に向上します。PCAコンポーネントを破棄せずにICAを実行しても、次のICAの結果には影響しません。

さらに、座標軸の直交性により、PCA空間のデータを簡単に白くすることもできます。ホワイトニングには、すべての次元で分散を均一化する効果があります。これは、ICAが適切に機能するために必要であると私は主張します。さもなければ、最大の分散を持ついくつかのPCAコンポーネントのみがICAの結果を支配します。

ICAの前のPCAベースの前処理には、欠点はありません。

ジャンカルロはすでにICAの最高のリファレンスを引用しています...


あなたの答え全体は、PCAの適用が単に座標軸を回転させるという前提に基づいていますが、実際、「PCAの適用」とは、通常、次元の削減を意味します(つまり、PCのサブセットのみを保持し、残りを削除します)。
amoeba 14

PCAは、破棄する場合、破棄するディメンションを見つけるのに役立ちます。これが私の答えをどのように微調整するかわかりません。
ボノボ2018年

一方、この研究は発表されており、PCAベースの次元削減がその後のICAの品質に悪影響を与えると主張しています。
ボノボ2018年

リンクをありがとう。私は要約を読み、正直に言うと懐疑的です。しかし、私はICAの専門家ではないので、この論文を詳細に研究するつもりはありません。
アメーバ2018年

2

fastICAアルゴリズムの導出では、1つのステップのホワイトニングのみが必要です。まず、ステップの方向(勾配降下法など)を選択します。これには、ホワイトニングされたデータは必要ありません。次に、ヘッセ行列の逆数に依存するステップサイズを選択する必要があります。データが白色化されている場合、このヘッセ行列は対角線であり、可逆です。

それは必要ですか?ステップサイズを定数に固定しただけなら(したがって、ホワイトニングは必要ありません)、標準の勾配降下になります。固定の小さいステップサイズの勾配降下法は通常収束しますが、おそらく元の方法よりもはるかに遅くなります。一方、大きなデータマトリックスがある場合、ホワイトニングは非常に高価になる可能性があります。ホワイトニングせずに収束が遅くなっても、うまくいくかもしれません。

どんな文献にもこれについての言及がないのには驚きました。ある論文では、問題について説明しています 。JiminYe とTing Huangによるプレホワイトニングなしのブラインドソース分離用の新しいFast ICAアルゴリズム

彼らはホワイトニングにいくらか安いオプションを提案しています。ホワイトニングせずにICAを実行しただけの明白な比較をベースラインとして含めていたら良かったのですが、そうではありませんでした。もう1つのデータポイントとして、おもちゃの問題を白くすることなくfastICAを実行してみましたが、問題なく動作しました。

更新:ホワイトニングに関する別の優れたリファレンスがここにあります:堅牢な独立したコンポーネント分析、ZarosoおよびComon。ホワイトニングを必要としないアルゴリズムを提供します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.