線性判別分析,簡稱lda,是一種線性學習方法。
常用來降維,是一種有監督的降維方法,是基於最佳分類效果的降維方法。
核心思想
給定訓練樣本,帶label,設法將樣本投影到一條直線上,使得同類樣例的投影盡可能接近,異類樣例的投影盡可能遠離;
在對新樣本進行**時,先將其投影到這條直線上,再根據投影點的位置確定類別。
以二分類為例,x1 x2 代表訓練集,u1 u2 代表樣本均值,cov1 cov2 代表樣本協方差矩陣,將樣本投影到直線w上,則兩樣本的中心的投影分別為 wu1 wu2,兩樣本的協方差為 wtcov1w wtcov2w ,
要使同類間距離盡可能小,需使 wtcov1w + wtcov2w 盡可能小;
要使異類間距離盡可能大,需使 |wu1-wu2| 盡可能大,
綜合考慮,則可得到如下式子
目標是使得 j 最大。
具體求解過程省略,實際應用中一般不會自己實現lda,因為lda只是演算法中很小的乙個步驟,而其本身求解比較麻煩。
class sklearn.lda.lda(solver='示例**svd', shrinkage=none, priors=none, n_components=none, store_covariance=false, tol=0.0001)
from sklearn.discriminant_analysis import上面寫了兩個介面,適用不同版本。lineardiscriminantanalysis
lda = lineardiscriminantanalysis(n_components=2)
lda.fit(iris.data,iris.target)
x_new =lda.transform(iris.data)
print(x_new)
lda與pca的應用場景對比
若兩類樣本的均值有明顯差異,lda較優
若兩類樣本均值無明顯差異,但協方差差異很大,pca較優
在實際應用中也常結合lda和pca一起使用,先用pca降維消除雜訊,再用lda降維。
LDA 線性判別分析
1.lda是什麼 線性判別式分析 linear discriminant analysis 簡稱為lda。也稱為fisher線性判別 fisher linear discriminant,fld 是模式識別的經典演算法,在1996年由belhumeur引入模式識別和人工智慧領域。基本思想是將高維的模...
線性判別分析LDA
首先搞清楚什麼叫判別分析?discriminant analysis就是根據研究物件的各種特徵值判別其型別歸屬問題的一種多變數統計分析方法。根據判別標準不同,可以分為距離判別 fisher判別 bayes判別法等。比如在knn中用的就是距離判別,當然這裡的 距離 又有好幾種 歐氏距離 街區距離 甚至...
LDA 線性判別分析
定義 1.lda 線性判別式分析 linear discriminant analysis 也稱為fisher線性判別 fisher linear discriminant,fld 基本思想 將高維的模式樣本投影到最佳鑑別向量空間,以達到抽取分類資訊和壓縮特徵空間維數的效果,投影後保證模式樣本在新的...