gbdt演算法 經典演算法 GBDT

2021-10-11 08:42:17 字數 1273 閱讀 5563

梯度提公升樹(gradient boosting decison tree,gbdt)是整合學習boosting重要演算法。該方法是針對模型的偏差進行的優化。而隨機森林是基於對模型的方差進行優化。即使在整合演算法中,adaboost是利用前一輪迭代器弱學習器的誤差率來更新訓練集的權重。

gbdt演算法中,限定了只能使用cart回歸模型。一般的cart是這樣的:用於分類任務時,樹的**準則採用基尼指數,用於回歸任務時,用mse(均方誤差)。前一輪迭代得到的強學習器是

關於損失函式擬合方法,freidman提出了用損失函式的負梯度來擬合本輪損失的近似值,進而擬合新的cart回歸樹。與xgboost的明顯區別,就是這樣的一階導數與二階導數的擬合方式。在不同任務中區別僅僅在損失函式不同導致的負梯度不同而已。

gbdt演算法過程

輸入:訓練集樣本

1) 初始化弱學習器

2) 對迭代輪數

a)對樣本

,計算負梯度:

b)利用

擬合一顆cart回歸樹,得到第

顆回歸樹,其對應的葉子節點區域為

,其中

為回歸樹

的葉子節點的個數。

c) 對葉子區域

,計算最佳擬合值

d) 更新強學習器:

3) 得到強學習器

的表示式

gbdt回歸與分類

回歸演算法是比較簡單的,畢竟cart就是回歸樹。回歸的問題也可以看成分類任務中一種特殊方法。分類問題的處理,類似與影象識別中的分類任務,分類任務變化成每一類別的概率值**。

二元gbdt分類演算法

對數似然損失函式為:

負梯度誤差為:

各個葉子節點的最佳殘差擬合值為:

上式的計算過於複雜,通常選取近似的方式:

多元gbdt分類演算法

第 類的概率

的表示式為:

計算出第

輪的第

個樣本對應類別

的負梯度誤差為:

其實這裡的誤差就是樣本

對應類別

的真實概率和

輪**概率的差值。

一般使用近似值代替:

gbdt的正則化

模型加入正則是為了防止過擬合。gbdt的正則化主要有三種方法:

gbdt優缺點

優點:缺點:

對應的負梯度誤差為:

gbdt演算法 演算法梳理五 GBDT

真正開始動手寫,才發現以前理解的不夠深。弄懂乙個演算法,要想明白哪些問題?集合裡有m個樣本,n個特徵,gbdt每棵回歸樹怎麼構造 選取多少樣本,多少特徵 它的損失函式怎麼擬合,殘差是怎麼回事,梯度在其中的作用。gbdt有很多簡稱,有gbt gradient boosting tree gtb gra...

GBDT演算法梳理

table of contents 1 gbdt概述 2 前向分布演算法 2.1 加法模型 2.2 前向分布演算法 2.2.1 思想 2.2.2 策略 2.2.3 加法模型求解 3 損失函式 4 負梯度擬合 5 回歸 6 gbdt分類 6.1 二分類 6.2 多分類 7 正則化 8 優缺點 9 sk...

GBDT演算法梳理

人工智慧之gbdt演算法 前言 人工智慧之機器學習主要有三大類 1 分類 2 回歸 3 聚類。今天我們重點 一下gbdt演算法。我們知道,gbm 請參見人工智慧 51 是乙個改善弱學習器效果的計算框架。gbm梯度提公升模組可以根據需要任意插入各種各樣的弱分類器。若弱學習器限定了只能使用cart回歸樹...