需要注意一下,lda有兩種縮寫:
一種是線性判別分析(linear discriminant analysis) 一種是概率主題模型——隱含狄利克雷分布(latent dirichlet allocation)
本文講的是前者。
線性判別分析(linear discriminant analysis,lda)的思想是:
訓練時:設法將訓練樣本投影到一條直線上,使得同類樣本的投影點盡可能地接近,異類樣本的投影點盡可能地遠離。要學習的就是這樣的一條直線。**時:將待**樣本投影到學到的直線上,根據它的投影點的位置來判定它的類別。
首先考慮二分類問題。
給定資料集t,其中共有m個樣本,n個特徵。即:
x11,x12,x13,...,x1n,y1
x21,x22,x23,...,x2n,y2
......
xm1,xm2,xm3,...,xmn,ym
其中,yi=,i=1,2,...,m
設類別為0的樣本的均值向量為:u0=(u10,u20,...,un0)t,這些樣本的特徵之間的協方差矩陣為∑0。
設類別為1的樣本的均值向量為:u1=(u11,u21,...,un1)t,這些樣本的特徵之間的協方差矩陣為∑1。
假設直線為y=θtx,將資料投影到直線上,則:
兩類樣本的中心在直線上的投影分別為θtu0和θtu1。
兩類樣本投影的方差分別為θt∑0θ和θt∑1θ。
我們的目標是:同類樣本的投影點盡可能地接近,異類樣本的投影點盡可能地遠離。那麼可以使同類樣例投影點的方差盡可能地小,即θt∑0θ+θt∑1θ盡可能地小;可以使異類樣例的中心投影點盡可能地遠離,即∥θtu0?θtu1∥2盡可能地大。
於是得到最大化的目標:
j=∥θtu0?θtu1∥2θt∑0θ+θt∑1θ=θt(u0?u1)(u0?u1)tθθt(∑0+∑1)θ
定義類內散度矩陣:
sw=∑0+∑1=∑x∈t0(x?u0)(x?u0)t+∑x∈t1(x?u1)(x?u1)t
定義類間散度矩陣:
sb=(u0?u1)(u0?u1)t
則lda最大化的目標為:
j=θtsbθθtswθ
求解最優化問題:
argmaxθθtsbθθtswθ
分子分母都是關於θ的二次項,因此上式的解與θ的長度無關。令θtswθ=1,則最優化問題改寫為:
argmimθ?θtsbθs.t.θtswθ=1
應用拉格朗日乘子法:
sbθ=λswθ
令(u0?u1)tθ=λθ,其中λθ為實數。則sbθ=(u0?u1)(u0?u1)tθ=λθ(u0?u1)=λswθ。由於與θ的長度無關,可以令λθ=λ,則有:
(u0?u1)=swθ
θ=s?1w(u0?u1)
上面討論的是二分類lda演算法。可以將它擴充套件到多分類任務中。由於多分類任務不止有兩個中心點,因此不能簡單地套用二類lda的做法(即兩個中心點的距離)。這裡用每一類樣本和的中心點距離總的中心點的距離作為度量。同時考慮到每一類樣本集的大小可能不同(密度分布不均),所以我們對這個距離加以權重,因此定義類間散度矩陣sb=∑mi=1mi(ui?u)(ui?u)t。
經推導可以得到最大化的目標:
j=tr(θtsbθ)tr(θtswθ)
其中,tr(.)表示矩陣的跡。乙個矩陣的跡是矩陣對角線的元素之和,它是乙個矩陣不變數,也等於所有特徵值之和。
多類lda將樣本投影到n-1維空間,因此它是一種經典的監督降維技術。
線性判別分析 線性判別分析總覽
線性判別分析總覽 linea r discriminant analysis,lda 用於資料預處理中的降維 分類任務,其目標是找到能夠最大化類間區分度的座標軸成分。用幾個詞概括lda的特徵,即降維 分類。假設一批患者使用同一種腫瘤藥,一些人效果良好 response 而另一些人無明顯療效 not ...
線性判別分析
linear discriminant analysis 線性判別分析 discriminant analysis.lineardiscriminantanalysis 和 quadratic discriminant analysis 二次判別分析 discriminant analysis.qu...
LDA 線性判別分析 Fisher線性判別
1.lda是什麼 線性判別式分析 linear discriminant analysis 簡稱為lda。也稱為fisher線性判別 fisher linear discriminant,fld 是模式識別的經典演算法,在1996年由belhumeur引入模式識別和人工智慧領域。基本思想是將高維的模...