1. 程式人生 > >主成分分析(PCA)

主成分分析(PCA)

主成分分析(PCA)

我們希望將N維資料降低為K維資料,對資料簡化有如下一系列原因:

1 使得資料集更易使用使用

2 降低很多演算法的計算開銷

3 去除噪聲

4 使得結果易懂

    在所有的降維技術中,PCA的應用目前最為廣泛,在PCA中,資料從原來的座標系轉換到了新的座標系,新座標系的選擇是由資料本身決定的。第一個新座標軸選擇的是原始資料中方差最大的方向,第二個新座標軸的選擇和第一個座標軸正交且具有最大方差的方向。

1移動座標軸

第一條座標軸的選擇要求覆蓋到資料最大方差的地方,資料的最大方差給出了資料最重要的資訊。我們繼續選擇一條覆蓋資料方差次大,並且和第一條座標軸正交的向量軸作為第二條座標軸,利用PCA我們將資料座標軸旋轉到資料角度上的那些最重要的方向。

這裡在書上看到了非常重要的一句話,也是移動座標軸的原理:正交向量(互相正交的單位向量)構成的任意矩陣都代表歐式空間下的一個座標旋轉。

為了求出新的座標軸,我們需要構建協方差矩陣(協方差矩陣反應出了各個特徵之間的相關性)。百度百科上對於協方差矩陣的定義如下:

設  為n維隨機變數,稱矩陣

為n維隨機變數 的協方差矩陣(covariance matrix),也記為  ,其中為  的分量 和  的協方差(設它們都存在)。例如,二維隨機變數  的協方差矩陣為

其中 

由於 ,所以協方差矩陣為對稱非負定矩陣。

由於 ,所以協方差矩陣為對稱非負定矩陣。

吳恩達的視訊中用一行公式來表達了資料的協方差矩陣

   這裡X^(i)是已經減去了平均值這樣就可以和協方差矩陣的定義相對應了

一個移動座標軸的示例

  下圖表示原始空間中的四個點

計算圖中方陣的特徵值和特徵向量,然後將原始矩陣乘以單位化的特徵值和特徵向量,就得到了移動座標軸之後的每個樣本的座標。這裡就完成了座標旋轉。

2 降維

在移動座標軸之後的空間下,第一個座標軸(對應最大特徵值的那個軸)最重要,形式化的說法是沿著該軸點的方差最大。而次特徵對應的第二個座標軸,在相同意義上的說是第二重要的,其餘可以依此類推。如果想將原始資料變換到一個低維的空間,那麼保留最重要部分的做法是使用最大的前k個特徵對應的k個向量並忽略其他特徵值。

左圖表示先將資料旋轉到新的座標系下,右圖就表示使用最重要的一個特徵值對應的特徵向量,將二維資料降到了一維。

3 選取主成分的數量

   我們要將N維資料降到K維,那麼如何選擇K的值呢?在吳恩達的視訊中,他給了我們一個公式,這裡分母表示每個樣本的平均長度,分子是原始資料與投影之後的資料的距離的平均值。然後將k值代入,直到不等式成立。這裡也可以取5%等其它值。