作者 | 冰 · 冰
本文及圖的作者是兩個人,她們是一個女子博士團體——冰 · 冰
圖中整理了機器學習的各種方法,大體分為監督式學習、半監督式學習、無監督式學習、增強學習、其他五大類,每一類都有很多算法實現。點擊查看大圖,下面的內容是文字版的整理。
編輯 | 數說君
一、監督式學習 Supervised Learning
在監督式學習下,每組訓練數據都有一個標識值或結果值,如客戶流失對應1,不流失對應0。在建立預測模型的時候,監督式學習建立一個學習過程,將預測的結果與訓練數據的實際結果進行比較,不斷的調整預測模型,直到模型的預測結果達到一個預期的準確率。
1. 分類 Classification
(1)K最近鄰 K-Nearest Neighbor (KNN)
(2)樸素貝葉斯 Naive Bayes
(3)決策樹 Decision Tree
◆ C4.5
◆ 分類回歸樹 Classification And Regression Tree (CART)
(4)支持向量機器 Support Vector Machine (SVM)
2. 回歸 Regression
(1)線性回歸 linear regression
(2)局部加權回歸 Locally weighted regression
(3)邏輯回歸 logistic Regression
(4)逐步回歸 stepwise regression
(5)多元自適應回歸樣條法 multivariate adaptive regression splines
(6)局部散點平滑估計 Locally estimated scatter plot smoothing ( LOESS )
(7)嶺回歸 Ridge Regression
(8)Least Absolute Shrinkage and Selection Operator ( LASSO )
(9)彈性網絡 Elastic Net
(10)多項式回歸 Polynomial Regression
3. 排序 Rank
(1)單文檔分類 Pointwise
◆ McRank
(2)文檔對方法(Pairwise)
◆ Ranking SVM
◆ RankNet
◆ Frank
◆ RankBoost
(3)文檔列表方法(Listwise)
◆ AdaRank
◆ SoftRank
◆ LambdaMART
4. 匹配學習
(1)人工神經網絡
◆ 感知神經網絡 Perception Neural Network
◆ 反向傳遞 Back Propagation
◆ Hopfield網絡
◆ 自組織映射 Self-Organizing Map ( SOM )
◆ 學習矢量量化 Learning Vector Quantization ( LVQ )
二、半監督學習
在半監督學習方式下,訓練數據有部分被標識,部分沒有被標識,這種模型首先需要學習數據的內在結構,以便合理的組織數據來進行預測。算法上,包括一些對常用監督式學習算法的延伸,這些算法首先試圖對未標識數據進行建模,在此基礎上再對標識的數據進行預測。如深度學習:
1. 深度學習 Deep Learning
深度學習是 監督學習的匹配學習中人工神經網絡延伸出來發展出來的。
(1)受限波爾茲曼機 Restricted Boltzmann Machine ( RBM )
(2)深度信念網絡 Deep Belief Networks ( DBN )
(3)卷積網絡 Convolutional Network
(4)棧式自編碼 Stacked Auto-encoders
三、無監督學習 Unsupervised Learning
在非監督式學習中,數據并不被特別標識,學習模型是為了推斷出數據的一些內在結構。
1. 聚類 Cluster
(1)K均值 k-means
(2)最大期望算法 Expectation Maximization ( EM )
(3)降維方法 Dimensionality Reduction
◆ 主成分分析Principal Component Analysis ( PCA )
◆ 偏最小二乘回歸 Partial Least Squares Regression ( PLS )
◆ Sammon映射 Sammon Mapping
◆ 多維尺度分析 Multidimensional Scaling ( MDS )
◆ 投影尋蹤 Projection Pursuit
◆ RD
2. 關聯規則 Association Rule
(1)Apriori
(2)Eclat
四、增強學習 Reinforcement Learning
在之前的討論中,我們總是給定一個樣本x,然后給或者不給標識值或結果值(給了就是監督式學習,不給就是無監督式學習)。之后對樣本進行擬合、分類、聚類或者降維等操作。然而對于很多序列決策或者控制問題,很難有這么規則的樣本。比如,四足機器人的控制問題,剛開始都不知道應該讓其動那條腿,在移動過程中,也不知道怎么讓機器人自動找到合適的前進方向。
增強學習要解決的是這樣的問題:一個能感知環境的自治agent,怎樣通過學習選擇能達到其目標的最優動作。這個很具有普遍性的問題應用于學習控制移動機器人,在工廠中學習最優操作工序以及學習棋類對弈等。當agent在其環境中做出每個動作時,施教者會提供獎勵或懲罰信息,以表示結果狀態的正確與否。例如,在訓練agent進行棋類對弈時,施教者可在游戲勝利時給出正回報,而在游戲失敗時給出負回報,其他時候為零回報。agent的任務就是從這個非直接的,有延遲的回報中學習,以便后續的動作產生最大的累積效應。
1. Q-Learning
2. 時間差學習 Temporal difference learning
五、其他
集成算法
集成算法用一些相對較弱的學習模型獨立地就同樣的樣本進行訓練,然后把結果整合起來進行整體預測。
1. Boosting
2. Bootstrapped Aggregation ( Bagging )
3. AdaBoost
4. 堆疊泛化 Stacked Generalization
5. 梯度推進機 Gradient Boosting Machine ( GBM )
6. 隨機森林 Random Forest
圖中還總結了機器學習的應用領域,在圖左上角。目前,機器學習被廣泛運用在:
數據挖掘
計算機視覺
自然語言處理
生物特征識別
搜索引擎
醫學診斷
信用卡欺詐檢測
證券市場分析
DNA測序
語音/手寫識別
戰略游戲
機器人運用
等等領域。
對各種算法感興趣的,可以關注我們,【數說學院】將會慢慢給大家介紹。
數說工作室
經濟&科技 | 大數據&工業4.0
微信ID:shushuojun