機器學習方法篇 17 整合學習

2021-08-10 23:51:21 字數 1704 閱讀 3173

做出決定,然後對決定負責。

俗話說「三個臭皮匠,頂個諸葛亮」。單個模型的效能效果通常弱於多個模型的融合結果,而這種融合就叫做整合學習。那麼整合學習有哪些常見模型?這種整合是否一定能提公升模型效果呢?

在做多人決策時,通常採取投票機制,即「少數服從多數」。我們不妨就先從投票講講什麼是好的整合,什麼是不好的整合。假設有三類樣本,三種模型分別**後進行結果融合,不同的融合結果如下圖所示:

上圖說明了整合學習的各個子模型需要滿足兩點要求:準確性多樣性。準確性是指子模型把樣本分類正確的概率,上圖表現為a比c具備準確性;多樣性指的則是子模型之間分類正確樣本集合的重疊程度,上圖表現為a比b具備多樣性。通俗的講就是,模型達到一定**準確度之後,還要保證你學到的特徵和我學到的特徵不相同,才能同時發揮你我的作用,使融合得到正向結果。

事實上,準確性和多樣性存在一定衝突。當準確性達到一定程度後,多樣性一般就很難體現,需要犧牲一定的準確性來保證。

提高準確性是模型訓練的普遍目標,因此不多講,這裡講講如何提高多樣性。提高子模型多樣性通常有兩個方法:特徵抽樣樣本抽樣

特徵抽樣,是說每個子模型分別抽取一部分特徵訓練,讓不同的特徵在不同的模型當中分別發揮作用,提高多樣性。同理,樣本抽樣是指每個子模型分別抽取一部分樣本訓練,讓不同的樣本在不同的模型中分別發揮作用,提高多樣性。

說完子模型應具備的特點,下面講講其融合的方式。常見的融合方式分為序列融合並行融合兩種。

序列融合指的就是boosting,boosting演算法最有名的代表是adaboostgbdt。有關gbdt的介紹可以參見我之前的文章 機器學習方法篇(9)——梯度提公升決策樹gbdt。

並行融合指的則是bagging,bagging演算法最有名的代表是決策樹baggingrf隨機森林。有關隨機森林的介紹可以參見我之前的文章 機器學習方法篇(10)——隨機森林。

除開上述兩種融合方式,還有兩種在各大演算法比賽中作為殺手鐗的融合方式stackingblending。其中blending採用不相交資料集訓練不同的子模型,然後將結果取加權平均輸出;而stacking稍微複雜點,但使用更為廣泛,這裡借用一張網上著名的圖說明:

上圖的大致意思是第一層子模型先對訓練集進行k折**,**結果作為第二層模型的訓練集再進行訓練**。

以上便是整合學習的講解,敬請期待下節內容。

機器學習筆記(七) 整合學習概述

整合學習 ensemble learning 是通過組合多個基分類器 baseclassifier 來完成學習任務。基分類器一般採用的是弱可學習分類器,通過整合學習,組合成乙個強可學習分類器。整合學習主要分為兩類 一是個體學習器間存在強大依賴關係 必須序列生成的序列化方法,代表演算法 boostin...

整合學習方法

整合學習方法是指組合多個模型,以獲得更好的效果,即將多個弱學習器組合成乙個強學習器,使整合的模型具有更強的泛化能力。整合學習主要有兩種方法 bagging和boosting。bagging方法是從原始的資料集中進行有放回的隨機抽樣,每次訓練從原始樣本中有放回的隨機抽取n個樣本,因為是有放回,所以某些...

機器學習筆記14 整合 B B

整合 b b bagging 和 boosting 是提高監督式學習方案準確性的兩種常見整合方法。收集一堆簡單規則,並且這些規則都有點意義 能提供一些幫助。但是,單靠某乙個規則無法得到最好的答案,合併成乙個效果不錯的複雜規則。先通過某個資料子集進行學習,形成某個規則 然後通過另一資料子集進行學習,再...