PCA(主元分析的四重境界:1.最大方差--投影,2.最小誤差--重建/降維,3.高斯先驗誤差--MLE,4.線性流形對齊)


參考文獻:https://www.zhihu.com/question/30094611

作者:史博
鏈接:https://www.zhihu.com/question/30094611/answer/275172932
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
 

千萬不要小看PCA, 很多人隱約知道求解最大特征值,其實並不理解PCA是對什么東西求解特征值和特征向量。 也不理解為什么是求解特征值和特征向量。 要理解到Hinton對PCA的認知,需要跨過4個境界,而上面僅僅是第1個境界的問題。

 

為什么要理解PCA?

 

其實深度學習在成為深度學習以前,主要是特征表達學習, 而特征表達學習追溯到始祖象階段,主要是無監督特征表達PCA和有監督特征表達LDA。 對了這里LDA不是主題模型的LDA,是統計鼻祖Fisher搞的linear discriminant analysis(參考“Lasso簡史”)。 而Hinton在這方面的造詣驚人, 這也是為什么他和學生一起能搞出牛牛的 t-Distributed Stochastic Neighbor Embedding (t-SNE) 。

至於t-SNE為啥牛, 這里給兩個對比圖片, 然后我們再回到PCA,以后有機會再擴展!

t-SNE vs PCA: 可以看到線性特征表達的局限性

t-SNE 優於 已有非線性特征表達 Isomap, LLE 和 Sammon mapping

依然還記得2004年左右Isomap橫空出世的驚奇, 再看t-SNE的誕生,真是膜拜! 也正是Hinton對PCA能理解到他的境界, 他才能發明t-SNE。

 

PCA理解第一層境界:最大方差投影

正如PCA的名字一樣, 你要找到主成分所在方向, 那么這個主成分所在方向是如何來的呢?

其實是希望你找到一個垂直的新的坐標系, 然后投影過去, 這里有兩個問題。 第一問題: 找這個坐標系的標准或者目標是什么? 第二個問題, 為什么要垂直的, 如果不是垂直的呢?

如果你能理解第一個問題, 那么你就知道為什么PCA主成分是特征值和特征向量了。 如果你能理解第二個問題, 那么你就知道PCA和ICA到底有什么區別了。

對於第一個問題: 其實是要求解方差最小或者最大。 按照這個目標, 你代入拉格朗日求最值, 你可以解出來, 主成分方向,剛好是S的特征向量和特征值! 是不是很神奇? 偉大的拉格朗日(參考 "一步一步走向錐規划 - QP" "一挑三 FJ vs KKT ")

現在回答了,希望你理解了, PCA是對什么東西求解特征值和特征向量。 也理解為什么是求解的結果就是特征值和特征向量吧!

這僅僅是PCA的本意! 我們也經常看到PCA用在圖像處理里面, 希望用最早的主成分重建圖像:

這是怎么做到的呢?

PCA理解第二層境界:最小重建誤差

什么是重建, 那么就是找個新的基坐標, 然后減少一維或者多維自由度。 然后重建整個數據。 好比你找到一個新的視角去看這個問題, 但是希望自由度小一維或者幾維。

那么目標就是要最小重建誤差,同樣我們可以根據最小重建誤差推導出類似的目標形式。

雖然在第二層境界里面, 也可以直觀的看成忽略了最小特征值對應的特征向量所在的維度。 但是你能體會到和第一層境界的差別么? 一個是找主成分, 一個是維度縮減。 所以在這個層次上,才是把PCA看成降維工具的最佳視角。

 

PCA理解第三層境界:高斯先驗誤差

在第二層的基礎上, 如果引入最小二乘法和帶高斯先驗的最大似然估計的等價性。(參考"一步一步走向錐規划 - LS" “最小二乘法的4種求解” ) 那么就到了理解的第三層境界了。

所以, 重最小重建誤差, 我們知道求解最小二乘法, 從最小二乘法, 我們可以得到高斯先驗誤差。

有了高斯先驗誤差的認識,我們對PCA的理解, 進入了概率分布的層次了。 而正是基於這個概率分布層次的理解, 才能走到Hinton的理解境界。

 

PCA理解第四層境界(Hinton境界):線性流形對齊

 

如果我們把高斯先驗的認識, 到到數據聯合分布, 但是如果把數據概率值看成是空間。 那么我們可以直接到達一個新的空間認知。

這就是“Deep Learning”書里面寫的, 烙餅空間(Pancake), 而在烙餅空間里面找一個線性流行,就是PCA要干的事情。 我們看到目標函數形式和最小重建誤差完全一致。 但是認知完全不在一個層次了。

小結

 

這里羅列理解PCA的4種境界,試圖通過解釋Hinton如何理解PCA的, 來強調PCA的重要程度。 尤其崇拜Hinton對簡單問題的高深認知。不僅僅是PCA,尤其是他對EM算法的再認識, 誕生了VBEM算法, 讓VB算法完全從物理界過渡到了機器學習界(參考 “變の貝葉斯”)。 有機會可以看我對EM算法的回答,理解EM算法的8種境界。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM