8.1 基本思想
集成學習通過構(gòu)建并結(jié)合多個學習器來完成學習任務(wù)弛针。
集成學習把性能較低的 多種弱學習器,通過適當組合形成高性能強學習器的方法肯尺。
常見的集成學習有兩種:bagging和boosting。
兩種集成學習的過程如下圖:
8.2 bagging
Bagging是根據(jù)英文單詞BootstrapAggregation創(chuàng)造的新詞,統(tǒng)計學上的Bootstrap稱為自主法, 是指有重復隨機選取n個樣本, 生成和原始樣本集稍有差異樣本集的方法.
Bagging學習法, 一方面經(jīng)由自主法生成虛擬訓練樣本, 并對這些樣本學習;另一方面, 反復重復該過程后對得到的多個分類器輸出通過投票的方式做出集體決策.
Bagging學習, 重復次數(shù)較大, 不易過擬合; 對多個弱分類器學習是并行過程,故Bagging可并行學習.
典型的Bagging學習法是基于決策樹基分類器的隨機森林(Random Forest).
8.3 Boosting
boosting方法訓練基分類器時采用串行方式, 各個基分類器之間有依賴.
基本思路: 基分類器層層疊加, 每一層訓練時, 對前一層基分類器分錯的樣本,給予更高的權(quán)重. 測試時, 對各層分類器結(jié)果加權(quán)得到最終結(jié)果.
同時, 進行加權(quán)時, 最開始就能正確分類的樣本,權(quán)重會逐漸減小, 有可能造成簡單樣本反而不能正確分類, 故, Boosting學習應(yīng)邊學習邊更新樣本券種, 并把學習過程中得到的所有分類器放在一起, 對其可信度平局后得到最終強分類器.
樣本加權(quán)方法有很多, 最標準的就是Adaboost算法, Adaboost是英文Adaptive Boosting的縮寫, 是自適應(yīng)增強的意思.
8.4 Bagging和Boosting的差異
基分類器錯誤率大于集成分類器, 基分類器的錯誤是偏差和方差之和. 基分類器表達能力有限, 表現(xiàn)在訓練數(shù)據(jù)不收斂, 產(chǎn)生偏差; 分類器對樣本分布過于敏感, 導致訓練樣本較少時容易過擬合, 產(chǎn)生方差.
Bagging各弱分類器盡量獨立, 可減少基分類器偏差
(1) Bagging采用采取分而治之的策略, 對訓練樣本多次有放回采樣, 并分別訓練多個不同模型,然后綜合投票 .
(2)設(shè)n個隨機變量, 方差為, 各隨機變量完全獨立時, n個隨機變量的方差為, 整體方差減小到原來的
(3) Bagging分類器, 個子模型應(yīng)盡量完全獨立, 為了追求模型的獨立性, 隨機森林算法, 每次選取節(jié)點分裂屬性時, 會隨機抽取一些屬性自己, 而不是選取最優(yōu)屬性, 這樣可避免弱分類器之間過強的相關(guān)性; 此外, 對訓練集的Boostrap重采樣也可使弱分類器之間保持一定的獨立性, 從而降低Bagging后模型的方差.
Boosting各弱分類器之間強相關(guān), 可減小偏差
(1) Boosting通過逐步聚焦基分類器分錯的樣本, 可減少集成分類器偏差
(2) Boosting訓練好一個弱分類器后, 需計算此分類器的殘差, 作為下一個弱分類器輸入, 這個過程本身就在不斷減小損失函數(shù), 使模型不斷逼近"靶心", 從而模型偏差不斷降低
(3)Boosting不會降低模型方差, 因為訓練過程各弱分類器之間強相關(guān),缺乏獨立性