機器學習方法篇(30)------線性判別分析

● 每週一言

想工作高效,合作不可或缺。

導語

上一節介紹了PCA降維,PCA是一種無監督降維方法。本節將介紹另外一種常見的有監督降維方法,線性判別分析LDA,以及其具體的算法思想和步驟。

線性判別分析

我們知道,降維的最終目的是一方面能將特徵維數大大降低,另一方面則是能夠最大程度的保持原樣本數據的多樣性。

fig1

前一節所講的PCA模型,可以將樣本數據投影到方差最大的低維空間中,保證了樣本數據的多樣性。但是,由於是無監督學習,並未考慮到樣本所屬的類別,因此會出現不同類別數據在降維之後相互摻雜的情況,從而很難進行後續的分類。

線性判別分析,除了能夠最大程度的保持原樣本數據的多樣性,由於其考慮到了樣本的類別標籤,還能使降維後的同類別樣本距離儘可能小,而不同類別的樣本儘可能大。

fig2

我們不妨通過一個二分類的例子,來熟悉一下LDA的具體算法思想和步驟,瞭解其是如何做到降維後還能劃分開不同類別樣本之間的數據的。

樣本xi表示第i個樣本的特徵向量,yi表示第i個樣本的類別標籤。在二分類問題中,LDA通過z = ωx把原樣本數據映射到一維空間中。

fig3

爲了描述“同類別樣本距離儘可能小,而不同類別的樣本儘可能大”這個目標,我們先定義幾個變量。根據z = ωx,每一個樣本xi都轉化成了zi。我們用Xc表示原空間C類別的樣本集合,Zc表示降維空間C類別的樣本集合。

定義樣本集合Xc的均值如下:

eq1

定義樣本集合Zc的均值如下:
eq2

有了上面的公式,我們就能定義同類別樣本之間的距離如下:
eg3

同樣的,也可以定義類別之間的距離如下:
eg4

根據上面兩個式子,就能定義LDA的目標函數了。LDA的目標就是尋找最大化這個目標函數的ω值,使得“同類別樣本距離儘可能小,而不同類別的樣本儘可能大”。
eg5

求解這個函數的方法是拉格朗日乘子法,感興趣的讀者可以參考前面我對拉格朗日乘子法的講解 機器學習方法篇(12)——拉格朗日乘子法,這裏不再描述求解的公式推導過程。

以上便是線性判別分析的介紹,敬請期待下節內容。

參考:
https://blog.csdn.net/victoriaw/article/details/78213252

結語

感謝各位的耐心閱讀,後續文章於每週日奉上,敬請期待。歡迎大家關注小鬥公衆號 對半獨白

face

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章