PCA:
轉(zhuǎn)換公式
目標(biāo)是使
對(duì)角化就是使到特征之間的協(xié)方差為零
因?yàn)榭蓪?duì)
對(duì)X的協(xié)方差矩陣進(jìn)行特征值分解可得溺健,由于XXT為實(shí)對(duì)稱,因此E是正交陣枕面,EET=單位矩陣
E的每列是相應(yīng)的非線性相關(guān)且相互正交的特征向量愿卒,為正交陣。我們令
因?yàn)檫@樣P就成為了正交陣潮秘,有
SY即可對(duì)角化
則PCA是要對(duì)X的協(xié)方差矩陣進(jìn)行特征值分解琼开,P即是E的轉(zhuǎn)置枕荞。
SVD:SVD可用于任何形狀的矩陣,而特征值分解只能應(yīng)用于方陣渣刷。
中間那個(gè)矩陣是對(duì)角陣矗烛,對(duì)角元是X的奇異值,UV都是正交陣
用SVD去解決PCA的問題:
先對(duì)X進(jìn)行SVD分解瞭吃,那么有
個(gè)人認(rèn)為這里U和V調(diào)轉(zhuǎn)了
最終令
個(gè)人認(rèn)為這里U和V調(diào)轉(zhuǎn)了
則PCA是對(duì)X的協(xié)方差矩陣進(jìn)行特征值分解歪架,而SVD解決PCA問題則是對(duì)X進(jìn)行SVD分解。
參考:https://www.zhihu.com/question/38319536
1:pca和svd都能用于降維和蚪。
2:pca和svd的降維方法不一樣。pca是尋找一堆基使得他們投影后還具有良好的性質(zhì)怯疤,而svd是為了尋找原矩陣的低階(低秩)近似,進(jìn)而降維的旅薄。但是svd的第一個(gè)和第三個(gè)矩陣也可以用于實(shí)現(xiàn)pca類似的降維泣崩。
3:pca的解決方案有特征值分解和svd洛口。但一般用svd,因?yàn)閟vd的實(shí)現(xiàn)方法除了特征值分解外還有其他比特征值分解更快的方法第焰。
SVD的詳細(xì)定義可參考https://zhuanlan.zhihu.com/p/29846048?utm_source=wechat_session&utm_medium=social
U和V矩陣都是正交陣,中間的矩陣為對(duì)角矩陣,但是不是方陣烘跺。