常見的機器學習算法
1.學習方式
常見的算法 | 介紹 | 常見的學習方法 | 應用場景 |
---|---|---|---|
監督學習 | 輸入數據成爲訓練數據,每組訓練數據都有一個明確的標識或結果,監督學習就是建立一個學習過程將預測結果與訓練數據的實際結果進行比較,不斷地調整預測模型,知道預測模型達到一個預期的準確率 | 邏輯迴歸和反向傳遞神經網絡 | 分類問題和迴歸問題 |
非監督的學習 | 數據不被標識,學習模型只是爲了推斷數據的內部結構,常見的應用場景包括關聯規則的學習以及聚類 | Apriori算法和k-means | 關聯規則學習以及聚類 |
半監督的學習 | 輸入的數據部分被標識,部分沒有被標識,正中學習模型可以用來預測,但是模型需要學習數據的內在結構以便合理的組織數據來進行預測 | 圖推論算法和拉普拉斯支持向量機 | 分類與迴歸 |
強化學習 | 輸入數據作爲模型的反饋,不像監督模型那樣,輸入數據僅僅是檢測模型對錯的方式,強化學習中,屬如數據直接反饋到模型,模型直接立即做出調整 | Q-learning和時間差學習 | 動態系統和機器人控制 |
2.算法的類似性
分類 | 說明 | 舉例 |
---|---|---|
迴歸算法 | 師徒採用誤差衡量變量之間關係的一種算法,迴歸算法是統計機器學習的利器,在機器學習領域,有時候是指一類問題,有時候指的的一種算法 | 最小二乘法,邏輯迴歸,逐步式迴歸,多元自適應迴歸樣條以及本地散點平滑估計 |
基於實例的方法 | 常常用來對決策問題進行建模,這種模型先取一批樣本數據,然後根據近似性吧新數據與樣本數據進行比較,通過這種方式尋找最佳匹配,基於實例的方法也被稱爲贏家通吃或者基於記憶的學習 | knn(k-nearest neighbor),學習矢量化,以及自組織映射算法 |
正則化方法 | 是迴歸算法的延伸,通常是對簡單模型給予獎勵,複雜模型給予懲罰 | ridgeregression least absolute shrinkage and selection operator 以及彈性網絡 |
決策樹學習 | 根據數據的屬性採用樹狀結構簡歷決策模型,決策樹常用來解決分類和迴歸問題 | 分類及迴歸樹,ID3,C4.5,decisionstump 隨機深林,多元自適應迴歸樣條以及梯度推理機 |
貝葉斯方法 | 基於貝葉斯定理的一種方法 | 樸素貝葉斯算法,平均但依賴估計,bayesian belief network BBN |
基於核的方法 | 支持向量機就是典型的代表,就是把輸入數據映射到一個高階的向量空間裏,讓一些分類和迴歸問題更容易解決 | 支持向量機,RBF,LDA(現象判別分析) |
聚類算法 | 就像迴歸一樣,描述的是一類問題,有時候描述的是一類算法,聚類算法就是按照中心點或者分層的方式對輸入數據進行歸併,聚類算法都是試圖尋找數據的內部結構,方便按照最大的共同點將數據進行歸類 | k-means和期望最大化的算法。 |
關聯規則學習 | 關聯規則學習通過尋找最能夠解釋數據變量之間關係的規則,來找出大量多元數據集中有用的關聯規則。 | Apriori算法和Eclat算法等。 |
人工神經網絡 | 人工神經網絡算法模擬生物神經網絡,是一類模式匹配算法。通常用於解決分類和迴歸問題。人工神經網絡是機器學習的一個龐大的分支,有幾百種不同的算法。(其中深度學習就是其中的一類算法,我們會單獨討論), | 感知器神經網絡(Perceptron Neural Network), 反向傳遞(Back Propagation), Hopfield網絡,自組織映射(Self-Organizing Map, SOM)。學習矢量量化(Learning Vector Quantization, LVQ) |
深度學習 | 深度學習算法是對人工神經網絡的發展。 在近期贏得了很多關注, 特別是百度也開始發力深度學習後, 更是在國內引起了很多關注。 在計算能力變得日益廉價的今天,深度學習試圖建立大得多也複雜得多的神經網絡。很多深度學習的算法是半監督式學習算法,用來處理存在少量未標識數據的大數據集。 | 受限波爾茲曼機(Restricted Boltzmann Machine, RBN), Deep Belief Networks(DBN),卷積網絡(Convolutional Network), 堆棧式自動編碼器(Stacked Auto-encoders)。 |
降低維度的算法 | 像聚類算法一樣,降低維度算法試圖分析數據的內在結構,不過降低維度算法是以非監督學習的方式試圖利用較少的信息來歸納或者解釋數據。這類算法可以用於高維數據的可視化或者用來簡化數據以便監督式學習使用。 | 主成份分析(Principle Component Analysis, PCA),偏最小二乘迴歸(Partial Least Square Regression,PLS), Sammon映射,多維尺度(Multi-Dimensional Scaling, MDS), 投影追蹤(Projection Pursuit)等。 |
集成算法 | 集成算法用一些相對較弱的學習模型獨立地就同樣的樣本進行訓練,然後把結果整合起來進行整體預測。集成算法的主要難點在於究竟集成哪些獨立的較弱的學習模型以及如何把學習結果整合起來。這是一類非常強大的算法,同時也非常流行。 | Boosting, Bootstrapped Aggregation(Bagging), AdaBoost,堆疊泛化(Stacked Generalization, Blending),梯度推進機(Gradient Boosting Machine, GBM),隨機森林(Random Forest)。 |
參考文獻
人工智能之機器學習常見算法 - 惜雨 - 博客園 https://www.cnblogs.com/xiyushimei/p/7874019.html