天天看點

吳恩達《機器學習》課程總結(14)降維

14.1動機一:資料壓縮

将特征進行降維,如将相關的二維降到一維:

吳恩達《機器學習》課程總結(14)降維

三維變二維:

吳恩達《機器學習》課程總結(14)降維

以此類推把1000維資料降成100維資料。

14.2動機二:資料可視化

如50個次元的資料是無法進行可視化的,使用降維的方法可以使其降到2維,然後進行可視化。

降維的算法隻負責減少次元,新産生的特征的意義就必須有我們自己去發現了。

14.3主成分分析問題

(1)主成分分析的問題描述:

問題是要将n維資料降至k維,目标是找到k個向量,使得總的投射誤差最小。

(2)主成分分析與線性回歸的比較:

二者是不同的算法,前者是最小化投影誤差,後者是最小化預測誤差;前者不做任何分析,後者目的是預測結果。

線性回歸是垂直于軸投影,主成分分析是垂直于紅線的投影。如下圖所示:

吳恩達《機器學習》課程總結(14)降維

(3)PCA是對新求出來的“主元”向量的重要性進行排序,根據需要去前面重要的部分,将後面的維數省略。

(4)PCA的一個優點是完全依賴資料,而不需要人為設定參數,與使用者是獨立的;同時這也是也可以看做缺點,因為,如果使用者對資料有一定的先驗知識,将無法派上用場,可能得不到想要的效果。

14.4主成分分析算法

PCA将n維減少到k維:

(1)均值歸一化,即減均值除以方差;

(2)計算協方差矩陣;

(3)計算協方差矩陣的特征向量;

吳恩達《機器學習》課程總結(14)降維

對于一個n x n次元的矩陣,上式中的U是一個具有與資料之間最小投影誤差的方向向量構成的矩陣,隻需要去前面的k個向量獲得n x k次元的向量,用Ureduce表示,然後通過如下計算獲得要求的新的特征向量z(i)=UTreduce*x(i)。

14.5選擇主成分的數量

主成分分析是減少投射的平均均方誤差,訓練集的方差為:

吳恩達《機器學習》課程總結(14)降維

希望可以盡可能的減少二者的比值,比如希望二者的比值小于1%,選擇滿足這個條件的最小次元。

吳恩達《機器學習》課程總結(14)降維

14.6重建的壓縮表示

降維式子:

吳恩達《機器學習》課程總結(14)降維

重建(即從低維回到高維):

吳恩達《機器學習》課程總結(14)降維

示意圖如下所示:左圖是降維,右圖是重建。

吳恩達《機器學習》課程總結(14)降維

14.7主成分分析法的應用建議

正确使用案例:

100 x 100像素的圖檔,即1000維特征,采用PCA将其壓縮至1000維,然後對訓練集運作學習算法,在預測時,對測試集采用之前學到的Ureduce将測試集的x轉換成z,再進行預測。

錯誤使用情況:

(1)嘗試用PCA來解決過拟合,PCA是無法解決過拟合的,應該用正則化來解決。

(2)預設把PCA作為學習過程的一部分,其實應該盡量使用原始特征,隻有在算法運作太慢或者占用記憶體太多的情況下才考慮使用主成分分析法。

繼續閱讀