PCA和SVD區別和聯繫

參考:http://blog.csdn.net/wangjian1204/article/details/50642732

http://www.cnblogs.com/lzllovesyl/p/5243370.html

PCA

PCA

圖1.尋找主成分方向

對於正交屬性空間的樣本點,如何用一個超平面(直線的高維推廣)對所有樣本進行恰當表達?

  1. 最近重構性:一樣本點到這個超平面的距離都足夠近
  2. 最大可分性:樣本點在這個超平面上的投影儘可能分開




SVD

如果對矩陣M做奇異值矩陣分解(SVD分解): 

M=USV


區別與聯繫

SVD另一個方向上的主成分

    SVD可以獲取另一個方向上的主成分,而PCA只能獲得單個方向上的主成分: 

1nXX=1nUSVVSU=US2nU

SVD計算僞逆

    求解矩陣的最小二乘問題需要求僞逆,使用SVD可以很容易得到矩陣X的僞逆: 

X+=VS1U

LSI

    隱語義索引(Latent semantic indexing,簡稱LSI)通常建立在SVD的基礎上,通過低秩逼近達到降維的目的。 

Xk=minArank(A)=kXA

注意到PCA也能達到降秩的目的,但是PCA需要進行零均值化,且丟失了矩陣的稀疏性。

數值穩定性

    通過SVD可以得到PCA相同的結果,但是SVD通常比直接使用PCA更穩定。因爲PCA需要計算XX的值,對於某些矩陣,求協方差時很可能會丟失一些精度。例如Lauchli矩陣: 

X=1e0010e0100e

在Lauchli矩陣裏,e是很小的數,e2無法用計算機精確表示,從而計算XX會丟失e這部分信息。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章