降維(一) 說說主成分分析 PCA 的源頭

2021-06-22 11:23:49 字數 2113 閱讀 2584

降維系列:

---------------------   

主成分分析(pca) 在

很多教程

中做了介紹,但是為何通過協方差矩陣的特徵值分解能夠得到資料的主成分?協方差矩陣和特徵值為何如此神奇,我卻一直沒弄清。今天終於把整個過程整理出來,方便自己學習,也和大家交流。

還是以二維特徵為例,如下圖。特徵之間可能不存在完全的線性關係,可能只是強的正相關。如果把x-y座標分解成u1-u2座標,而u1軸線上反應了特徵的主要變化(intrinsic),而u2的特徵變化較小,其實可以完全理解為一些雜訊的擾動而不去考慮它。pca的任務就是找到u1和u2。

將每一維特徵的均值中心化,方差歸一化。

其中x的上標i表示資料集中的第i個樣本,m表示資料集中的樣本總數。(因為x已經中心化了,所以xu的均值也為0,因此xu的平方只和就是方差。)

括號中的一項十分熟悉,就是協方差矩陣σ!終於知道協方差矩陣是怎麼來的了。再看一看上面的式子,協方差矩陣與投影的方向無關,之於資料集中的樣本有關,因此協方差矩陣完全決定了資料的分布及變化情況(請和自相關矩陣區別)。

目標函式如下:

用拉格朗日乘數法求解上面的最大化問題,很容易得到:

看見沒?!u就是σ的特徵向量,λ就是特徵值。我們再把(3)代入(2),目標函式就變成了

可見,可以通過協方差矩陣的跡衡量方差的大小。最大的特徵值λ(以及對應的特徵向量u)決定了資料變化最大的方向。u就是這個單位方向。因此pca的求解過程就是對協方差矩陣進行特徵值分解,並找到最大的幾個特徵值的過程。

再後面的過程就是由最大的k個特徵值對應的特徵向量組成一組新的基(basis),讓原特徵對這個新的基投影得到降維後的新特徵。這個過程很多教程都介紹的很清楚了,我就不描述了。

不過我還是想補充一下矩陣及其特徵值的意義。矩陣應理解為一種空間變換(從乙個空間到另乙個空間的變換)。矩陣m是m×n維的,如果m=n則變換後空間維數不變,如果nm維空間的方式),而對應的特徵值,就是投影在基座標下相應維的響應程度。如果特徵值為0,代表在這一維下沒有相應,不管是多少,乘過來都是0。特徵值如果很接近0,那麼任何數在這一維下投影後都會變小很多。所以從降維的角度考慮,可以將這一維忽略(也就是pca中保留前k個特徵值的目的)。奇異值分解也是同樣的道理。

pca其實是最簡單的降維方法之一了,很明顯的劣勢是它僅去除資料之間的線性相關性。對線性的改善往往通過kernel技術拓展到非線性的應用上。另外,pca的這種降維不一定有助於分類,用於分類的降維方法之一就是lda。從另一方面說,pca是一種線性投影,保留了資料與資料之間的歐式距離,即原來歐式距離大的兩點在降維後的空間中距離也應大(這樣才好保證方差大)。而事實上資料有可能呈現某種流型結構,用pca降維後資料將不能保持原有的流型結構。在這一方面常用的非線性降維方法是locally linear embedding和laplacian eigenmaps,如下圖所示:

pca的另一種推導方式是最小化投影後的損失(把降維理解為壓縮,壓縮後還原所得到的誤差最小),在這篇文章中也有具體介紹,我也不多說了。

寫到這裡,才發現我啥也沒說,都是提供了各種文獻的鏈結

另外,關於特徵值和特徵向量的更深理解,可以看本文。

--------------------

jiang1st2010

降維(一) 說說主成分分析 PCA 的源頭

降維 一 說說主成分分析 pca 的源頭 降維系列 主成分分析 pca 在很多教程中做了介紹,但是為何通過協方差矩陣的特徵值分解能夠得到資料的主成分?協方差矩陣和特徵值為何如此神奇,我卻一直沒弄清。今天終於把整個過程整理出來,方便自己學習,也和大家交流。還是以二維特徵為例,如下圖。特徵之間可能不存在...

PCA主成分分析(降維)

opencv中使用 實現降維分類預處理 參考 降維 我的理解是,通過降維得到基本特徵可以加快學習演算法。並且由於降維後的資料本身就是正交的,和聚類一樣可以實現分類 識別問題。在自我學習中也可以採用大量無標註的影象,對這些影象降維分類,並結合部分編碼資料得到特徵。例如 將很2500張人臉資訊,通過25...

降維 PCA 主成分分析

其實早該整理一下pca了,怎奈一直沒有時間,可能是自己對時間沒有把握好吧,下面進入正題。所謂降維,就是降低資料的維數。在機器學習中尤其常見,之前做過對一幅提取小波特徵,對於一幅大小為800 600的,如果每個點提取五個尺度 八個方向的特徵,那麼每乙個畫素點提取40個特徵,那麼一副的話就是40 800...