AdaBoost算法是基於Boosting思想的機器學習算法,AdaBoost是adaptive boosting(自適應boosting)的縮寫,其運行過程如下:
1) 計算樣本權重
設定每個樣本的權重都是相等的,即
2) 計算錯誤率
利用第一個弱學習算法 對其進行學習,學習完成後進行錯誤率ε的統計:
3) 計算弱學習算法權重
弱學習算法也有一個權重,用向量 表示,利用錯誤率計算權重 :
4) 更新樣本權重
在第一次學習完成後,需要重新調整樣本的權重,以使得在第一分類中被錯分的樣本的權重,在接下來的學習中可以重點對其進行學習:
其中, 表示對第 個樣本訓練正確,不等於則表示分類錯誤。 是一個歸一化因子:
這個公式我們可以繼續化簡,將兩個公式進行合併,化簡如下:
其中 是符號函數。