機器學習-特征選擇(降維) 線性判別式分析(LDA)


  特征選擇(亦即降維)是數據預處理中非常重要的一個步驟。對於分類來說,特征選擇可以從眾多的特征中選擇對分類最重要的那些特征,去除原數據中的噪音。主成分分析(PCA)與線性判別式分析(LDA)是兩種最常用的特征選擇算法。關於PCA的介紹,可以見我的另一篇博文。這里主要介紹線性判別式分析(LDA),主要基於Fisher Discriminant Analysis with Kernals[1]和Fisher Linear Discriminant Analysis[2]兩篇文獻。

  LDA與PCA的一大不同點在於,LDA是有監督的算法,而PCA是無監督的,因為PCA算法沒有考慮數據的標簽(類別),只是把原數據映射到一些方差比較大的方向(基)上去而已。而LDA算法則考慮了數據的標簽。文獻[2]中舉了一個非常形象的例子,說明了在有些情況下,PCA算法的性能很差,如下圖:                                   

 我們用不同的顏色標注C1,C2兩個不同類別的數據。根據PCA算法,數據應該映射到方差最大的那個方向,亦即Y軸方向,但是如果映射到Y軸方向,C1,C2兩個不同類別的數據將完全混合在一起,很難區分開,所以使用PCA算法進行降維后再進行分類的效果會非常差。但是使用LDA算法,數據會映射到X軸方向。

  LDA算法會考慮到數據的類別屬性,給定兩個類別C1、C2,我們希望找到一個向量ω,當數據映射到ω的方向上時,來自兩個類的數據盡可能的分開,同一個類內的數據盡可能的緊湊。數據的映射公式為:z=ωTx,  其中z是數據x到ω上的投影,因而也是一個d維到1維的維度歸約。

  令m1和m1分別表示C1類數據投影之前個投影之后的均值,易知m1Tm1,同理m2Tm2

  令s12和s22分別表示C1和C2類數據在投影之后的散布(scatter),亦即s12=Txt-m1)2rt,s22=∑(ωTxt-m2)2(1-rt)其中如果xt∈C1,則rt=1,否則rt=0。

  我們希望|m1-m2|盡可能的大,而s12+s22盡可能的小,Fisher線性判別式就是最大化下面式子的ω:

  J(ω)=(m1-m2)2/(s12+s22)     式子-1

  改寫式子-1中的分子:  (m1-m2)2=  (ωTm1Tm2)2T(m1-m2)(m1-m2)Tω=ωTSBω

  其中SB=(m1-m2)(m1-m2)T    式子-2

  是類間散布矩陣(between class scatter matrix)。

  改寫式子-1中的分母:

  ∑(ωTxt-m1)2rt=∑ωT(xt-m1)(xt-m1)TωrtTS1ω, 其中S1=∑rt(xt-m1)(xt-m1)T是C1的類內散布矩陣(within class scatter matrix)。

  令SW=S1+S2,是類內散布的總和,則s12+s22TSWω。

  所以式子-1可以改寫為:

  J(ω)=(ωTSBω)/(ωTSWω)    式子-3

  我們只需要使式子-3對於ω求導,然后使導數等於0,便可以求出ω的值:ω=cSW-1(m1-m2),其中c是一個參數,我們只對ω的方向感興趣,所以c可以取值為1.

  另外,最后求得的 J(ω)的值等於λk,λkSW-1SB的最大的特征值,而ω則是SW-1SB的最大特征值所對應的特征向量。

  最后有一些關於LDA算法的討論,出自文獻[1]:

  1. Fisher LDA對數據的分布做了一些很強的假設,比如每個類的數據都是高斯分布,各個類的協方差相等。雖然這些強假設很可能在實際數據中並不滿足,但是Fisher LDA已經被證明是非常有效地降維算法,其中的原因是線性模型對於噪音的魯棒性比較好,不容易過擬合,缺點是模型簡單,表達能力不強,為了增強Fisher LDA算法的表達能力,可以引入核函數,參見我的另外一篇博客機器學習-核Fisher LDA算法

  2. 准確的估計數據的散布矩陣是非常重要的,很可能會有較大的偏置。用式子-2進行估計在樣本數據比較少(相對於維數來說)時會產生較大的變異性。

 

  參考文獻:

  [1] Fisher Discriminant Analysis with Kernals. Sebastian Mika, Gunnar Ratsch, Jason Weston, Bernhadr Scholkopf, Klaus-Robert Muller.

  [2] Fisher Linear Discriminant Analysis. Max Welling.

  [3] 機器學習導論。 Ethem Alpaydin


免責聲明!

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



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