小白學習機器學習 第七章 整合學習

2021-08-18 17:26:23 字數 2777 閱讀 5262

1.個體與整合

整合學習(ensemble learning)通過構建並結合多個學習器來完成學習任務,有時也被稱為多分類器系統(multi-classifiersystem)。

整合學習的一般結構:先產生一組「個體學習器(individual learner)」,再用種策略將他們結合起來。個體學習器通常由乙個現有的學習演算法從訓練資料產生,如c4.5決策樹演算法,bp神經網路演算法等。此時整合中只包含同種型別的個體學習器,如「決策樹整合」中全是決策樹,「神經網路整合」中全是神經網路,這樣的整合是「同質(homogeneous)」的。同質整合中的個體學習器稱為「基學習器(base learner)」,相應的學習演算法稱為「基學習演算法(base learning algorithm)」。整合也可以包含不同型別的個體學習器,如同時包含決策樹和神經網路,這樣的整合是「異質(heterogenous)」的。相應的,個體學習器一般不稱為基學習器,稱為「元件學習器(component learner)」或直接稱為個體學習器。

2.整合方法

整合方法(ensemblemethod)

通過組合多個

基分類器(base classifier)

來完成學習任務,頗有點「三個臭皮匠頂個諸葛亮」的意味。基分類器一般採用的是弱可學習(weaklylearnable)分類器,通過整合方法,組合成乙個強可學習(stronglylearnable)分類器。所謂弱可學習,是指學習的正確率僅略優於隨機猜測的多項式學習演算法;強可學習指正確率較高的多項式學習演算法。整合學習的泛化能力一般比單一的基分類器要好,這是因為大部分基分類器都分類錯誤的概率遠低於單一基分類器的。

根據個體學習器的生成方式,目前的整合學習方法大致可分為兩類,即個體學習器之間存在強依賴關係、必須序列生成的序列化方法,以及個體學習器之間不存在強依賴關係、可同時生成的並行化方法,前者的代表是

boosting

,後者的代表是

bagging

和「隨機森林

(random forest)」

。bagging和boosting都是將已有的分類或回歸演算法通過一定方式組合起來,形成乙個效能更加強大的分類器,更準確的說這是一種分類演算法的組裝方法,即將弱分類器組裝成強分類器的方法。

1.boosting:

t,最終將這

t個學習器進行加權結合

。boosting族最著名的代表:

adaboost(adaptive boosting):

adaboost是一種迭代演算法。每輪迭代中會在訓練集上產生乙個新的分類器,然後使用該分類器對所有樣本進行分類,以評估每個樣本的重要性(informative)。具體來說,演算法會為每個訓練樣本賦予乙個權值。每次用訓練完的新分類器標註各個樣本,若某個樣本點已被分類正確,則將其權值降低;若樣本點未被正確分類,則提高其權值。權值越高的樣本在下一次訓練中所佔的比重越大,也就是說越難區分的樣本在訓練過程中會變得越來越重要。整個迭代過程直到錯誤率足夠小或達到一定次數為止。

adaboost演算法原理圖如下:

左邊是資料集,其中直方圖的不同長度代表樣本的不同權重,第三列的三角形代表分類器的權值α(計算方法見adaboost訓練過程),單個分類器的輸出會與該值相乘。adaboost最終結果為所有分類器輸出的加權平均。

adaboost訓練過程:

為了構造出乙個強的學習演算法,首先需要選定乙個弱學習演算法,並利用同乙個訓練集不斷訓練弱學習演算法,以提公升弱學習演算法的效能。在adaboost演算法中,有兩個權重,第乙個

是訓練集中每個樣本有乙個權重,稱為樣本權重,用向量ω表示;另乙個是每乙個弱學習演算法具有乙個權重,用向量α

表示。假設有n個樣本的訓練集:

(1)為每個樣本初始化權值

開始迭代,在第

t輪迭代中:

(2)使用訓練集訓練分類器

ct,並計算該分類器的錯誤率:

)計算分類器的權值為:

(4)更新樣本當前的權值ω

t.若分類正確,則減少權值:

若分類錯誤,則加大權值:

(5)迭代結束的標誌可以是訓練錯誤率為乙個可接受的小數值,或者弱分類器數目達到指定值。

adaboost分類過程:

adaboost演算法

重複進行上述訓練過程進行學習,這樣經過t輪的學習後,就會得到t個弱學習演算法、權重、弱分類器的輸出以及最終的adaboost演算法的輸出,分別如下:

其中,sign(x)是符號函式。

用生成的所有分類器**未知樣本x,最終結果為所有分類器輸出的加權平均。

adaboost優點 :

(1)是一種有很高精度的分類器

(2)可以使用各種方法構建子分類器,adaboost演算法提供的是框架

(3)當使用簡單分類器時,計算出的結果是可以理解的,並且弱分類器的構造極其簡單

(4)簡單,不用做特徵篩選

(5)不容易發生overfitting。

adaboost缺點:

(1)對outlier(離群值)比較敏感

(2)訓練時間過長,執行效果依賴於弱分類器的選擇

整合學習 機器學習

整合學習的方法在各個資料科學競賽中備受青睞,翻看top1 2大佬的 中,很多會用到隨機森林 gbdt xgboost等等,並且確實取得了非凡的效果。個人覺得整合學習並不難理解。個體 單個分類器 整合 多個分類器結合起來。所以整合學習的關鍵就是如何我們選擇怎麼樣的分類器,並且這些分類器如何結合起來完成...

第七章 遷移學習

簡介 本章將通過搭建卷積神經網路模型對生活中的普通進行分類,並引入遷移學習 transfer learning 方法。為了驗證遷移學習方法的方便性和高效性,我們先使用自定義結構的卷積神經網路模型解決的分類問題,然後通過使用遷移學習方法得到的模型來解決同樣的問題,以此來看看在效果上是傳統的方法更出色,...

第七章學習小結

第七章的內容是查詢。查詢可以分為3種。分別是線性表查詢 樹表查詢 雜湊表查詢。1 線性表查詢 線性表查詢主要介紹了順序查詢和折半查詢這兩種方法。1 順序查詢區別於上學期學的方法,設定了哨兵,採用從後往前開始查詢的方法,將時間複雜度縮短了一倍。asl n 1 2 2 折半查詢,其實也叫二分查詢,原理是...