LDA算法原理及LDA与PCA的比较
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降維更優,有些時候PCA比LDA降維更優。
4. LDA算法優缺點:
優點:
缺點:
總結
以上是生活随笔為你收集整理的LDA算法原理及LDA与PCA的比较的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 全局光照(简述)
- 下一篇: 刷网课-踩坑——jsDOM获取不到页面元