独立成分分析 ( ICA ) 与主成分分析 ( PCA )再解析
ICA認為觀測信號是若干個統計獨立的分量的線性組合,ICA要做的是一個解混過程。而PCA是一個信息提取的過程,依據貢獻度大小,將原始數據降維,現已成為ICA將數據標準化的預處理步驟。這里蘊含著獨立必不相關,因而先做一個PCA。PCA是協方差矩陣為對角陣,因而數據是不相關的。
1.感受一
PCA和ICA的用途完全不同。如果只在意數據的能量或方差、假設噪聲或不感興趣的信號都比較微弱,那么用PCA就能把主要信號留下來。在某種意義上,ICA更智能——它不在意信號的能量或方差,只看獨立性。所以給定的待分析的混合信號經任意的線性變換都不會影響ICA的輸出結果,但會嚴重影響PCA的結果。2.感受二
若多于一個原始獨立信號是正態的,那么ICA的結果不唯一;下面給個直覺。若數據在兩個正交方向方差相同(比如協方差是isotropic的),PCA結果不唯一。大部分算法都用兩步來實現ICA:第一步做白化預處理(whitening),讓輸出信號不相關而且同方差。第二步找一個旋轉(就是正交變換)讓輸出信號不只不相關(uncorrelated),進而在統計意義上獨立(statistically independent)。為簡單起見,考慮兩維的情況。
如果原始獨立信號都是正態的,第一步后輸出信號的聯合分布如下圖:
非高斯分布下情況就不同了。在下圖中,原始獨立的信號都是超高斯的,可以看到白化預處理后的輸出雖然不相關,但并不獨立:
而若想讓旋轉之后的輸出獨立,只能旋轉到如下位置(或者相差90度的倍數,對應于輸出信號的次序或者正負號的變化):
類似的,如果原始獨立信號是均勻分布的,第二步就需要從圖一旋轉到圖二:
這樣就直覺上了解了為什么ICA需要假設原始獨立信號的非高斯分布之后才有意義!!!
3.感受三
ICA只是讓輸出信號盡量獨立,實際應用中因種種因素,比如噪聲影響、非線性因素、太多源信號的影響等等,輸出往往不是完全獨立。這時很多情況下ICA的輸出還是包含了主要的獨立的成分,是有意義的。
總的來說,不相關是非常一種弱的獨立性(線性獨立性),一般必須配合別的性質使用才能得出唯一的結果:在PCA里就配合了能量或方差最大這個性質。而一般情況下獨立性比不相關強了很多,在一定條件下,強到了足以把數據的產生過程恢復出來的地步。
4.總結
更進一步,每當我們做回歸(regression),不管是線性回歸還是非線性回歸,噪聲和predictor都是不相關的。但很多情況下,它們卻不是獨立的!!!。這個性質最近十年內在因果關系分析中得到很重要的應用。
參考文獻:
[1] A. Hyva ?rinen, J. Karhunen, and E. Oja, Independent Component Analysis, Wiley-Interscience, New York, 2001
[2] J.-F. Cardoso, “Blind signal separation: statistical principles”, Pro- ceedings of the IEEE, vol. 90, n. 8, pp. 2009-2026, October 1998.
[3] A. Hyva ?rinen and E. Oja, ”A Fast Fixed-Point Algorithm for Inde- pendent Component Analysis”. Neural Computation, 9(7):1483-1492, 1997.
[4] A. Hyva ?rinen, “Fast and Robust Fixed-Point Algorithms for Inde- pendent Component Analysis”. IEEE Trans. on Neural Networks, 10(3):626-634, 1999.
總結
以上是生活随笔為你收集整理的独立成分分析 ( ICA ) 与主成分分析 ( PCA )再解析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 你今天volatile了吗?--慎重使用
- 下一篇: 构建自己的服务器有什么好处呢?