天天看點

機器學習基礎(九):內建學習(Boosting、Bagging、Random Forest、學習器結合政策、多樣性)

9、內建學習 ensemble learning

通過建構并結合多個學習器來完成學習任務,有時也稱為多分類器系統multi-classifier system、基于委員會的學習committee-based learning

同質homogeneous內建:內建中隻包含同種類型的個體學習器,其中的個體學習器亦稱基學習器,相應的學習算法稱為基學習算法

異質heterogeneous內建:包含不同類型的個體學習器,其中的個體學習器亦稱元件學習器,也不再有基學習算法(因為這些個體學習器是由不同的學習算法生成)

機器學習基礎(九):內建學習(Boosting、Bagging、Random Forest、學習器結合政策、多樣性)

內建學習将多個學習器進行結合,常可獲得比單一學習器顯著優越的泛化性能

內建學習的個體學習器應該“好而不同”,即要有一定的準确性(至少不差于弱學習器),也要有多樣性(學習器間有差異)

9.1 內建學習方法

兩大類:①個體學習器間存在強依賴關系、必須串行生成的序列化方法(代表:Boosting)

②個體學習器間不存在強依賴關系、可同時生成的并行化方法(代表:Bagging、随機森林Random Forest)

→boosting降偏差,bagging、random forest降方差

9.1.1 Boosting

一族可将弱學習器提升為強學習器的算法

工作機制:先從初始訓練集訓練出一個基學習器,再根據基學習器的表現對訓練樣本分布進行調整,使得先前基學習器做錯的訓練樣本在後續受到更多關注,然後基于調整後的樣本分布來訓練下一個基學習器;如此重複進行,直至基學習器數目達到事先指定的值T,最終将這T個基學習器進行權重結合。

代表算法:AdaBoost

機器學習基礎(九):內建學習(Boosting、Bagging、Random Forest、學習器結合政策、多樣性)

9.1.2 Bagging

基于自主采樣法bootstrap sampling給定T個包含m個樣本的資料集,基于每個采樣集訓練出一個基學習器,再将這些基學習器進行結合(分類任務:簡單投票法,回歸任務:簡單平均法)。

機器學習基礎(九):內建學習(Boosting、Bagging、Random Forest、學習器結合政策、多樣性)

9.1.3随機森林Random Forest,RF

Bagging的一個擴充變體,在以決策樹為基學習器建構Bagging內建的基礎上,進一步在決策樹訓練過程中引入了随機屬性選擇

機器學習基礎(九):內建學習(Boosting、Bagging、Random Forest、學習器結合政策、多樣性)

随機森林中基學習器的多樣性不僅來自樣本擾動,還來自屬性擾動,使得最終內建的泛化性能可通過個體學習器之間差異度的增加而進一步提升

機器學習基礎(九):內建學習(Boosting、Bagging、Random Forest、學習器結合政策、多樣性)

9.2(學習器)結合政策

機器學習基礎(九):內建學習(Boosting、Bagging、Random Forest、學習器結合政策、多樣性)

假定內建包含T個基學習器{h1,h2,…,hT},其中hi在示例x上的輸出為hi(x)

9.2.1平均法

對數值型輸出:hi(x)∈R

①簡單平均法simple averaging:

機器學習基礎(九):內建學習(Boosting、Bagging、Random Forest、學習器結合政策、多樣性)

②權重平均法weighted averaging:

機器學習基礎(九):內建學習(Boosting、Bagging、Random Forest、學習器結合政策、多樣性)

權重一般從訓練資料中習得(如估計出個體學習器的誤差,然後令權重大小與誤差大小成反比)

——在個體學習器性能相差較大時宜使用權重平均法,而在個體學習器性能相近時宜使用簡單平均法

9.2.2投票法

機器學習基礎(九):內建學習(Boosting、Bagging、Random Forest、學習器結合政策、多樣性)

不同類型的個體學習器輸出值(不能混用):

①類标記:屬于{0,1},硬投票 ②類機率:屬于[0,1],軟投票

9.2.3學習法

初級學習器:個體學習器

次級學習器(元學習器):用于結合的學習器

Stacking算法

先從初始資料集訓練出初級學習器,然後“生成”一個新資料集用于訓練次級學習器,在這個新資料集中,初級學習器的輸出被當作樣例輸入特征,而初始樣本的标記仍被當作樣例标記。假定初級學習器使用不同學習算法産生(即初級內建是異質的)

機器學習基礎(九):內建學習(Boosting、Bagging、Random Forest、學習器結合政策、多樣性)

9.3多樣性

9.3.1誤差-分歧分解

機器學習基礎(九):內建學習(Boosting、Bagging、Random Forest、學習器結合政策、多樣性)

→個體學習器準确性越高、多樣性越大,則內建越好

9.3.2多樣性度量diversity measure

機器學習基礎(九):內建學習(Boosting、Bagging、Random Forest、學習器結合政策、多樣性)
機器學習基礎(九):內建學習(Boosting、Bagging、Random Forest、學習器結合政策、多樣性)

9.3.3多樣性增強

在學習過程中引入随機性,如資料樣本擾動(基于采樣法)、輸入屬性擾動(随機子空間算法)、輸出表示擾動、算法參數擾動,可實作多樣性增強。

_ _ _ _ _ _ 未完待續,喜歡的朋友可以關注後續文章 _ _ _ _ _ _

機器學習基礎系列文章回顧:

機器學習基礎(一):簡介

機器學習基礎(二):模型評估與選擇

機器學習基礎(三):決策樹

機器學習基礎(四):特征選擇與稀疏學習

機器學習基礎(五):計算學習理論(PAC學習、有限假設空間、VC維、Rademacher複雜度、穩定性)

機器學習基礎(六):貝葉斯分類(貝葉斯決策論、樸素/半樸素貝葉斯分類器、貝葉斯網、EM算法)

機器學習基礎(七):機率圖模型(HMM、MRF、CRF、話題模型、推斷方法)

機器學習基礎(八):降維與度量學習(KNN、MDS、線性降維、PCA、核化線性降維、流形學習、度量學習)

參考書目:

周志華.《機器學習》

繼續閱讀