日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

集成学习-Boosting集成学习算法GBDT

發(fā)布時(shí)間:2025/3/21 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 集成学习-Boosting集成学习算法GBDT 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?

GBDT算法的核心為:先構(gòu)造一個(gè)(決策)樹,然后不斷在已有模型和實(shí)際樣本輸出的殘差上再構(gòu)造一顆樹,依次迭代。

目錄

Decistion Tree(決策樹)

Gradient Boosting(梯度提升)

Shrinkage(漸變)

GBDT算法流程

回歸算法

二分類算法

多分類算法

GBDT損失函數(shù)

GBDT正則化

GBDT的兩個(gè)不同版本

sklearn參數(shù)

GBDT算法優(yōu)缺點(diǎn)

GBDT的優(yōu)點(diǎn)

GBDT的缺點(diǎn)


GBDT也是集成學(xué)習(xí)Boosting家族的成員,但是卻和傳統(tǒng)的Adaboost有很大的不同。

回顧下AdaBoost(集成學(xué)習(xí)-Boosting集成學(xué)習(xí)算法AdaBoost),我們是利用前一輪迭代弱學(xué)習(xí)器的誤差率來更新訓(xùn)練集樣本的權(quán)重,這樣一輪輪的迭代下去。

GBDT也是迭代,但是是基于迭代累加的決策樹算法,它通過構(gòu)造一組弱的學(xué)習(xí)器(樹),并把多顆決策樹的結(jié)果累加起來作為最終的預(yù)測輸出,弱學(xué)習(xí)器限定了只能使用CART回歸樹模型。GBDT這個(gè)算法有很多名字,但都是同一個(gè)算法:

GBRT (Gradient Boost Regression Tree) 漸進(jìn)梯度回歸樹

GBDT (Gradient Boost Decision Tree) 漸進(jìn)梯度決策樹

MART (MultipleAdditive Regression Tree) 多決策回歸樹

GBDT算法主要由三個(gè)部分組成:?

Decistion Tree(即DT?回歸樹)

Gradient Boosting(即GB?梯度提升)

Shrinkag(漸變)

Decistion Tree(決策樹)

提起決策樹(DT,Decision Tree) 絕大部分人首先想到的就是C4.5分類決策樹。但如果一開始就把GBDT中的樹想成分類樹,那就是錯(cuò)誤的認(rèn)識(shí),所以說千萬不要以為GBDT是很多棵分類樹。

決策樹分為兩大類,回歸樹和分類樹。前者用于預(yù)測實(shí)數(shù)值,如明天的溫度、用戶的年齡、網(wǎng)頁的相關(guān)程度;后者用于分類標(biāo)簽值,如晴天/陰天/霧/雨、用戶性別、網(wǎng)頁是否是垃圾頁面。這里要強(qiáng)調(diào)的是,前者的結(jié)果加減是有意義的,如10歲+5歲-3歲=12歲,后者則無意義,如男+男+女=到底是男是女? GBDT的核心在于累加所有樹的結(jié)果作為最終結(jié)果,就像前面對年齡的累加(-3是加負(fù)3),而分類樹的結(jié)果顯然是沒辦法累加的,所以GBDT中的樹都是回歸樹,不是分類樹,這點(diǎn)對理解GBDT相當(dāng)重要(盡管GBDT調(diào)整后也可用于分類但不代表GBDT的樹是分類樹)。

分類樹

分類樹在每次分枝時(shí),是窮舉每一個(gè)特征的每一個(gè)特征值,找到使得熵最大的特征分裂方式,按照該標(biāo)準(zhǔn)分枝得到兩個(gè)新節(jié)點(diǎn),用同樣方法繼續(xù)分枝直到所有人都被分入性別唯一的葉子節(jié)點(diǎn),或達(dá)到預(yù)設(shè)的終止條件,若最終葉子節(jié)點(diǎn)中的類別不唯一,則以多數(shù)人的類別作為該葉子節(jié)點(diǎn)的類別。

回歸樹

回歸樹總體流程也是類似,不過在每個(gè)節(jié)點(diǎn)(不一定是葉子節(jié)點(diǎn))都會(huì)得一個(gè)預(yù)測值,以年齡為例,該預(yù)測值等于屬于這個(gè)節(jié)點(diǎn)的所有人年齡的平均值。分枝時(shí)窮舉每一個(gè)feature的每個(gè)閾值找最好的分割點(diǎn),但衡量最好的標(biāo)準(zhǔn)不再是最大熵,而是最小化均方差,比如(每個(gè)人的年齡-預(yù)測年齡)^2 的總和 / N,或者說是每個(gè)人的預(yù)測誤差平方和除以 N。這很好理解,被預(yù)測出錯(cuò)的人數(shù)越多,錯(cuò)的越離譜,均方差就越大,通過最小化均方差能夠找到最靠譜的分枝依據(jù)。分枝直到每個(gè)葉子節(jié)點(diǎn)上人的年齡都唯一(這太難了)或者達(dá)到預(yù)設(shè)的終止條件(如葉子個(gè)數(shù)上限),若最終葉子節(jié)點(diǎn)上人的年齡不唯一,則以該節(jié)點(diǎn)上所有人的平均年齡做為該葉子節(jié)點(diǎn)的預(yù)測年齡。

分類樹和回歸樹基本流程一致都是根據(jù)feature找閾值(分裂值),但是閾值的衡量標(biāo)準(zhǔn)不同,即選擇的優(yōu)化函數(shù)不同。分類樹選擇閾值的標(biāo)準(zhǔn)是實(shí)現(xiàn)每個(gè)分枝都盡可能只有一個(gè)分類,即性別分類中,男性分枝上盡可能多的是男性,女性盡可能少;女性分枝上盡可能多的是女性,男性盡可能少。用數(shù)學(xué)表示即男女比例原理1:1。回歸樹選擇閾值的標(biāo)準(zhǔn)是實(shí)現(xiàn)預(yù)測值和真實(shí)值的最小化均方差。

回歸和分類從實(shí)現(xiàn)上,分別用不同的方法實(shí)現(xiàn)了"動(dòng)態(tài)確定樣本權(quán)值"這一目標(biāo)。回歸是用擬合殘差,分類是用錯(cuò)誤率來調(diào)整樣本權(quán)值。

?

Gradient Boosting(梯度提升)

提升的方法基于這樣一個(gè)思想:對于一個(gè)復(fù)雜任務(wù)來說,將多個(gè)專家的判斷進(jìn)行適當(dāng)?shù)木C合所得出的判斷,要比其中任何一個(gè)專家單獨(dú)的判斷好。這種在函數(shù)域的梯度提升觀點(diǎn)對機(jī)器學(xué)習(xí)的很多領(lǐng)域有深刻影響。

提升是一個(gè)機(jī)器學(xué)習(xí)技術(shù),可以用于回歸和分類問題,它每一步產(chǎn)生一個(gè)弱預(yù)測模型(如決策樹),并加權(quán)累加到總模型中,最終得帶一個(gè)強(qiáng)預(yù)測模型;如果每一步的弱預(yù)測模型生成都是依據(jù)損失函數(shù)的梯度方向,則稱之為梯度提升(Gradient boosting)。

梯度提升算法首先給定一個(gè)目標(biāo)損失函數(shù),它的定義域是所有可行的弱函數(shù)集合(基函數(shù));提升算法通過迭代的選擇一個(gè)負(fù)梯度方向上的基函數(shù)來逐漸逼近局部極小值。

梯度提升算法實(shí)際上和梯度下降算法是一樣的,只不過看問題的角度不同,比如在線性回歸中,我們通過梯度下降來優(yōu)化參數(shù) ?,使損失函數(shù)能達(dá)到(局部)最小值;如果我們換個(gè)角度,我們優(yōu)化的不是參數(shù),而是這個(gè)函數(shù),再通過沿梯度方向下降的方法達(dá)到損失函數(shù)(局部)最小值,就變成了梯度提升算法。

如下圖是梯度提升算法和梯度下降算法的對比情況。可以發(fā)現(xiàn),兩者都是在每一輪迭代中,利用損失函數(shù)相對于模型的負(fù)梯度方向的信息來對當(dāng)前模型進(jìn)行更新,只不過在梯度下降中,模型是以參數(shù)化形式表示,從而模型的更新等價(jià)于參數(shù)的更新。而在梯度提升中,模型并不需要進(jìn)行參數(shù)化表示,而是直接定義在函數(shù)空間中,從而大大擴(kuò)展了可以使用的模型種類。

原始的Boost算法(例如Adaboost)是在算法開始的時(shí)候,為每一個(gè)樣本賦上一個(gè)權(quán)重值,初始的時(shí)候,大家都是一樣重要的。在每一步訓(xùn)練中得到的模型,會(huì)使得數(shù)據(jù)點(diǎn)的估計(jì)有對有錯(cuò),我們就在每一步結(jié)束后,增加分錯(cuò)的點(diǎn)的權(quán)重,減少分對的點(diǎn)的權(quán)重,這樣使得某些點(diǎn)如果老是被分錯(cuò),那么就會(huì)被“嚴(yán)重關(guān)注”,也就被賦上一個(gè)很高的權(quán)重。然后等進(jìn)行了N次迭代(由用戶指定),將會(huì)得到N個(gè)簡單的分類器(basic learner),然后我們將它們組合起來(比如說可以對它們進(jìn)行加權(quán)、或者讓它們進(jìn)行投票等),得到一個(gè)最終的模型。

GBDT的每一棵樹學(xué)的是之前所有樹結(jié)論和的殘差,這個(gè)殘差就是一個(gè)加預(yù)測值后能得真實(shí)值的累加量。比如A的真實(shí)年齡是18歲,但第一棵樹的預(yù)測年齡是12歲,差了6歲,即殘差為6歲。那么在第二棵樹里我們把A的年齡設(shè)為6歲去學(xué)習(xí)。如果第二棵樹真的能把A分到6歲的葉子節(jié)點(diǎn),那累加兩棵樹的結(jié)論就是A的真實(shí)年齡。如果第二棵樹的結(jié)論是5歲,則A仍然存在1歲的殘差,第三棵樹里A的年齡就變成1歲,繼續(xù)學(xué)習(xí),這就是Gradient Boosting在GBDT中的意義。

而Gradient Boost與傳統(tǒng)的Boost的區(qū)別是,每一次的計(jì)算是為了減少上一次的殘差(residual),而為了消除殘差,我們可以在殘差減少的梯度(Gradient)方向上建立一個(gè)新的模型。所以說,在Gradient Boost中,每個(gè)新的模型的建立是為了使得之前模型的殘差往梯度方向減少,與傳統(tǒng)Boost對正確、錯(cuò)誤的樣本進(jìn)行加權(quán)有著很大的區(qū)別。

在線性回歸中,我們希望找到一組參數(shù)使得模型的殘差最小化。如果只使用一次項(xiàng)來解釋二次曲線,那么就會(huì)存有大量殘差,此時(shí)就可以用二次項(xiàng)來繼續(xù)解釋殘差,所以可在模型中加入這個(gè)二次項(xiàng)。同樣的,GB是先根據(jù)初始模型計(jì)算偽殘差,之后建立一個(gè)學(xué)習(xí)器來解釋偽殘差,該學(xué)習(xí)器是在梯度方向上減少殘差。再將該學(xué)習(xí)器乘上權(quán)重系數(shù)(學(xué)習(xí)速率)和原來的模型進(jìn)行線性組合形成新的模型。這樣反復(fù)迭代就可以找到一個(gè)使損失函數(shù)的期望達(dá)到最小的模型。

總的來說,對于一個(gè)樣本,最理想的梯度是越接近0的梯度。所以,我們要能夠讓函數(shù)的估計(jì)值能夠使得梯度往反方向移動(dòng)(>0的維度上,往負(fù)方向移動(dòng),<0的維度上,往正方向移動(dòng))最終使得梯度盡量=0),并且該算法在會(huì)嚴(yán)重關(guān)注那些梯度比較大的樣本,跟Boost的意思類似。得到梯度之后,就是如何讓梯度減少了。這里是用的一個(gè)迭代+決策樹的方法,當(dāng)初始化的時(shí)候,隨便給出一個(gè)估計(jì)函數(shù)F(x)(可以讓F(x)是一個(gè)隨機(jī)的值,也可以讓F(x)=0),然后之后每迭代一步就根據(jù)當(dāng)前每一個(gè)樣本的梯度的情況,建立一棵決策樹。就讓函數(shù)往梯度的反方向前進(jìn),最終使得迭代N步后,梯度越小。這里建立的決策樹和普通的決策樹不太一樣,首先,這個(gè)決策樹是一個(gè)葉子節(jié)點(diǎn)數(shù)J固定的,當(dāng)生成了J個(gè)節(jié)點(diǎn)后,就不再生成新的節(jié)點(diǎn)了。

?

Shrinkage(漸變)

Shrinkage是GBDT的第三個(gè)基本概念,中文含義為“縮減”。它的基本思想就是:每次走一小步逐漸逼近結(jié)果的效果,要比每次邁一大步很快逼近結(jié)果的方式更容易避免過擬合。換句話說縮減思想不完全信任每一個(gè)棵殘差樹,它認(rèn)為每棵樹只學(xué)到了真理的一小部分,累加的時(shí)候只累加一小部分,只有通過多學(xué)幾棵樹才能彌補(bǔ)不足。

Shrinkage不是Gradient的步長,Shrinkage只是一種大步變小步的逐步求精方法。這點(diǎn)看起來和Gradient目標(biāo)=Gradient單位方向*步長挺像。但其實(shí)很不同:

(1)shrinkage的處理對象不一定是Gradient方向,也可以是殘差,可以是任何增量,即目標(biāo)=任何東西*shrinkage步長。

(2)shrinkage決定的是最終走出的一步大小,而不是希望走出的一步大小。前者是對于已有的學(xué)習(xí)結(jié)果打折,后者是在決定學(xué)習(xí)目標(biāo)時(shí)對局部最優(yōu)方向上走多遠(yuǎn)負(fù)責(zé)。

(3)shrinkage設(shè)小了只會(huì)讓學(xué)習(xí)更慢,設(shè)大了就等于沒設(shè),它適用于所有增量迭代求解問題;而Gradient的步長設(shè)小了容易陷入局部最優(yōu)點(diǎn),設(shè)大了容易不收斂。它僅用于用梯度下降求解。這兩者其實(shí)沒太大關(guān)系。LambdaMART中其實(shí)兩者都用了,而外部可配的參數(shù)是shrinkage而不是Gradient步長。

即Shrinkage仍然以殘差作為學(xué)習(xí)目標(biāo),但對于殘差學(xué)習(xí)出來的結(jié)果,只累加一小部分(step*殘差)逐步逼近目標(biāo),step一般都比較小,如0.01~0.001(注意該step非gradient的step),導(dǎo)致各個(gè)樹的殘差是漸變的而不是陡變的。直覺上這也很好理解,不像直接用殘差一步修復(fù)誤差,而是只修復(fù)一點(diǎn)點(diǎn),其實(shí)就是把大步切成了很多小步。本質(zhì)上,Shrinkage為每棵樹設(shè)置了一個(gè)weight,累加時(shí)要乘以這個(gè)weight,但和Gradient并沒有關(guān)系。這個(gè)weight就是step。就像Adaboost一樣,Shrinkage能減少過擬合發(fā)生也是經(jīng)驗(yàn)證明的,目前還沒有看到從理論的證明。

?

GBDT算法流程

回歸算法

輸入:訓(xùn)練樣本
迭代次數(shù)(基學(xué)習(xí)器數(shù)量):T
損失函數(shù):L
輸出:強(qiáng)學(xué)習(xí)器H(x)

二分類算法

多分類算法

GBDT損失函數(shù)

這里我們再看看GBDT分類算法,GBDT的分類算法從思想上和GBDT的回歸算法沒有區(qū)別,但是由于樣本輸出不是連續(xù)的值,而是離散的類別,導(dǎo)致我們無法直接從輸出類別去擬合類別輸出的誤差。

為了解決這個(gè)問題,主要有兩個(gè)方法,一個(gè)是用指數(shù)損失函數(shù),此時(shí)GBDT退化為Adaboost算法。另一種方法是用類似于邏輯回歸的對數(shù)似然損失函數(shù)的方法。也就是說,我們用的是類別的預(yù)測概率值和真實(shí)概率值的差來擬合損失,本文僅討論用對數(shù)似然損失函數(shù)的GBDT分類。

?

GBDT正則化

針對GBDT正則化,我們通過子采樣比例方法和定義步長v方法來防止過擬合。

  • **子采樣比例:**通過不放回抽樣的子采樣比例(subsample),取值為(0,1]。如果取值為1,則全部樣本都使用。如果取值小于1,利用部分樣本去做GBDT的決策樹擬合。選擇小于1的比例可以減少方差,防止過擬合,但是會(huì)增加樣本擬合的偏差。因此取值不能太低,推薦在[0.5, 0.8]之間。

  • **定義步長v:**針對弱學(xué)習(xí)器的迭代,我們定義步長v,取值為(0,1]。對于同樣的訓(xùn)練集學(xué)習(xí)效果,較小的v意味著我們需要更多的弱學(xué)習(xí)器的迭代次數(shù)。通常我們用步長和迭代最大次數(shù)一起來決定算法的擬合效果。

?

GBDT的兩個(gè)不同版本

目前GBDT有兩個(gè)不同的描述版本,兩者各有支持者,讀文獻(xiàn)時(shí)要注意區(qū)分。

殘差版本把GBDT說成一個(gè)殘差迭代樹,認(rèn)為每一棵回歸樹都在學(xué)習(xí)前N-1棵樹的殘差,在ELF開源軟件實(shí)現(xiàn)中用的也是這一版本。

Gradient版本把GBDT說成一個(gè)梯度迭代樹,使用梯度下降法求解,認(rèn)為每一棵回歸樹在學(xué)習(xí)前N-1棵樹的梯度下降值,之前l(fā)eftnoteasy的博客中介紹的為此版本,umass的源碼實(shí)現(xiàn)中用的則是這一版本(準(zhǔn)確的說是LambdaMART中的MART為這一版本,MART實(shí)現(xiàn)則是前一版本)。?

總的來說兩者相同之處在于,都是迭代回歸樹,都是累加每顆樹結(jié)果作為最終結(jié)果(Multiple Additive Regression Tree),每棵樹都在學(xué)習(xí)前N-1棵樹尚存的不足,從總體流程和輸入輸出上兩者是沒有區(qū)別的;兩者的不同主要在于每步迭代時(shí),是否使用Gradient作為求解方法。前者不用Gradient而是用殘差,殘差是全局最優(yōu)值,Gradient是局部最優(yōu)方向*步長,即前者每一步都在試圖讓結(jié)果變成最好,后者則每步試圖讓結(jié)果更好一點(diǎn)。
兩者優(yōu)缺點(diǎn)。看起來前者更科學(xué)一點(diǎn),有絕對最優(yōu)方向不學(xué),為什么舍近求遠(yuǎn)去估計(jì)一個(gè)局部最優(yōu)方向呢?原因在于靈活性。前者最大問題是,由于它依賴殘差,cost function一般固定為反映殘差的均方差,因此很難處理純回歸問題之外的問題。而后者求解方法為梯度下降,只要可求導(dǎo)的cost function都可以使用,所以用于排序的LambdaMART就是用的后者。

GBDT中的Boost是樣本目標(biāo)的迭代,不是re-sampling的迭代,也不是Adaboost。

Adaboost中的boosting指從樣本中按分類對錯(cuò),分配不同的weight,計(jì)算cost function時(shí)使用這些weight,從而讓“錯(cuò)分的樣本權(quán)重越來越大,直到它們被分對”。Bootstrap也有類似思想,只不過它可以利用不同的weight作為sample概率對訓(xùn)練樣本集做re-sample,讓錯(cuò)分的樣本被進(jìn)一步學(xué)習(xí),而分類正確的樣本就不用再學(xué)了。但GBDT中的boost完全不同,跟上述邏輯沒有任何關(guān)系,GBDT中每步boost的樣本集都是不變的,變的是每個(gè)樣本的回歸目標(biāo)值。
?

sklearn參數(shù)

GradientBoostingRegressor(loss=’ls’, learning_rate=0.1, n_estimators=100, subsample=1.0, criterion=’friedman_mse’, min_samples_split=2,min_samples_leaf=1, min_weight_fraction_leaf=0.0, max_depth=3,min_impurity_decrease=0.0, min_impurity_split=None, init=None, random_state=None, max_features=None, alpha=0.9, verbose=0, max_leaf_nodes=None, warm_start=False, presort=’auto’, validation_fraction=0.1, n_iter_no_change=None, tol=0.0001)

參數(shù)說明:

  • n_estimators:弱學(xué)習(xí)器的最大迭代次數(shù),也就是最大弱學(xué)習(xí)器的個(gè)數(shù)。
  • learning_rate:步長,即每個(gè)學(xué)習(xí)器的權(quán)重縮減系數(shù)a,屬于GBDT正則化方化手段之一。
  • subsample:子采樣,取值(0,1]。決定是否對原始數(shù)據(jù)集進(jìn)行采樣以及采樣的比例,也是GBDT正則化手段之一。
  • init:我們初始化的時(shí)候的弱學(xué)習(xí)器。若不設(shè)置,則使用默認(rèn)的。
  • loss:損失函數(shù),可選{'ls'-平方損失函數(shù),'lad'絕對損失函數(shù)-,'huber'-huber損失函數(shù),'quantile'-分位數(shù)損失函數(shù)},默認(rèn)'ls'。
  • alpha:當(dāng)我們在使用Huber損失"Huber"和分位數(shù)損失"quantile"時(shí),需要指定相應(yīng)的值。默認(rèn)是0.9,若噪聲點(diǎn)比較多,可適當(dāng)降低這個(gè)分位數(shù)值。
  • criterion:決策樹節(jié)搜索最優(yōu)分割點(diǎn)的準(zhǔn)則,默認(rèn)是"friedman_mse",可選"mse"-均方誤差與'mae"-絕對誤差。
  • max_features:劃分時(shí)考慮的最大特征數(shù),就是特征抽樣的意思,默認(rèn)考慮全部特征。
  • max_depth:樹的最大深度。
  • min_samples_split:內(nèi)部節(jié)點(diǎn)再劃分所需最小樣本數(shù)。
  • min_samples_leaf:葉子節(jié)點(diǎn)最少樣本數(shù)。
  • max_leaf_nodes:最大葉子節(jié)點(diǎn)數(shù)。
  • min_impurity_split:節(jié)點(diǎn)劃分最小不純度。
  • presort:是否預(yù)先對數(shù)據(jù)進(jìn)行排序以加快最優(yōu)分割點(diǎn)搜索的速度。默認(rèn)是預(yù)先排序,若是稀疏數(shù)據(jù),則不會(huì)預(yù)先排序,另外,稀疏數(shù)據(jù)不能設(shè)置為True。
  • validationfraction:為提前停止而預(yù)留的驗(yàn)證數(shù)據(jù)比例。當(dāng)n_iter_no_change設(shè)置時(shí)才能用。
  • n_iter_no_change:當(dāng)驗(yàn)證分?jǐn)?shù)沒有提高時(shí),用于決定是否使用早期停止來終止訓(xùn)練。

?

GBDT算法優(yōu)缺點(diǎn)

GBDT的優(yōu)點(diǎn)

(1)防止過擬合;

(2)每一步的殘差計(jì)算其實(shí)變相地增大了分錯(cuò)instance的權(quán)重,而已經(jīng)分對的instance則都趨向于0;

(3)殘差作為全局最優(yōu)的絕對方向;

(4)使用一些健壯的損失函數(shù),對異常值的魯棒性非常強(qiáng)。比如 Huber損失函數(shù)和Quantile損失函數(shù)。

GBDT的缺點(diǎn)

(1)Boost是一個(gè)串行過程,不好并行化,而且計(jì)算復(fù)雜度高,比較耗時(shí)(大數(shù)據(jù)量非常耗時(shí));

(2)同時(shí)不太適合高維特征,如果數(shù)據(jù)維度較高時(shí)會(huì)加大算法的計(jì)算復(fù)雜度,具體的復(fù)雜度可以參考XGBoost、lightGBM的改進(jìn)點(diǎn);

?

?

?

參考鏈接:https://zhuanlan.zhihu.com/p/58105824
參考鏈接:https://www.jianshu.com/p/b954476a00d9
參考鏈接:https://www.zybuluo.com/Dounm/note/1031900
參考鏈接:https://zhuanlan.zhihu.com/p/30736738
參考鏈接:https://blog.csdn.net/XiaoYi_Eric/article/details/80167968

?

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的集成学习-Boosting集成学习算法GBDT的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。