機器學習演算法(五)整合

2021-08-04 08:12:05 字數 885 閱讀 5999

整合指用多個基學習器共同構成乙個更加強大的學習器。

整合包含三種方法:boosting,bagging,stacking

1、boosting:包括gbdt和adaboost,各學習器間存在強依賴關係,只能序列實現

2、bagging的代表演算法是隨機森林,各學習器間不存在強依賴關係,可以並行實現

3、stacking主要是分層結構。每個初級學習器負責一部分的領域知識並構成次級學習器。

1、gbdt:梯度提公升決策樹

原理簡介如下圖所示:

2、adaboost

輸入:訓練資料集d=

初始化:為每條資料賦乙個權重,通常dw

= ,其中,1表示第1次迭代。

步驟:

step1:找到乙個二分類器gm

(x) ,使下式的這個損失最小: em

=∑i=

1nwm

ii(g

m(xi

)≠yi

) step2:計算am

=12l

og1−

emem

step3:更新權值wm

+1,i

=wmi

zmex

p(−α

myig

m(xi

))其中,zm

為一歸一化因子

step4: m=

m+1 ,並返回step1進行迭代。

最終求得的分類函式為f(

x)=∑

m=1n

αmgm

(x)

比較有代表性的bagging演算法就是隨機森林,它就是隨機採一些樣本,隨機採一些屬性生成多棵決策樹進行共同決策。

bagging可以減少方差

boosting可以減少偏差

機器學習 實驗五 整合學習(投票方式)

實驗 github 然後在main中,使用乙個迴圈來進行測試模型的正確率 int test number 100 int correct 0 for int counter0 0 counter0 test number counter0 測試迴圈 for int counter1 0 counte...

機器學習基礎自學五(整合演算法)

from pandas import read csv from sklearn.model selection import kfold from sklearn.model selection import cross val score from sklearn.ensemble import...

機器學習筆記14 整合 B B

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