線性判別分析(Linear Discriminant Analysis,簡(jiǎn)稱LDA)是一種經(jīng)典的有監(jiān)督數(shù)據(jù)降維方法。LDA的主要思想是將一個(gè)高維空間中的數(shù)據(jù)投影到一個(gè)較低維的空間中嘀粱,且投影后要保證各個(gè)類別的類內(nèi)方差小而類間均值差別大,這意味著同一類的高維數(shù)據(jù)投影到低維空間后相同類別的聚在一起狈邑,而不同類別之間相距較遠(yuǎn)岛都。如下圖將二維數(shù)據(jù)投影到一維直線上:
上圖提供了兩種方式,哪一種投影方式更好呢队魏?從圖上可以直觀的看出右邊的比左邊的投影后分類的效果好公般,因此右邊的投影方式是一種更好地降維方式。
上圖直觀的給出了LDA分類的主要思想胡桨,下圖通過(guò)數(shù)學(xué)公式來(lái)推導(dǎo)如何得到這個(gè)最佳的投影方式官帘。
二類LDA原理
為了方便解釋LDA的原理,我們以二分類為例昧谊。
假設(shè)現(xiàn)有數(shù)據(jù)集 D = {(x1, y1), (x1, y1), ... ,(xm, ym)}刽虹,其中任意樣本xi為n維向量。定義Nj為第j類樣本的個(gè)數(shù)呢诬,Xj為第j類樣本的集合涌哲,而μj為第j類樣本的均值向量,Σ??(??=0,1)為第j類樣本的"方差"尚镰。
因此阀圾,原始均值μj和投影后的均值μ'j的表達(dá)式為分別為:
而"方差"則為:
根據(jù)上面LDA主要思想的描述我們的目標(biāo)就是要投影后最大化類間均值差同時(shí)最小化類內(nèi)方差大小初烘。因此目標(biāo)函數(shù)如下:
上式中,分子表示不同類別均值之差分俯,分母表示不同類別方差之和肾筐,因此我們的目標(biāo)就是最大化J(w)即可。
其中澳迫,對(duì)于分母:
對(duì)于分子:
最后目標(biāo)函數(shù)可轉(zhuǎn)化為:
對(duì)J(w)的求解過(guò)程如下:
一個(gè)簡(jiǎn)單的例子
總結(jié)下LDA算法流程
輸入:數(shù)據(jù)集 D = {(x1, y1), (x1, y1), ... ,(xm, ym)}局齿,任意樣本xi為n維向量剧劝,yi∈{C1, C2, ... , Ck}橄登,共k個(gè)類別。現(xiàn)在要將其降維到d維讥此;
輸出:降維后的數(shù)據(jù)集D'拢锹。
- (1)計(jì)算類間散度矩陣 SB;
- (2)計(jì)算類內(nèi)散度矩陣 SW;
- (3)將 SB 和 SW 代入上面公式計(jì)算得到特征值 λ 和特征向量 w,取前面幾個(gè)最大的特征值向量λ'與特征向量相乘得到降維轉(zhuǎn)換矩陣 λ'w;
- (4)將原來(lái)的數(shù)據(jù)與轉(zhuǎn)換矩陣相乘得到降維后的數(shù)據(jù) (λ'w)Tx ;