機器學習 adaboost 手推

2021-09-27 01:20:59 字數 1193 閱讀 3580

1 手推

1) 初始化訓練資料(每個樣本)的權重分布d,如果有m個樣本,則每個訓練樣本點最開始都被賦予相同的權重:1/m

2) 訓練弱分類器。具體訓練過程中,如果某個樣本已經被正確分類,那麼在構造下乙個訓練集中,權重

3) 將各個訓練得到的弱分類器組合成強分類器hs(x).各個弱分類器的訓練過程結束後,分類誤差率小的弱分類器的話語權較大,其在最終的分類函式中起較大的決定作用,而分類誤差率大的弱分類器的話語權較小,其在最終的分類函式中起著較小的決定作業,換言之,誤差率低的弱分類器在最終分類器中佔的比例較大,反之較小。

1)對所有訓練訓練集初始化相等的樣本權重

2) 將帶有初始化權重的資料集送入基本分類器中訓練

其中,x 表示所有資料集,m 表示第m個基本分類器,假設一共有m 個基本分類器

3) 根據分類器的誤差率,計算該分類器的係數

4)根據分類器的誤差率,更新樣本權重。(採取懲罰那些分類正確的樣本,獎勵那些分類錯誤的樣本的原則)

5) 構建基本分類器的線性組合

6) 得到最終的強分類器g(x)

ref:

2 adaboost 和決策樹的區別

2.1 adaboost 

作為提公升方法,有兩個問題需要解決:

2.1.1 每一輪如何改變訓練資料的權值或者概率分布?

2.1.2 如何將弱分類器組合成乙個強分類器?

adaboost 的做法: 提高那些被前一輪弱分類器錯誤分類樣本的權值,而降低那些被正確分類樣本的權值。

加權多數表決的方法,加大分類誤差小的弱分類器的權值,使其在表決中起較大作用,減小分類誤差率大的弱分類器的權值,使其在表決中起較小的作用

缺點:可理解性差

推廣:提公升樹,提公升樹是以分類樹或回歸樹作為基本分類器的提公升方法。利用假髮模型和前向分布演算法實現學習的優化過程,當損失函式是平方損失和指數損失函式時,每一步的優化是很簡單的,但對一般的損失函式而言,往往每一步優化並不那麼容易,針對這一問題,有人提出了梯度提公升演算法,其關鍵是利用損失函式的負梯度在當前模型的值作為回歸問題提公升演算法中的殘差的近似值,擬合乙個回歸樹,梯度提公升決策樹簡稱gbdt。

2.2 隨機森林

隨機選樣本和隨機選特徵。

缺點:不做特徵選擇,

優點:在訓練完後,能給出哪些feature 比較重要。

機器學習 Adaboost演算法流程及原理推導

adaboost演算法是一種迭代演算法。其用法是將對於訓練同一訓練集的多個弱分類器集合,成為乙個強分類器。adaboost演算法實現步驟如下 輸入 其中xi x,yi 初始化d1 i 1n,i 1,2.n for t 1,2 t adaboost演算法原理 從最後的計算公式,可以理解為adaboos...

機器學習之AdaBoost

機器學習之adaboost adaboost是一種組合學習的提公升演算法,能將多個弱學習演算法 甚至只比隨機猜測好一點 組合起來,構成乙個足夠強大的學習模型。組合學習是將多個假說組合起來,並整合它們的 比如對於乙個問題,我們可以生成20棵決策樹,讓它們對新樣例的分類進行 最後通過投票決定最終的 這樣...

機器學習之AdaBoost

adaptive boosting 自適應增強 是一種迭代演算法,它的主要思想是 每次迭代調整樣本的權重,並用更新過權重值的資料集訓練下乙個弱學習器,直到達到某個預定的足夠小的錯誤率 或者達到指定的最大迭代次數之後,將各個弱學習器加權組合為最終的強學習器。該演算法每次迭代改變的是樣本的權重 re w...