1. 程式人生 > >LDA和PCA降維的原理和區別

LDA和PCA降維的原理和區別

除了 思想 樣本 計算方法 相互 進化 strong 繞過 位置

LDA算法的主要優點有:

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

LDA算法的主要缺點有:

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

PCA算法的主要優點有:

  • 僅僅需要以方差衡量信息量,不受數據集以外的因素影響。 
  • 各主成分之間正交,可消除原始數據成分間的相互影響的因素。
  • 計算方法簡單,主要運算是特征值分解,易於實現。
  • 當數據受到噪聲影響時,最小的特征值所對應的特征向量往往與噪聲有關,舍棄能在一定程度上起到降噪的效果。

PCA算法的主要缺點有:

  • 主成分各個特征維度的含義具有一定的模糊性,不如原始樣本特征的解釋性強。
  • 方差小的非主成分也可能含有對樣本差異的重要信息,因降維丟棄可能對後續數據處理有影響。

LDA與PCA

相同點:

  • 兩者均可以對數據進行降維。
  • 兩者在降維時均使用了矩陣特征分解的思想。
  • 兩者都假設數據符合高斯分布。

不同點:

  • LDA是有監督的降維方法,而PCA是無監督的降維方法。(LDA輸入的數據是帶標簽的,PCA輸入的數據是不帶標簽的)
  • LDA降維最多降到類別數k-1的維數,而PCA沒有這個限制。(PCA采用的是最大的特征所對應的特征向量來進行降維的處理。降到的維數和選擇的最大特征的個數有關)
  • LDA除了可以用於降維,還可以用於分類。(降維後得到一個新的樣品數據,要確定某一個未知的樣本屬於那一類,對該樣本進行同樣的線性變換,根據其投影到的位置來進行分來(判別分析問題?))
  • LDA選擇分類性能最好的投影方向,而PCA選擇樣本點投影具有最大方差的方向。

LDA和PCA降維的原理和區別