【机器学习】浅析机器学习各大算法的适用场景
最近在參加一個(gè)分類算法競(jìng)賽,也正好整理各個(gè)分類機(jī)器學(xué)習(xí)算法的簡(jiǎn)單介紹,應(yīng)用場(chǎng)景和優(yōu)缺點(diǎn)。資源來自網(wǎng)上和自己個(gè)人理解。
一、邏輯回歸模型
1、理解邏輯回歸模型(LR)
邏輯回歸是一種分類算法,其原理是將線性回歸預(yù)測(cè)出來的數(shù)據(jù)映射到logit 函數(shù)上,從而完成對(duì)事件發(fā)生概率的預(yù)測(cè)(最終輸出預(yù)測(cè)標(biāo)簽 0,1)。
2、邏輯回歸模型的應(yīng)用場(chǎng)景
LR 是很多分類算法的基礎(chǔ)組件,它的好處是輸出值自然地落在 0 到 1 之間,并且有概率意義。因?yàn)?LR 本質(zhì)上是一個(gè)線性的分類器,所以處理不好特征之間相關(guān)的情況。
雖然預(yù)測(cè)效果一般,但勝在模型清洗,背后的概率學(xué)經(jīng)得起推敲。它擬合出來的參數(shù)就代表了每一個(gè)特征對(duì)結(jié)果的影響。也是一個(gè)理解數(shù)據(jù)的好工具。
使用條件:當(dāng)數(shù)據(jù)線性可分,特征空間不是很大的情況,不用在意新數(shù)據(jù)的情況,后續(xù)會(huì)有大量新數(shù)據(jù)的情況。
小結(jié):
用于分類:適合做很多分類算法的基礎(chǔ)組件。
用于預(yù)測(cè):預(yù)測(cè)事件發(fā)生的概率(輸出)。
用于分析:單一因素對(duì)某一個(gè)事件發(fā)生的影響因素分析(特征參數(shù)值)。
3、邏輯回歸的優(yōu)缺點(diǎn)
優(yōu)點(diǎn):
從整體模型來說,模型清洗,背后的概率推導(dǎo)經(jīng)得住推敲;
從輸出值來說,輸出值自然落在 0 到 1 之間,并且有概率意義;
從模型參數(shù)來說,參數(shù)代表每個(gè)特征對(duì)輸出的影響,可解釋性強(qiáng);
從運(yùn)行速度來說,實(shí)施簡(jiǎn)單,非常高效(計(jì)算量小、存儲(chǔ)占用低),可以在大數(shù)據(jù)場(chǎng)景中使用;
從過擬合角度來說,解決過擬合的方法很多,如 L1、L2正則化;
從多重共線性來說,L2 正則化就可以解決多重共線性問題;
缺點(diǎn):
(特征相關(guān)情況)因?yàn)樗举|(zhì)上是一個(gè)線性的分類器,所以處理不好特征之間相關(guān)的情況;
(特征空間)特征空間很大時(shí),性能不好;
(預(yù)測(cè)精度)容易欠擬合,預(yù)測(cè)精度不高;
二、樹模型
1、理解樹模型
決策樹模型是運(yùn)用于分類以及回歸的一種樹結(jié)構(gòu)。決策樹由節(jié)點(diǎn)和有向邊組成,一般一棵樹包含一個(gè)根節(jié)點(diǎn)、若干內(nèi)部節(jié)點(diǎn)和若干葉節(jié)點(diǎn)。決策樹的決策過程需要從根節(jié)點(diǎn)開始,待測(cè)數(shù)據(jù)與決策樹中的特征節(jié)點(diǎn)進(jìn)行比較,并按照比較結(jié)果選擇下一比較分支,直至葉節(jié)點(diǎn)作為最終的決策結(jié)果
2、樹模型的應(yīng)用
樹模型可以生成清晰的基于特征選擇不同預(yù)測(cè)結(jié)構(gòu)的樹狀結(jié)構(gòu),當(dāng)你希望可以更好的理解手上的數(shù)據(jù)的時(shí)候往往可以使用決策樹。同時(shí)它也是相對(duì)容易被供給的分類器(因?yàn)檫@里認(rèn)為的改變一些特征,是的分類器判斷錯(cuò)誤。常見于垃圾郵件躲避檢測(cè)中,因?yàn)闆Q策樹最終在底層的判斷是基于單個(gè)條件,攻擊者往往只需要改變很少的特征就可以躲過監(jiān)測(cè))。
小結(jié):
受限于它的簡(jiǎn)單性,決策樹更大的用處是作為一些更有用的算法的基石;
3、樹模型的優(yōu)缺點(diǎn)
優(yōu)點(diǎn):
容易理解、可讀性強(qiáng),比較直觀;
自變量/特征可以是連續(xù)變量,也可以是分類變量;
可處理缺失值;
基本不用做原始數(shù)據(jù)的預(yù)處理,如標(biāo)準(zhǔn)化等;
可以建立非線性模型;
即使是較大的數(shù)據(jù)及,其訓(xùn)練時(shí)間也很短;
劣勢(shì):
大型的決策樹較難解釋;
方差大的決策樹會(huì)導(dǎo)致模型表現(xiàn)較差;
容易出現(xiàn)過擬合;
三、集成模型
通過組合多個(gè)學(xué)習(xí)器來完成任務(wù),通過集成方法,可以將多個(gè)弱學(xué)習(xí)器組合成一個(gè)強(qiáng)分類器,因此集成學(xué)習(xí)的泛化能力一般比單一分類器要好。
集成方法主要包括 Bagging 和 Boosting,Bagging 和 Boosting 都是將已有的分類或回歸算法通過一定方式組合起來,最終得到不一樣的效果。
常見的基于 Bagging 思想的集成模型有:隨機(jī)森林、
基于 Boosting 思想的集成模型有:Adaboost、XgBoost、LightGBM 等。
Bagging 和 Boosting 的區(qū)別總結(jié)如下:
**在樣本選擇上:**Bagging 方法的訓(xùn)練集是從原始集中有放回的選取,所以原始集中選出的各輪訓(xùn)練集之間是獨(dú)立的;而 Boosting 方法需要每一輪的訓(xùn)練集不變,知識(shí)訓(xùn)練集中每個(gè)樣本在分類器中的權(quán)重發(fā)生變化。而權(quán)值是根據(jù)上一輪的分類結(jié)果進(jìn)行調(diào)整;
**在樣例權(quán)重上:**Bagging 方法使用均勻取樣,所以每個(gè)樣本的權(quán)重相等;而 Boosting 方法根據(jù)錯(cuò)誤率不斷調(diào)整樣本的權(quán)重,錯(cuò)誤率越大則權(quán)重越大;
在預(yù)測(cè)函數(shù)上:Bagging 方法中所有預(yù)測(cè)函數(shù)的權(quán)重相等;而 Boosting 方法匯總每個(gè)弱分類器都有相應(yīng)的權(quán)重,對(duì)于分類誤差小的分類器會(huì)有更大的權(quán)重;
并行計(jì)算上:Bagging 方法中各個(gè)預(yù)測(cè)函數(shù)可以并行生成;而 Boosting 方法各個(gè)預(yù)測(cè)函數(shù)只能順序生成,因?yàn)楹笠粋€(gè)模型參數(shù)需要前一輪模型的結(jié)果;
1、基于 bagging 思想的集成模型——隨機(jī)森林模型
隨機(jī)森林是一種集成算法。它首先隨機(jī)選取不同的特征和訓(xùn)練樣本,生成大量的決策樹,然后綜合這些決策樹的結(jié)果來進(jìn)行最終的分類。
隨機(jī)森林在現(xiàn)實(shí)分析中被大量使用,相對(duì)于決策樹,在準(zhǔn)確性有了很大的額提升,同時(shí)一定程度上改善了決策樹容易被攻擊的特點(diǎn)。
隨機(jī)森林的應(yīng)用:
當(dāng)數(shù)據(jù)維度相對(duì)低(幾十維),同時(shí)對(duì)準(zhǔn)確性有較高要求時(shí);
因?yàn)椴恍枰芏鄥?shù)調(diào)整就可以達(dá)到不錯(cuò)的效果,基本上不知道用什么方法的時(shí)候可以先試一下隨機(jī)森林;
隨機(jī)森林的優(yōu)缺點(diǎn):
優(yōu)點(diǎn):
在所有的算法中,隨機(jī)森林具有極好的準(zhǔn)確率;
能夠運(yùn)行在大數(shù)據(jù)集上;
能夠處理具有高維特征的輸入樣本,而且不需要降維;
能夠評(píng)估各個(gè)特征在分類問題上的重要性;
在生成過程中,能夠獲取內(nèi)部生成誤差的一種無偏估計(jì);
對(duì)于缺失值也能夠獲得很好的結(jié)果;
缺點(diǎn):
據(jù)觀測(cè),如果一些分類/回歸問題的訓(xùn)練數(shù)據(jù)中存在噪音,隨機(jī)森林中的數(shù)據(jù)集中會(huì)出現(xiàn)過擬合的現(xiàn)象;
相對(duì)決策樹來說,隨機(jī)森林算法更復(fù)雜,計(jì)算成本更高(因?yàn)?RF 是有多個(gè)決策樹組成);
由于其本身的復(fù)雜性,它們比其他類似的算法需要更多的時(shí)間來訓(xùn)練;
2、基于 boosting 思想的集成模型
XGBoost 模型
XGBoost 即梯度提升機(jī)器算法,其基本思想是把成百上千個(gè)分類準(zhǔn)確率較低的樹模型組合成一個(gè)準(zhǔn)確率較高的模型,該模型不斷迭代,每次迭代生成一顆新的樹,如何在每一步生成合理的樹是 Boosting 分類器的核心。
XGBoost 模型的應(yīng)用:
在不確定使用哪種模型時(shí),可以使用 xgboost 模型跑看下效果(很多競(jìng)賽的 top 都有用 xgboost);
特征選擇,可以根據(jù)模型輸出的特征重要性,來選擇相關(guān)的特征;
XGBoost 的優(yōu)缺點(diǎn):
優(yōu)點(diǎn):
XGBoost 支持多樣,并加入了正則項(xiàng),支持 shrinkage 縮減(相當(dāng)于學(xué)習(xí)率),增加了列抽樣來防止過擬合,能夠處理缺失值,并且支持并行;
缺點(diǎn):
對(duì)所有葉子節(jié)點(diǎn)一視同仁,有些葉子節(jié)點(diǎn)影響不大,從這方面來說加重了計(jì)算,還有就是預(yù)排序會(huì)消耗很大空間,且要保存特征的排序索引,消耗很多時(shí)間,計(jì)算量大;
LightGBM 模型
LGB 的應(yīng)用場(chǎng)合:
當(dāng)數(shù)據(jù)量較大的時(shí)候,使用 xgboost 需要更長(zhǎng)的時(shí)間,可以考慮用 LGB;
不想對(duì)類別特征進(jìn)行 one hot encoding 時(shí),可使用 LGB;
LGB 的優(yōu)缺點(diǎn):
優(yōu)點(diǎn):
內(nèi)存和計(jì)算上現(xiàn)象對(duì) xgb 有明顯優(yōu)勢(shì),支持多線程優(yōu)化;
支持直接輸入類別特征,不需要虛擬化;
缺點(diǎn):
leaf-wise 的建樹策略很容易過擬合,需要限制最大深度;
相對(duì) XGB 來說,LGB 較為粗糙,會(huì)損失一定精度;
本文來源:
https://www.zhihu.com/question/26726794/answer/1494975658
往期精彩回顧適合初學(xué)者入門人工智能的路線及資料下載機(jī)器學(xué)習(xí)及深度學(xué)習(xí)筆記等資料打印機(jī)器學(xué)習(xí)在線手冊(cè)深度學(xué)習(xí)筆記專輯《統(tǒng)計(jì)學(xué)習(xí)方法》的代碼復(fù)現(xiàn)專輯 AI基礎(chǔ)下載黃海廣老師《機(jī)器學(xué)習(xí)課程》視頻課黃海廣老師《機(jī)器學(xué)習(xí)課程》711頁完整版課件本站qq群955171419,加入微信群請(qǐng)掃碼:
總結(jié)
以上是生活随笔為你收集整理的【机器学习】浅析机器学习各大算法的适用场景的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: UC浏览器APP如何卸载插件
- 下一篇: Windows平台RTMP播放器/RTS