收藏 | 機器學習模型與算法最全分類匯總!
機器學習
Author:louwill
Machine Learning Lab
本文總共涉及了26種機器學習模型與算法,幾乎涵蓋了全部主流的機器學習算法。包括線性回歸、邏輯回歸、Lasso回歸、Ridge回歸、線性判別分析、近鄰、決策樹、感知機、神經(jīng)網(wǎng)絡、支持向量機、AdaBoost、GBDT、XGBoost、LightGBM、CatBoost、隨機森林、聚類算法與kmeans、主成分分析、奇異值分解、最大信息熵、樸素貝葉斯、貝葉斯網(wǎng)絡、EM算法、隱馬爾可夫模型、條件隨機場和馬爾可夫鏈蒙特卡洛方法。
其中決策樹、神經(jīng)網(wǎng)絡、支持向量機和聚類算法都各自代表了一個大類算法,比如說決策樹具體包括ID3、C4.5和CART,神經(jīng)網(wǎng)絡包括DNN、CNN或者是RNN等其他網(wǎng)絡模型,這里僅對大類算法做區(qū)分。
下面我們分別從單模型和集成學習模型、監(jiān)督學習和無監(jiān)督學習模型和判別式模型和生成式模型、概率模型和非概率模型等多個維度來討論本書所涉及到的26個算法。

圖1 機器學習模型知識體系
單模型與集成模型
從模型的個數(shù)和性質(zhì)角度來看,我們可以將機器學習模型劃分為單模型(single model)和集成模型(ensemble model)。所謂單模型,是指機器學習模型僅包括一個模型,以某種模型獨立進行訓練和驗證使用的。本書監(jiān)督學習模型中大多數(shù)模型都可以算作單模型,包括線性回歸、邏輯回歸、Lasso回歸、Ridge回歸、線性判別分析、近鄰、決策樹、感知機、神經(jīng)網(wǎng)絡、支持向量機和樸素貝葉斯等。
與單模型相對立的,就是集成模型,集成模型就是將多個單模型進行組合構(gòu)成一個強模型,這個強模型能取所有單模型之所長,達到一個相對的最佳性能。集成模型中的單模型既可以是同種類別的,也可以是不同類別的,總體呈現(xiàn)一種“多而不同”的特征。常用的集成模型包括Boosting和Bagging兩大類,主要包括AdaBoost、GBDT、XGBoost、LightGBM、CatBoost和隨機森林等模型。單模型和集成模型分類如圖2所示。

圖2 單模型與集成模型
監(jiān)督模型與無監(jiān)督模型
監(jiān)督模型(supervised model)和無監(jiān)督模型(unsupervised model)代表了機器學習模型的最典型劃分方式,幾乎所有的模型都可以歸類到這兩類模型當中。監(jiān)督模型是指模型在訓練過程中根據(jù)數(shù)據(jù)輸入和輸出進行學習,監(jiān)督學習模型包括分類(classification)、回歸(regression)和標注(tagging)等模型。無監(jiān)督模型是指從無標注的數(shù)據(jù)中學習得到模型,主要包括聚類(clustering)、降維(dimensionality reduction)和一些概率估計模型。
圖2中所有的單模型和集成模型都是監(jiān)督模型,以及圖1中的一部分概率模型也屬于監(jiān)督模型,包括隱馬爾可夫模型和條件隨機場,它們屬于監(jiān)督模型中的標注模型。無監(jiān)督模型主要包括kmeans聚類、譜聚類和層次聚類等一些聚類模型,以及主成分分析和奇異值分解等降維模型。另外,馬爾可夫鏈蒙特卡洛方法也可以作為一種概率無監(jiān)督模型。監(jiān)督模型和無監(jiān)督模型的劃分如圖3所示。

圖3 監(jiān)督模型與無監(jiān)督模型
生成式模型和判別式模型
監(jiān)督模型在機器學習模型中占主要部分,針對監(jiān)督模型,我們又可以根據(jù)其模型學習方式將其分為生成式模型(generative model)和判別式模型(discriminative model)。生成式模型的學習特點在于學習數(shù)據(jù)的聯(lián)合概率分布,然后基于聯(lián)合分布求條件概率分布作為預測模型。如下式所示。

常用的生成式模型包括樸素貝葉斯、隱馬爾可夫模型以及隱含狄利克雷分布模型等。
判別式模型的學習特點在于基于數(shù)據(jù)直接學習決策函數(shù)或者條件概率分布作為預測模型,判別式模型關心的是對于給定的輸入,應該預測出什么樣的。常用的判別式模型有很多,像線性回歸、邏輯回歸、Lasso回歸、Ridge回歸、線性判別分析、近鄰、決策樹、感知機、神經(jīng)網(wǎng)絡、支持向量機、最大信息熵模型、全部集成模型以及條件隨機場等,都屬于判別式模型。生成式與判別式模型劃分如圖4所示。

圖4 生成式模型與判別式模型
概率模型與非概率模型
機器學習模型還有一種根據(jù)模型函數(shù)是否為概率模型的方式,將機器學習模型分為概率模型(probabilistic model)和非概率模型(non-probabilistic model)。通過對輸入和輸出之間的聯(lián)合概率分布和條件概率分布進行建模的機器學習模型,都可以稱之為概率模型。而通過對決策函數(shù)建模的機器學習模型,即為非概率模型。
常用的概率模型包括樸素貝葉斯、隱馬爾可夫模型、貝葉斯網(wǎng)絡和馬爾可夫鏈蒙特卡洛等,而線性回歸、近鄰、支持向量機、神經(jīng)網(wǎng)絡以及集成模型都可以算是非概率模型。
需要注意的是,概率模型與非概率模型的劃分并不絕對,有時候有些機器學習模型既可以表示為概率模型,也可以表示為非概率模型。比如說決策樹、邏輯回歸、最大熵模型和條件隨機場等模型,就兼具概率模型和非概率模型兩種解釋。概率模型和非概率模型的劃分如圖5所示。

圖5 概率模型與非概率模型
往期精彩:
【原創(chuàng)首發(fā)】機器學習公式推導與代碼實現(xiàn)30講.pdf
【原創(chuàng)首發(fā)】深度學習語義分割理論與實戰(zhàn)指南.pdf
求個在看
