Bagging與Boosting的區別與聯絡

2021-10-24 02:30:49 字數 1611 閱讀 5327

baggging 和boosting都是模型融合的方法,可以將弱分類器融合之後形成乙個強分類器,而且融合之後的效果會比最好的弱分類器更好。

boosting與bagging不同的是,bagging是多個模型「並行」,voting決定結果;而boosting是多個模型序列,通過多個模型的結果相加得到最終的結果。

adaboosting方式每次使用的是全部的樣本,每輪訓練改變樣本的權重。下一輪訓練的目標是找到乙個函式f 來擬合上一輪的殘差。當殘差足夠小或者達到設定的最大迭代次數則停止。boosting會減小在上一輪訓練正確的樣本的權重,增大錯誤樣本的權重。(對的殘差小,錯的殘差大)

梯度提公升的boosting方式是使用代價函式對上一輪訓練出的模型函式f的偏導來擬合殘差。

1. 訓練集

2. 樣本權重

3)弱分類器權重

4)平行計算

這個問題我給出乙個簡單的解釋並沒有嚴謹的數學證明,(其他部落格給出的數學證明我也沒看懂,,)

首先需要理解什麼是variance什麼是bias,這有一張圖可以清楚的展示兩者的差別。

這張圖來自李巨集毅老師機器學習課程中的一張ppt截圖,很清楚的展示了variance和bias的區別,兩者是在兩個維度上產生error,bias是這個估計是有偏的,不是無偏估計,而variance表示對某點的估計過於的散開不夠集中。這兩者都會使模型產生error。

所以現在已經知道了bagging和boosting可以很大程度上降低error,只不過bagging是通過減少variance從而減少error,而boosting是通過減少bias從而很大程度上降低error。

為什麼?

從這張圖可以看出boosting是如何減小bias的。上面說了boosting是基於殘差的訓練,每次都根據上一次訓練留下來的殘差訓練出新的模型,如圖中上側的過程所示,棕色線表示每次訓練的殘差,藍色點表示每次訓練完成後的模型累加上之前的模型的**情況,可以看到逐步減少bias的過程。

從這張圖可以看出來bagging是通過減少variance的,中心的紅點表示真實值。綠圈中的紅點表示多次取樣形成的不同資料集,從而訓練出不同的模型,然後對新資料**後多個模型取平均,就到達了藍點的位置,這展示了bagging如何減少variance的過程,這張圖可能畫的不是很恰當。就是說很多弱分類器取平均像是乙個互相修正的過程,從而使得**結果更集中,從而減少variance。

從而引出了另乙個問題:

因為過擬合往往導致variance過大,而bagging可以減少variance;欠擬合往往導致bias過大,而boosting可以減少bias。這裡有一張圖可以很清楚的展示。

機器學習(五) Bagging與Boosting

bagging bagging breiman,1996 通過訓練許多基本分類器進行投票分類,每種基本分類器 如決策樹,神經網路 通過投票的方式降低偏差增加方差。假設我們的任務是使用訓練資料學習乙個模型 q 這些公式的含義?boosting boosting freund shapire,1996 ...

整合學習之bagging和boosting

整合演算法目標 整合演算法會考慮多個評估器的建模結果,彙總之後得到乙個綜合的結果,以此來獲取比單個模型更好的回歸或分類表現。整合學習 ensemble learning 通過構建並結合多個學習器來完成學習任務。一般結構為 先產生一組 個體學習器 再用某種策略將它們結合起來。但要獲得好的整合,個體學習...

Bagging與隨機森林

給定包含 m 個樣本的資料集 d,我們對它進行取樣產生資料集 d 每次隨機從 d 中挑選乙個樣本,將其拷貝放入 d 然後再將該樣本放回初始資料集 d 中,使得該樣本在下次取樣時仍有可能被採到 這個過程重複執行 m次後,我們就得到了包含 m 個樣本的資料集 d 這就是自助取樣的結果。顯然,d 中有一部...