天天看點

線性判别分析(LDA)與Fisher判别分析(FDA)降維原理

在故障診斷中,我們常常會面對大量的且維數很高的數組,通過我們需要先對資料集進行劃分及預處理,而預處理階段極為重要的一步就是對資料進行降維特征提取,通過某種數學變換将原始高維空間轉變成一個低維的子空間。

然鵝,我們常用到的基本就隻有兩個,一個是主成分分析(PCA),另一個則是今天所要介紹的Fisher判别分析(Fisher Discriminant Analysis,FDA)。

主成分分析的基本思想:設法将原來衆多具有一定相關性(比如P個名額,即主成分),重新組合成一組新的互相無關的綜合名額來代替原來的名額。通過尋找在最小均方誤差(Mean Square Error,MSE)下的最具代表性的投影向量,再用這些向量來表示資料。

Fisher判别分析的基本思想:利用已知類别的樣本建立判别模型,對未知類别的樣本進行分類。在最小均方誤差(也就是最小二乘法MSE)意義下,尋找最能分開各個類别的最佳方向。

最先的是提出的線性判别法(Linear Discriminant Analysis,LDA),這還是一種經典的線性學習方法。在降維方面LDA是最著名的監督學習降維方法。但是,在二分類問題上,因為最早是有(Fisher,1936)提出的,是以也被稱為是“Fisher判别分析(Fisher Discriminant Analysis,FDA)”。

其實LDA和FDA兩種判别分析方法,是略有不同的。其中LDA則假設了各類樣本資料的協方差矩陣相同,且滿秩。

線性判别分析(LDA)及Fisher判别分析(FDA)

LDA的思想:由所給定的資料集,設法将樣例資料投影在一條直線上,使得同類資料的投影點盡可能的接近、而異類資料的投影點之間将可能間隔更遠。在我們做新樣本資料的分類時,将其投影到同樣的直線上,再根據投影點的位置來确定新樣本的類别。如下圖(源自周志華《機器學習》)所示:

這裡的投影直線也用到了最小二乘的思想,所有資料樣本垂直投影在直線上,隻是我們的限制條件表為了不同資料樣本之間的投影在直線上的距離度量。

我們需要尋找到在投影方向w ww上,使得資料樣本滿足兩個條件:1) 相同資料之間投影距離最小;2)不同資料之間投影點位置最大(可通過求其不同資料的投影中心點來判别)

線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理

LDA二維示意圖

圖中,“+”和“-”代表的是兩種不同的資料簇,而橢圓表示資料簇的外輪廓線,虛線表示其投影,紅色實心圓●和紅色實心三角形△分别代表的兩類資料簇投影到w ww方向上的中心點。

線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理

為什麼說這裡是一維空間呢?可以看上圖,假設每個樣本都是d維向量(上圖為二維x 1 、 x 2 坐标系)。現在就簡單一點,想用一條直線w ww表示這些樣本,稱之為樣本集合的一維表達。是以這裡說的一維講的是投影到一條直線上以後的資料,在直線上是屬于一維空間表達的。

下面思考另一個問題,如何讓同類的資料樣本投影點盡可能的靠近,而使得不同樣本投影點離得更遠呢?

這裡需要引入協方差的概念,小小複習一下協方差及樣本方差的知識(因為本菜雞數學基礎差)

協方差(Covariance)在機率論和統計學中用于衡量兩個變量的總體誤差。而方差是協方差的一種特殊情況,即當兩個變量是相同的情況。

上面的Σ 0 、 Σ 1因為是自協方差也就是代表方差(也即為樣本方差)。

方差:當資料分布比較分散(即資料在平均數附近波動較大)時,各個資料與平均數的差的平方和較大,方差就較大;當資料分布比較集中時,各個資料與平均數的差的平方和較小。

總的說來:方差越大,資料的波動越大;方差越小,資料的波動就越小。

協方差表示的是兩個變量的總體的誤差,這與隻表示一個變量誤差的方差不同。 如果兩個變量的變化趨勢一緻,也就是說如果其中一個大于自身的期望值,另外一個也大于自身的期望值,那麼兩個變量之間的協方差就是正值。 如果兩個變量的變化趨勢相反,即其中一個大于自身的期望值,另外一個卻小于自身的期望值,那麼兩個變量之間的協方差就是負值。

簡而言之:兩個變量之間差距越大,協方差就越小;相反,兩個變量越相似變化趨勢一緻,則協方差越大。

複習完協方差、樣本方差的知識後,解決上面的問題應該不難。

線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理

引入一下類内和間散度矩陣的知識:

類間散度矩陣用于表示各樣本點圍繞均值的散布情況。

類内散度矩陣用于表示樣本點圍繞均值的散步情況,關于特征選擇和提取的結果,類内散布矩陣的積越小越好。

具體可參考這裡,還有這裡。

首先,我們來定義“類内散度矩陣”(within-class scatter matrix)

線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
“類間散度矩陣”(between-class scatter matrix):
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
然後我們的J 可以表示為
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
關于“廣義瑞利商”(generalizad Rayleigh quotient)的解釋,可以參考 這裡

瑞利商經常出現在降維和聚類任務中,因為降維聚類任務往往能導出最大化最小化瑞利熵的式子,進而通過特征值分解的方式找到降維空間。

大體内容如下:

線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
下面開始建構我們的函數及限制條件。
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
由拉格朗日乘數法(具體可參考 CCA中Lagrange的應用 )可得,
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
其中,λ \lambdaλ為拉格朗日乘子。
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
LDA還可從 貝葉斯 決策理論的角度來描述(關于貝葉斯可參考

),可證明,當兩類資料同先驗、滿足高斯分布(正态分布)且協方差相等時,LDA可以達到最優的分類效果。

上述講了這麼多都是二分類問題,那麼關于多分類任務。

LDA推廣(多分類任務)

線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理

其中,μ \muμ代表所有示例的均值向量。

線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理

其中,

線性判别分析(LDA)與Fisher判别分析(FDA)降維原理

同理,這裡的μ i也代表每一類的均值向量。

由上式可得到,

線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理

上式可由如下的廣義特征值問題求解:

線性判别分析(LDA)與Fisher判别分析(FDA)降維原理

注意:這裡的W 和上面二分類問題時的w 相同,W 則是多類問題下的投影直線。故我們需要找到這樣在多個類下使得滿足第一部分的限制條件的直線W 。

線性判别分析(LDA)與Fisher判别分析(FDA)降維原理
線性判别分析(LDA)與Fisher判别分析(FDA)降維原理

從上圖中可容易了解PCA和LDA。可看出PCA多滿足高斯分布,投影了最具代表性的主成分分量;而LDA如上所述,投影下來使其更容易區分出各類别之間的最佳方向。

繼續閱讀