資料探勘 模型融合

2021-10-04 18:19:21 字數 1708 閱讀 2971

模型融合是比賽後期乙個重要的環節,大體來說有如下的型別方式。

簡單加權融合:

stacking/blending:

boosting/bagging(在xgboost,adaboost,gbdt中已經用到):

1)平均融合

對於回歸問題,乙個簡單直接的思路是取平均。也可以採用加權平均,而權值可以用排序的方法確定,舉個例子,比如a、b、c三種基本模型,模型效果進行排名,假設排名分別是1,2,3,那麼給這三個模型賦予的權值分別是3/6、2/6、1/6。方法看似簡單,其實後面的高階演算法也可以說是基於此而產生的,bagging或者boosting都是一種把許多弱分類器這樣融合成強分類器的思想

2)投票融合

對於一些分類問題,可以採用投票的方法。例如在二分類問題中,已建立三個模型,便可以通過三者投票的方式,投票最多的為最終分類。

1)stacking

該模型是模型融合常用方法,本質上是一種分層的結構。重點是在第一層中,如何用基學習器生成新特徵,包含訓練資料集的新特徵和測試資料集的新特徵。

第一步:訓練資料集新特徵的生成。若直接在訓練資料集中對基學習器進行訓練,然後用輸出作為新特徵,容易造成過擬合。所以為了減少過擬合的影響,可以採取k-folds的方式生成新特徵。其過程如下圖所示:

第二步:測試資料集新特徵的生成。在上面的k-folds方法中,每一次在訓練集上得到基學習器後,就對測試資料集test進行**,然後對k次的**結果求平均,就得到了test上的新特徵,如下圖:

第三步:得到新的訓練集和測試集後,在此基礎上再進行第二層訓練。

2)blending

該模型必須將訓練集分為2個部分,train1為訓練基學習器,train2的**值作為訓練集的新特徵,test的**值作為測試集的新特徵。

3)兩者對比bagging和boosting都是ensemble learing 中的學習框架,所以並不能認為其是一種具體演算法,而是兩種不同的學習思想。

1)boosting

boosting的思想是通過若干個弱分類提高演算法準確度。這種方法通過構造乙個**函式系列,然後以一定的方式將他們組合成乙個**函式。boosting是一種提高任意給定學習演算法準確度的方法。

boosting的特點是各個學習器之間有依賴關係。

2)bagging

bagging(bootstrap aggregation)由leo breiman提出,其具體內容:從資料集有放回的隨機抽取樣本,生成多個自助樣本集,每個自助樣本集大小與原資料集一致,因此一些樣本可能在同乙個自助樣本集**現多次。對每個自助樣本集訓練乙個基學習器,常用的基學習器為二元決策樹,因為對於有複雜決策邊界的問題,二元決策樹效能不穩定,這種不穩定可以通過組合多個決策樹模型來客服。最終,對於回歸問題,結果為基學習器均值,對於分類問題,結果是從不同類別所佔的百分比引申出來的各類別概率或均值。

另外,隨機森林(random forest,rf)也運用的是bagging的思想。

資料探勘 模型融合

在模型調參結束後,我我們就可以進行模型融合了 這是最後也是乙個相當重要的環節,方式大概有有以下幾種 模型融合是比賽後期乙個重要的環節,大體來說有如下的型別方式。簡單加權融合 stacking blending boosting bagging 在xgboost,adaboost,gbdt中已經用到 ...

資料探勘實戰(六) 模型融合

如圖,上半部分是用乙個基礎模型進行5折交叉驗證。拿出四折作為training data,另外一折作為testing data。每一次的交叉驗證包含兩個過程,1.基於training data訓練模型 2.基於training data訓練生成的模型對testing data進行 在整個第一次的交叉驗...

零基礎入門資料探勘 Task5 模型融合

先產生一組個體學習器,然後利用某種策略將它們結合起來,加強模型效果。周志華和李航老師的書中都證明隨著個體學習器數目的增大,整合的錯誤率將呈指數級下降,最終趨向於零。因此,模型融合被廣泛應用。簡單來說就是通過對一組的基分類器以某種方式進行組合,以提公升模型整體效能的方法。多模型投票 votingcla...