机器学习笔记17-LDA算法
1. LDA算法簡介
LDA(線性判別式分析 Linear Discriminant Analysis)屬于機器學習中的監督學習算法,常用來做特征提取、數據降維和任務分類。在人臉識別、人臉檢測等領域發揮重要作用。LDA算法與PCA算法都是常用的降維技術。二者的區別在于:LDA是一種監督學習的降維技術,也就是說它的每個樣本是有類別輸出的,而之前所學習的PCA算法是不考慮樣本類別輸出的無監督降維技術。
LDA算法的目標是使降維后的數據類內方差最小,類間方差最大(即使數據在低維度上進行投影,投影后希望每一種類別數據的投影點盡可能的接近,而不同類別的數據中心之間的距離盡可能的大。)
上圖中左圖為PCA算法的投影方式,它所做的知識將整組數據整體映射到最方便表示這組數據的坐標軸上,映射時沒有利用任何數據內部的分類信息。因此,雖然PCA可以使整組數據在表示上更加方便,但在分類上也許會變得更加困難。PCA沒有分類標簽,降維之后需要采用K-means等無監督的算法進行分類。
右圖為LDA算法的投影方式,可以看出在增加了分類信息之后,兩組輸入映射到了另一個坐標軸上,這樣兩組數據之間就變得更易區分了,可以減少很大的運算量。
LDA的優化目標為最大類間方差和最小類內方差。LDA方法需分別計算“within-class”的分散程度Sw和“between-class”的分散程度Sb,而且希望Sb/Sw 越大越好,從而找到合適的映射向量w。其降維流程如下:
2. LDA降維流程
3. LDA算法與PCA的比較:
兩者相同點:
- 兩者均可以對數據進行降維
- 兩者在降維時均使用了矩陣特征分解的思想。
- 兩者都假設數據符合高斯分布
不同點:
- LDA是有監督的降維方法,而PCA是無監督的降維方法
- LDA降維最多降到類別數K-1的維數,而PCA沒有這個限制
- LDA除了可以用于降維,還可以用于分類
- LDA選擇分類性能最好的投影方向,而PCA選擇樣本點投影具有最大方差的方向。
- 有些時候LDA比PCA降維更優,有些時候PCA比LDA降維更優。
4. LDA算法優缺點:
優點:
- LDA在樣本分類時信息依賴均值而不是方差的時候,比PCA分類的算法更優
- 在降維過程中可以使用類別的先驗知識經驗,而像PCA這樣的無監督學習則無法使用類別先驗知識。
缺點:
- LDA與PCA都不適合對非高斯分布的樣本進行降維
- LDA降維最多降到類別數K-1的維數
- LDA在樣本分類信息依賴方差而不是均值的時候降維效果不好。
- LDA可能過度擬合數據。
總結
以上是生活随笔為你收集整理的机器学习笔记17-LDA算法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 探讨基于球谐函数的全局光照
- 下一篇: win7系统安装打印机驱动报错:Wind