Principal components analysis(PCA):主元分析


  在因子分析(Factor analysis)中,介紹了一種降維概率模型,用EM算法(EM算法原理詳解)估計參數。在這里討論另外一種降維方法:主元分析法(PCA),這種算法更加直接,只需要進行特征向量的計算,不需要用到EM算法。

  假設數據集表示 m 個不同類型汽車的屬性,比如最大速度,轉彎半徑等等. 對於任意一輛汽車,假設第 i 個屬性和第 j 個屬性 xixj 分別以 米/小時 和 千米/小時 來表示汽車的最大速度,那么很顯然這兩個屬性是線性相關的,所以數據可以去掉其中一個屬性,即在 n-1 維空間處理即可. 這只是一個小小的例子,在大多數現實的數據中,有太多這樣的數據冗余和重復,所以要想辦法自動檢測和去掉這些數據冗余

    例如現在對無線控制直升飛機的飛行員做一個調查,用衡量飛行員 i 的飛行技能的熟練程度,衡量飛行員享受飛行的程度,不過由於無線控制直升機很難操縱,所以只有那些具有熟練飛行技巧的飛行員才是真正享受飛行過程,才算得上優秀的飛行員。所以 x1x2 指向具有很大的關聯。於是,我們根據 x1x畫出數據,可以發現,數據主要都分布在坐標軸的角平分線方向變化 (u1所示方向),只有很少的點偏離這條線,如下圖所示:

在執行PCA算法之前,需要對數據進行預處理,對數據的均值和方差進行歸一化:

  1. 代替每一個
  2. 代替每一個

步驟(1-2)是為了保證數據的均值為0,對於那些均值本來就為0的數據集,這兩步可以省略(例如語音的時序序列,或者其他聲音信號).

步驟(3-4)保證每個坐標的方差為1,這樣不同的屬性值就被歸一到同一個可比較的范圍內處理,例如 x1 表示汽車的速度是幾十或者幾百米每小時,x2 表示汽車里面的座位數大約是2-4,那么就是通過方差的歸一化使得這種差距較大的屬性數據值有可比性。當然,如果我們確切知道原始數據中所有屬性的取值都在同一個可比較的范圍內,步驟(3-4)也是可以省略的,比如一個關於圖像中各個像素點灰度值得數據集,每一個數據點的范圍都是{0,1, ... ,255},所以方差就不用歸一化.

預處理之后,如何檢測出數據的主要變化方向呢?就是說想找到某一方向,使得大部分數據都近似分布在這個方向附近

考慮下面進過歸一化的數據:

下面我們畫出了一個方向 u,圓點表示原始數據在 上的映射:

可以看出映射后的數據之間相距較遠,即方差值較大,並且數據點都距原點較遠,再考慮另一個方向:

可以看出,這些映射后的數據點方差較小,而且距離原點比較近。

我們想要做的就是運用算法自動從上面類似的各個方向中選出最合適的方向。


 

給定單位向量 u 和一個點 x, 映射到 上投影的長度為 xTu, 即一個數據集中的點 x(i) 映射到 u 上之后到原點的距離為 xTu

因為要選擇出數據的主要變化方向 u, 從上面兩個不同方向的例子可以看出,如果在原始數據主要沿某一方向變化較大,那么原始數據在這個方向上投影點的方差就較大,所以要找到u,就是最大化原數據在 u 方向上投影點的方差,通常把 u 設定為單位向量:

最大化上面的式子,注意到, 假設原始數據的均值為0(這一點要注意,同時也告訴我們為什么前面要將數據均值歸一化為0),那么正好是原始數據的協方差矩陣(關於協方差矩陣的概念參考協方差詳解l

要想使得上面式子取得最大值,u 必須取 Σ 的主特征向量方向(可以定性理解為一個矩陣的主特征方向包含着該矩陣最多的信息)。更加一般地,想要把原始數據映射到一個 k 維的子空間(k<n),應該選擇出 Σ 的k個最主要的特征向量 u1, u2, ..., uk,k 個向量組成了一組新的正交基。

把數據映射到新的正交基所表示的空間:

這樣在盡可能多保留原始數據信息的情況下,把數據由 n 維降低至 k 維.因此PCA就是一種數據降維算法 u1, u2, ..., uk,叫做原始數據的前 k 個主成分.關於具體實踐參考:PCA和白化練習之處理二維數據.

有時候數據維度高不僅僅是因為數據存在冗余,而是存在了一些噪聲,所以PCA同樣具有降噪的作用


 

總結:

PCA就是一種把原始數據投影到該數據集的主特征方向上的操作,因為一個數據集的主特征方向包含着絕大部分該數據的信息,通過選取合適數量的特征向量,既可以保留原始數據的信息,又能實現數據降維降噪,到底具體選取幾個特征向量通常是根據特征值來判斷,用選取的特征向量對應的特征值之和比上所有特征值之和,結果一般要求大於95%即可,即保留了原始數據95%的信息,當然也可以根據問題的具體要求,調整這個選擇的閾值。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM