天天看點

【機器學習算法-python實作】PCA 主成分分析、降維1.背景2.代碼實作3.代碼下載下傳

        PCA(Principal Component Analysis),PAC的作用主要是降低資料集的次元,然後挑選出主要的特征。

        PCA的主要思想是移動坐标軸,找到方差最大的方向上的特征值,什麼叫方差最大的方向的特征值呢。就像下圖中的曲線B,一樣,它的覆寫範圍最廣。

【機器學習算法-python實作】PCA 主成分分析、降維1.背景2.代碼實作3.代碼下載下傳

基本步驟:(1)首先計算資料集的協方差矩陣

                   (2)計算協方差矩陣的特征值和特征向量

                   (3)保留最重要的n個特征

what is 協方差矩陣:

可以參考wiki:(http://zh.wikipedia.org/wiki/%E5%8D%8F%E6%96%B9%E5%B7%AE%E7%9F%A9%E9%98%B5)

僞代碼如下(摘自機器學習實戰):

【機器學習算法-python實作】PCA 主成分分析、降維1.背景2.代碼實作3.代碼下載下傳

loadDataSet函數是導入資料集。

PCA輸入參數:參數一是輸入的資料集,參數二是提取的次元。比如參數二設為1,那麼就是傳回了降到一維的矩陣。

PCA傳回參數:參數一指的是傳回的低維矩陣,對應于輸入參數二。參數二對應的是移動坐标軸後的矩陣。

上一張圖,綠色為原始資料,紅色是提取的2維特征。

【機器學習算法-python實作】PCA 主成分分析、降維1.背景2.代碼實作3.代碼下載下傳

/********************************

* 本文來自部落格  “李博Garvin“

******************************************/