AdaBoost元演算法與提公升樹

2021-08-07 03:46:46 字數 1218 閱讀 9701

1.1 強學習與弱學習

提公升方法的思想是,對於乙個複雜任務,多個專家綜合的判斷所得出的結果要比乙個專家號,即三個臭皮匠賽過諸葛亮的道理。弱學習演算法是指學習的正確率比隨機猜測略好,強學習演算法不僅可以學習,還能得到很高正確率。經學者證明,強可學習和弱可學習是等價的,即同時成立。所以我們的目標是找到乙個弱學習演算法,然後通過提公升措施,將其公升級為正確率高的強可學習。

1.2 boosting和bagging

boosting:通過序列訓練得到,每乙個分類器都根據前乙個分類器的效能來進行訓練,集中關注被前分類器錯分的資料,並且每個分類器的權重不同,最後綜合所有分類器的結果。本文介紹其中最流行的adaboost。

bagging:從原始資料集中選擇s次後得到s個新資料集,將某個弱學習演算法分別應用到這些新資料集上,得到s個分類器,使用分類器投票結果中最多的類別作為最終的分類結果。與boosting不同的是,分類器是並行得到,並且所有分類器權重相等。

2.1 工作原理

遞迴的在資料集上進行訓練得到分類器,每乙個分類器的訓

練依賴於前乙個分類器的效能,即每次將誤分類的資料給予更高的權值,使新的分類器更關注上一輪誤分類的資料,綜合所有分類器的結果,誤差率低的分類器給予更高的權值,直到分類誤差率為零。

2.2 三要素

模型:加法決策模型

策略:指數函式

演算法:前向分步演算法

3.1 工作原理

提公升樹是以分類樹或回歸樹為基本分類器的提公升方法。對分類問題決策樹基函式是二叉分類樹,對回歸問題決策樹是二叉回歸樹。同樣是採用前向分步演算法的加法模型。

3.2 具體步驟

(1)初始化回歸樹t1

(2)計算殘差,構建殘差表

(3)擬合殘差求回歸樹t2

(4)更新加法模型

3.3 梯度提公升

當損失函式是平方損失和指數損失的情況,每一步的優化比較簡單,但對一般損失函式而言,每一步的優化並不容易,這時利用最速下降法的近似方法,關鍵是利用損失函式的負梯度在當前模型的值作為殘差的近似值。

優點:泛化錯誤率低,可以應用在大部分分類器上,無引數調整

缺點:對離群點敏感

AdaBoost元演算法

整合學習 將若干個弱分類器通過一定的策略組合之後產生乙個強分類器 分類 bagging 裝袋 boosting 有放回的隨機抽樣,弱分類器上有的被選擇有的沒有。例項 隨機森林 在bagging的樣本隨機取樣基礎上,又加上了特徵的隨機選擇 乙個迭代的過程,把弱分類器聚集到很難分類的樣本上,給每乙個訓練...

Adaboost 自適應提公升樹 演算法原理

adaboost的前身的boosting演算法。1990年,schapire最先構造出一種多項式級的演算法,對該問題做了肯定的證明,這就是最初的boosting演算法。一年後,freund提出了一種效率更高的boosting演算法。但是,這兩種演算法存在共同的實踐上的缺陷,那就是都要求事先知道弱學習...

提公升樹與梯度提公升樹演算法

我們對boosting家族的adaboost演算法做了總結,本文就對boosting家族中另乙個重要的演算法梯度提公升樹 gradient boosting decison tree,以下簡稱gbdt 做乙個總結。gbdt有很多簡稱,有gbt gradient boosting tree gtb g...