0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于集成學(xué)習(xí)的決策介紹(下)

jf_78858299 ? 來(lái)源:人工智能大講堂 ? 作者:阿澤 復(fù)旦大學(xué) ? 2023-02-17 15:52 ? 次閱讀

4.2 細(xì)節(jié)

4.2.1 損失函數(shù)

Adaboost 模型是加法模型,學(xué)習(xí)算法為前向分步學(xué)習(xí)算法,損失函數(shù)為指數(shù)函數(shù)的分類問題。

加法模型:最終的強(qiáng)分類器是由若干個(gè)弱分類器加權(quán)平均得到的。

前向分布學(xué)習(xí)算法:算法是通過(guò)一輪輪的弱學(xué)習(xí)器學(xué)習(xí),利用前一個(gè)弱學(xué)習(xí)器的結(jié)果來(lái)更新后一個(gè)弱學(xué)習(xí)器的訓(xùn)練集權(quán)重。第 k 輪的強(qiáng)學(xué)習(xí)器為:

圖片

定義損失函數(shù)為 n 個(gè)樣本的指數(shù)損失函數(shù):

圖片

利用前向分布學(xué)習(xí)算法的關(guān)系可以得到:

圖片

因?yàn)?圖片已知,所以令 圖片,隨著每一輪迭代而將這個(gè)式子帶入損失函數(shù),損失函數(shù)轉(zhuǎn)化為:

圖片

我們求 圖片 ,可以得到:

圖片

圖片帶入損失函數(shù),并對(duì)圖片求導(dǎo),使其等于 0,則就得到了:

圖片

其中, 圖片即為我們前面的分類誤差率。

圖片

最后看樣本權(quán)重的更新。利用 圖片圖片,即可得:圖片

這樣就得到了樣本權(quán)重更新公式。

4.2.2 正則化

為了防止 Adaboost 過(guò)擬合,我們通常也會(huì)加入正則化項(xiàng),這個(gè)正則化項(xiàng)我們通常稱為步長(zhǎng)(learning rate)。對(duì)于前面的弱學(xué)習(xí)器的迭代圖片

加上正則化項(xiàng) 圖片 我們有:

圖片

圖片 的取值范圍為 0<圖片≤1 。對(duì)于同樣的訓(xùn)練集學(xué)習(xí)效果,較小的 圖片 意味著我們需要更多的弱學(xué)習(xí)器的迭代次數(shù)。通常我們用步長(zhǎng)和迭代最大次數(shù)一起來(lái)決定算法的擬合效果。

4.3 優(yōu)缺點(diǎn)

4.3.1 優(yōu)點(diǎn)

  1. 分類精度高;
  2. 可以用各種回歸分類模型來(lái)構(gòu)建弱學(xué)習(xí)器,非常靈活;
  3. 不容易發(fā)生過(guò)擬合。

4.3.2 缺點(diǎn)

  1. 對(duì)異常點(diǎn)敏感,異常點(diǎn)會(huì)獲得較高權(quán)重。

5. GBDT

GBDT(Gradient Boosting Decision Tree)是一種迭代的決策樹算法,該算法由多棵決策樹組成,從名字中我們可以看出來(lái)它是屬于 Boosting 策略。GBDT 是被公認(rèn)的泛化能力較強(qiáng)的算法。

5.1 思想

GBDT 由三個(gè)概念組成:Regression Decision Tree(即 DT)、Gradient Boosting(即 GB),和 Shrinkage(一個(gè)重要演變)

5.1.1 回歸樹(Regression Decision Tree)

如果認(rèn)為 GBDT 由很多分類樹那就大錯(cuò)特錯(cuò)了(雖然調(diào)整后也可以分類)。對(duì)于分類樹而言,其值加減無(wú)意義(如性別),而對(duì)于回歸樹而言,其值加減才是有意義的(如說(shuō)年齡)。GBDT 的核心在于累加所有樹的結(jié)果作為最終結(jié)果,所以 GBDT 中的樹都是回歸樹,不是分類樹,這一點(diǎn)相當(dāng)重要。

回歸樹在分枝時(shí)會(huì)窮舉每一個(gè)特征的每個(gè)閾值以找到最好的分割點(diǎn),衡量標(biāo)準(zhǔn)是最小化均方誤差。

5.1.2 梯度迭代(Gradient Boosting)

上面說(shuō)到 GBDT 的核心在于累加所有樹的結(jié)果作為最終結(jié)果,GBDT 的每一棵樹都是以之前樹得到的殘差來(lái)更新目標(biāo)值,這樣每一棵樹的值加起來(lái)即為 GBDT 的預(yù)測(cè)值。

模型的預(yù)測(cè)值可以表示為:

圖片

圖片為基模型與其權(quán)重的乘積,模型的訓(xùn)練目標(biāo)是使預(yù)測(cè)值 圖片逼近真實(shí)值 y,也就是說(shuō)要讓每個(gè)基模型的預(yù)測(cè)值逼近各自要預(yù)測(cè)的部分真實(shí)值。由于要同時(shí)考慮所有基模型,導(dǎo)致了整體模型的訓(xùn)練變成了一個(gè)非常復(fù)雜的問題。所以研究者們想到了一個(gè)貪心的解決手段:每次只訓(xùn)練一個(gè)基模型。那么,現(xiàn)在改寫整體模型為迭代式:

圖片

這樣一來(lái),每一輪迭代中,只要集中解決一個(gè)基模型的訓(xùn)練問題:使 圖片逼近真實(shí)值 y 。

舉個(gè)例子:比如說(shuō) A 用戶年齡 20 歲,第一棵樹預(yù)測(cè) 12 歲,那么殘差就是 8,第二棵樹用 8 來(lái)學(xué)習(xí),假設(shè)其預(yù)測(cè)為 5,那么其殘差即為 3,如此繼續(xù)學(xué)習(xí)即可。

那么 Gradient 從何體現(xiàn)?其實(shí)很簡(jiǎn)單,其殘差其實(shí)是最小均方損失函數(shù)關(guān)于預(yù)測(cè)值的反向梯度(劃重點(diǎn)):

圖片

也就是說(shuō),預(yù)測(cè)值和實(shí)際值的殘差與損失函數(shù)的負(fù)梯度相同。

但要注意,基于殘差 GBDT 容易對(duì)異常值敏感,舉例:

圖片

很明顯后續(xù)的模型會(huì)對(duì)第 4 個(gè)值關(guān)注過(guò)多,這不是一種好的現(xiàn)象,所以一般回歸類的損失函數(shù)會(huì)用絕對(duì)損失或者 Huber 損失函數(shù)來(lái)代替平方損失函數(shù)。

圖片

GBDT 的 Boosting 不同于 Adaboost 的 Boosting,GBDT 的每一步殘差計(jì)算其實(shí)變相地增大了被分錯(cuò)樣本的權(quán)重,而對(duì)與分對(duì)樣本的權(quán)重趨于 0,這樣后面的樹就能專注于那些被分錯(cuò)的樣本。

5.1.3 縮減(Shrinkage)

Shrinkage 的思想認(rèn)為,每走一小步逐漸逼近結(jié)果的效果要比每次邁一大步很快逼近結(jié)果的方式更容易避免過(guò)擬合。即它并不是完全信任每一棵殘差樹。圖片

Shrinkage 不直接用殘差修復(fù)誤差,而是只修復(fù)一點(diǎn)點(diǎn),把大步切成小步。本質(zhì)上 Shrinkage 為每棵樹設(shè)置了一個(gè) weight,累加時(shí)要乘以這個(gè) weight,當(dāng) weight 降低時(shí),基模型數(shù)會(huì)配合增大。

5.2 優(yōu)缺點(diǎn)

5.2.1 優(yōu)點(diǎn)

  1. 可以自動(dòng)進(jìn)行特征組合,擬合非線性數(shù)據(jù);
  2. 可以靈活處理各種類型的數(shù)據(jù)。

5.2.2 缺點(diǎn)

  1. 對(duì)異常點(diǎn)敏感。

5.3 與 Adaboost 的對(duì)比

5.3.1 相同:

  1. 都是 Boosting 家族成員,使用弱分類器;
  2. 都使用前向分布算法;

5.3.2 不同:

  1. 迭代思路不同:Adaboost 是通過(guò)提升錯(cuò)分?jǐn)?shù)據(jù)點(diǎn)的權(quán)重來(lái)彌補(bǔ)模型的不足(利用錯(cuò)分樣本),而 GBDT 是通過(guò)算梯度來(lái)彌補(bǔ)模型的不足(利用殘差);
  2. 損失函數(shù)不同:AdaBoost 采用的是指數(shù)損失,GBDT 使用的是絕對(duì)損失或者 Huber 損失函數(shù);

6. 參考

  1. 機(jī)器學(xué)習(xí)算法中 GBDT 與 Adaboost 的區(qū)別與聯(lián)系是什么? - Frankenstein 的回答 - 知乎

  2. 為什么說(shuō)bagging是減少variance,而boosting是減少bias

  3. Ensemble Learning - 周志華

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    機(jī)器學(xué)習(xí)中常用的決策樹算法技術(shù)解析

    決策樹是最重要的機(jī)器學(xué)習(xí)算法之一,其可被用于分類和回歸問題。本文中,我們將介紹分類部分。
    發(fā)表于 10-12 16:39 ?1289次閱讀
    機(jī)器<b class='flag-5'>學(xué)習(xí)</b>中常用的<b class='flag-5'>決策</b>樹算法技術(shù)解析

    不可錯(cuò)過(guò) | 集成學(xué)習(xí)入門精講

    各方面表現(xiàn)都很好的模型。但往往我們只能得到一些弱監(jiān)督模型(在某些方面表現(xiàn)比較好),集成學(xué)習(xí)通常就是結(jié)合多個(gè)簡(jiǎn)單的弱機(jī)器學(xué)習(xí)算法,去做更準(zhǔn)確的決策。用俗語(yǔ)來(lái)講,就是集眾人智慧去做相應(yīng)的
    發(fā)表于 06-06 10:11

    決策樹在機(jī)器學(xué)習(xí)的理論學(xué)習(xí)與實(shí)踐

    決策樹在機(jī)器學(xué)習(xí)的理論學(xué)習(xí)與實(shí)踐
    發(fā)表于 09-20 12:48

    機(jī)器學(xué)習(xí)決策介紹

    機(jī)器學(xué)習(xí)——決策樹算法分析
    發(fā)表于 04-02 11:48

    介紹支持向量機(jī)與決策集成等模型的應(yīng)用

    本文主要介紹支持向量機(jī)、k近鄰、樸素貝葉斯分類 、決策樹、決策集成等模型的應(yīng)用。講解了支持向量機(jī)SVM線性與非線性模型的適用環(huán)境,并對(duì)核函數(shù)技巧作出深入的分析,對(duì)線性Linear核函
    發(fā)表于 09-01 06:57

    決策樹的生成資料

    在本文中,我們將討論一種監(jiān)督式學(xué)習(xí)算法。最新一代意法半導(dǎo)體 MEMS 傳感器內(nèi)置一個(gè)基于決策樹分類器的機(jī)器學(xué)習(xí)核心(MLC)。這些產(chǎn)品很容易通過(guò)后綴中的 X 來(lái)識(shí)別(例如,LSM6DSOX)。這種
    發(fā)表于 09-08 06:50

    決策樹的介紹

    關(guān)于決策樹的介紹,是一些很基礎(chǔ)的介紹,不過(guò)是英文介紹。
    發(fā)表于 09-18 14:55 ?0次下載

    機(jī)器學(xué)習(xí)決策滲透著偏見,能把決策權(quán)完全交給機(jī)器嗎?

    隨著人工智能的發(fā)展,人類將會(huì)把越來(lái)越多的決策權(quán)交給機(jī)器。但是,從目前的一些事例看,基于機(jī)器學(xué)習(xí)決策并非那么公正完美,相反,那些決策也滲透著偏見。近期的一份研究報(bào)告中,Google的一
    發(fā)表于 05-11 10:33 ?1466次閱讀

    決策樹的原理和決策樹構(gòu)建的準(zhǔn)備工作,機(jī)器學(xué)習(xí)決策樹的原理

    希望通過(guò)所給的訓(xùn)練數(shù)據(jù)學(xué)習(xí)一個(gè)貸款申請(qǐng)的決策樹,用于對(duì)未來(lái)的貸款申請(qǐng)進(jìn)行分類,即當(dāng)新的客戶提出貸款申請(qǐng)時(shí),根據(jù)申請(qǐng)人的特征利用決策樹決定是否批準(zhǔn)貸款申請(qǐng)。
    的頭像 發(fā)表于 10-08 14:26 ?5948次閱讀

    決策樹的基本概念/學(xué)習(xí)步驟/算法/優(yōu)缺點(diǎn)

    本文將介紹決策樹的基本概念、決策學(xué)習(xí)的3個(gè)步驟、3種典型的決策樹算法、決策樹的10個(gè)優(yōu)缺點(diǎn)。
    發(fā)表于 01-27 10:03 ?2490次閱讀
    <b class='flag-5'>決策</b>樹的基本概念/<b class='flag-5'>學(xué)習(xí)</b>步驟/算法/優(yōu)缺點(diǎn)

    為什么要使用集成學(xué)習(xí) 機(jī)器學(xué)習(xí)建模的偏差和方差

    我們?cè)谏钪凶龀龅脑S多決定都是基于其他人的意見,而通常情況由一群人做出的決策比由該群體中的任何一個(gè)成員做出的決策會(huì)產(chǎn)生更好的結(jié)果,這被稱為群體的智慧。集成
    的頭像 發(fā)表于 08-14 09:52 ?2948次閱讀
    為什么要使用<b class='flag-5'>集成</b><b class='flag-5'>學(xué)習(xí)</b> 機(jī)器<b class='flag-5'>學(xué)習(xí)</b>建模的偏差和方差

    強(qiáng)化學(xué)習(xí)與智能駕駛決策規(guī)劃

    本文介紹了強(qiáng)化學(xué)習(xí)與智能駕駛決策規(guī)劃。智能駕駛中的決策規(guī)劃模塊負(fù)責(zé)將感知模塊所得到的環(huán)境信息轉(zhuǎn)化成具體的駕駛策略,從而指引車輛安全、穩(wěn)定的行駛。真實(shí)的駕駛場(chǎng)景往往具有高度的復(fù)雜性及不確
    的頭像 發(fā)表于 02-08 14:05 ?1779次閱讀

    基于集成學(xué)習(xí)決策介紹(上)

    本文主要介紹基于集成學(xué)習(xí)決策樹,其主要通過(guò)不同學(xué)習(xí)框架生產(chǎn)基學(xué)習(xí)器,并綜合所有基
    的頭像 發(fā)表于 02-17 15:52 ?712次閱讀
    基于<b class='flag-5'>集成</b><b class='flag-5'>學(xué)習(xí)</b>的<b class='flag-5'>決策</b><b class='flag-5'>介紹</b>(上)

    基于 Boosting 框架的主流集成算法介紹

    本文是決策樹的第三篇,主要介紹基于 Boosting 框架的主流集成算法,包括 XGBoost 和 LightGBM。 XGBoost
    的頭像 發(fā)表于 02-17 15:58 ?2710次閱讀
    基于 Boosting 框架的主流<b class='flag-5'>集成</b>算法<b class='flag-5'>介紹</b>(<b class='flag-5'>下</b>)

    什么是集成學(xué)習(xí)算法-1

    同質(zhì)集成:只包含同種類型算法,比如決策集成全是決策樹,異質(zhì)集成:包含不同種類型算法,比如同時(shí)包含神經(jīng)網(wǎng)絡(luò)和
    的頭像 發(fā)表于 02-24 16:37 ?1082次閱讀
    什么是<b class='flag-5'>集成</b><b class='flag-5'>學(xué)習(xí)</b>算法-1