1、爲何要降維:算法
一、避免維數災難,高維狀況下容易產生過擬合spa
二、特徵之間若是存在明顯的相關性(也叫共線性),此時就須要降維blog
三、降維能夠提取數據中的有效信息,去除噪音數據ip
四、降維能夠下降數據的複雜性,減小模型的訓練時間ci
五、能夠方便對數據進行可視化處理,由於維數很高的話,沒法可視化class
2、PCA降維思想可視化
尋找某個軸線,使得樣本映射到該軸線後,可以有最大的可區分度,衡量可區分度的指標就是求方差,如今的問題是如何求得這個軸線,使方差最大。方法
用方差來定義樣本間的間距,方差越大表示數據越稀鬆,方差越小則表示數據分佈越密集,下圖即方差公式。im
在求解最大方差前,爲方便計算,可先對數據進行去均值處理。數據
去均值後,求最大方差公式能夠減小計算的複雜度。
求知足最大方差的軸線可用梯度上升法求解。
PCA和LDA都是降維算法,他們的主要區別是:
PCA爲無監督方法,主要是主成分分析方法,Principal Component Analysis, 簡稱PCA。
PCA能夠降到任意維度。
LDA是有監督方法,主要是線性判別分析法,Linear Discriminant Analysis ,簡稱LDA。
LDA最多隻能降到數據類別 -1