最近一段時間一直在忙秋招,在參加秋招的過程當中順便總結了一下機器學習中經常使用的一些算法。算法
降維是機器學習中很重要的一種思想。在機器學習中會遇到一些高維的數據集,而在高維數據集的其情形下會出現數據樣本稀疏,距離計算等困難,稱之爲「維度災難」;另外就是高維特徵中容易出現特徵之間的線性相關,即意味着特徵是冗餘的。基於上述問題,降維的思想就出現了。機器學習
降維的方法有不少,並且分爲線性降維和非線性降維。函數
爲何先介紹SVD算法,由於在後面的PCA算法的實現用到了SVD算法。SVD算法不光能夠用於降維算法中的特徵分解,還能夠用於推薦系統,以及天然語言處理等領域。是不少機器學習算法的基石。學習
PCA算法能夠說是最經常使用的算法,在數據壓縮,消除冗餘等領域有着普遍的使用。spa
核PCA方法it
class