主成分分析(PCA)/線性判別分析(LDA)總結

 

1 PCA

PCA(Principal Component Analysis) 是一種常見的數據分析方式,常用於高維數據的降維,可用於提取數據的主要特徵分量。

關於PCA的原理強烈推薦這篇文章 PCA的數學原理

 

2 LDA

之前我們討論的 PCA降維,對樣本數據來言,可以是沒有類別標籤 y 的。如果我們做迴歸時,如果特徵太多,那麼會產生不相關特徵引入、過度擬合等問題。我們可以使用PCA 來降維,但 PCA 沒有將類別標籤考慮進去,屬於無監督的。

LDA是一種監督學習的降維技術,也就是說它的數據集的每個樣本是有類別輸出的。LDA的基本思想:給定訓練樣例集,設法將樣例投影到一條直線上,使得同類樣例的投影點儘可能接近、異類樣例的投影點中心儘可能遠離。更簡單的概括爲一句話,就是“投影后類內方差最小,類間方差最大”。

可能還是有點抽象,我們先看看最簡單的情況。假設我們有兩類數據分爲 “+”和“-”,如下圖所示,這些數據特徵是二維的,我們希望將這些數據投影到一維的一條直線,讓每一種類別數據的投影點儘可能的接近,而“+”和“-”數據中心之間的距離儘可能的大。

具體數學推導過程可見這篇博文 Dimensionality Reduction——LDA線性判別分析原理篇

LDA算法的優點

  • 在降維過程中可以使用類別的先驗知識經驗,而像PCA這樣的無監督學習無法使用先驗知識;
  • LDA在樣本分類信息依賴均值而不是方差的時候,比PCA算法較優。

LDA算法的缺點

  • LDA與PCA均不適合對非高斯分佈樣本進行降維
  • LDA降維算法最多降到類別數K-1的維度,當降維的維度大於K-1時,則不能使用LDA。當然目前有一些改進的LDA算法可以繞過這個問題
  • LDA在樣本分類信息依賴方差而非均值的時候,降維效果不好
  • LDA可能過度擬合數據

 

3 PCA和LDA比較

LDA與PCA都可用於降維,因此有很多相同的地方,也有很多不同的地方

相同點:

  • 兩者均可用於數據降維
  • 兩者在降維時均使用了矩陣特徵分解的思想
  • 兩者都假設數據符合高斯分佈

不同點:

  • LDA是有監督的降維方法,而PCA是無監督降維方法
  • 當總共有K個類別時,LDA最多降到K-1維,而PCA沒有這個限制
  • LDA除了用於降維,還可以用於分類
  • LDA選擇分類性能最好的投影方向,而PCA選擇樣本點投影具有最大方差的方向。這點可以從下圖形象的看出,在某些數據分佈下LDA比PCA降維較優(如下圖的左圖)。當然,某些數據分佈下PCA比LDA降維較優(如下圖的右圖)。LDA不適合對非高斯分佈樣本進行降維,PCA也有這個問題。

 

Reference

PCA的數學原理

如何通俗易懂地講解什麼是 PCA 主成分分析?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章