機器學習算法總結

前言:

最近一段時間一直在忙秋招,在參加秋招的過程當中順便總結了一下機器學習中經常使用的一些算法。算法

1.降維(SVD,PCA)

降維是機器學習中很重要的一種思想。在機器學習中會遇到一些高維的數據集,而在高維數據集的其情形下會出現數據樣本稀疏,距離計算等困難,稱之爲「維度災難」;另外就是高維特徵中容易出現特徵之間的線性相關,即意味着特徵是冗餘的。基於上述問題,降維的思想就出現了。機器學習

降維的方法有不少,並且分爲線性降維和非線性降維。函數

線性降維包括:
  • 奇異值分解(SVD)

    爲何先介紹SVD算法,由於在後面的PCA算法的實現用到了SVD算法。SVD算法不光能夠用於降維算法中的特徵分解,還能夠用於推薦系統,以及天然語言處理等領域。是不少機器學習算法的基石。學習

  • 主成分分析(PCA)

    PCA算法能夠說是最經常使用的算法,在數據壓縮,消除冗餘等領域有着普遍的使用。spa

非線性降維方法:
  • 核PCA方法it

    有時數據不是線性的,沒法用線性降維得到好的結果,那麼這裏就引入了咱們的核PCA方法來處理這些問題。須要在求協方差矩陣時,將數據先映射到高維(根據低維不可分的數據在高維一定可分的原理),而後再對這高維的數據進行PCA降維處理,爲了減小計算量,像支持向量機中那樣用核函數來處理求內積的問題。這類方法就是核主成分分析方法(KPCA),KPCA因爲要作核運算,所以計算量比PCA大不少class

相關文章
相關標籤/搜索