lda (linear discriminant analysis)是機器學習中線性分類模型,本文從以下三個方面進行解析:
一、lda線性判別的思想
二、lda求參過程的數學原理
三、lda例項應用(貝葉斯角度)
(1)對於多維空間中的資料處理分類問題較為複雜,lda演算法將多維空間中的資料投影到一條直線上,將 d維 資料轉化為 1維 資料進行處理;
(2)對於訓練資料,設法將多維資料投影到一條直線上,是的同類資料的投影點盡可能接近,異類資料點盡可能遠離;
(3)在對新資料進行分類時,將其投影到同樣的這條直線上,再根據投影點的位置來確定樣本的類別。
了解了思想之後我們應當注意到,問題的關鍵在於如何確定這個投影直線,合適的投影直線的選擇將大大提高分類的效果。看下圖(圖引自部落格):
可見上圖中對於同樣的資料,左圖中投影直線的選擇顯然沒有右圖中合適。
假設有一組n個d維的樣本x1、x2....xn,
他們分別屬於兩個不同的類別,w1、w2
,對x
中的成分左線性組合,就可得到點積,結果是乙個標量:
上面公式便是投影直線,下面推到如何求解引數w
資料樣本的均值向量:
資料樣本的協方差矩陣:
兩類樣本的中心在直線上的投影的中心:
所有樣本投影到直線上,兩類樣本的協方差
分析為何樣本資料均值和協方差投影後是
(1)首先我們知道每個類的均值,這裡只有兩類:
(2)所以當x經過投影直線投射到直線上的均值為:
(3)同理可以得到投影後樣本的協方差,核心思想
**重要分析:**欲使同類樣例的投影點盡可能接近,可以上投影點的協方差盡可能小,欲使異類樣例的投影點盡可能遠離,可以讓類中心之間的距離盡可能大。同時考慮兩點,得到欲最大化的目標:
上面公式筆試準則函式,下面通過最大化準則函式來求解引數 w,推導過程如下:
首先定義「類內散度矩陣」:
以及「類間散度矩陣」:
這樣準則函式便可寫成:
這便是lda欲最大化的目標,及時sb和sw的「廣義瑞利熵」
上式中可以觀察到分子和分母都是關於w的二次項所以解和w的長度沒有關係,之和其方向有關,所以上式可以等價於:
由拉格朗日乘子法:
求導可得到如下式子:
這裡簡單介紹一下拉格朗日乘子法
拉格朗日乘子法的作用:求函式f(x1,x2…)在g(x1,x2…)=0的約束條件下的極值的方法。
拉格朗日乘子法的操作過程:
(1)定義新函式:
(2)利用偏導方式列出以下方程:
(3)求解出x,y,σ的值帶入f(x,y,σ)便是目標函式的極值
上面我們已經得出了優化準則函式的等價式:
**關鍵點:**sbw的方向恒為u0-u1,不妨令:
最終可得w的表示式為:
其中對sw進行奇異值分解可得:
因此最終求的引數w,便可得到投影直線方程!
剩下的問題便是根據投影直線求解閾值,也就是一維空間中把兩類資料分開的那個點的位置!下面簡單說一說。
當樣本中的資料滿足正態分佈,即:樣本資料的條件概率密度函式p(x|w)是多元正態函式,並且各個類別的協方差矩陣相同時,我們可以直接得到閾值,最佳判別介面的方程為:
其中w便是上面求出來的引數,而w0是乙個和資料先驗概率有關的常數,此點將在我的機器學習系列章節的貝葉斯分類器中詳細討論!
對於更加一般的情況:我們便是對投影後的資料進行平滑處理,或是用以為高斯函式進行擬合,就可以選擇使得兩個類的後驗概率相同的那個位置作為判別邊界。
複雜度分析:尋找lda判別準則下的最佳引數w的計算複雜度主要有計算類內總體散布矩陣和奇異值求解逆矩陣所決定,複雜度為o(d^2*n)
LDA 線性判別回歸
lda和pca一樣都是降維演算法,但不同的是lda是有監督的降維演算法,它的目的是將不同類別的資料降維後仍能較好的區別開。而pca是無監督的演算法,它的目的是將樣本資料降維後仍保留樣本資料間的方差。lda認為不同類的樣本服從均值不同的高斯分布,主要根據均值作為降維的導向,所以它在處理非高斯分布的資料...
LDA 線性判別分析 Fisher線性判別
1.lda是什麼 線性判別式分析 linear discriminant analysis 簡稱為lda。也稱為fisher線性判別 fisher linear discriminant,fld 是模式識別的經典演算法,在1996年由belhumeur引入模式識別和人工智慧領域。基本思想是將高維的模...
LDA 線性判別分析
1.lda是什麼 線性判別式分析 linear discriminant analysis 簡稱為lda。也稱為fisher線性判別 fisher linear discriminant,fld 是模式識別的經典演算法,在1996年由belhumeur引入模式識別和人工智慧領域。基本思想是將高維的模...