整合學習總結

2021-09-02 22:18:43 字數 1005 閱讀 5014

整合學習的基礎演算法是決策樹模型,整合學習的規則有兩種:bagging和boosting,這兩個規則實則是不同弱分類器的組合方式。

1、bagging:並行,所有弱分類器並行執行,所有分類器權重相同。 代表演算法隨機森林。

在這裡為大家糾正乙個誤區,分不清什麼是決策樹,什麼是隨機森林。其實很簡單,對於整合學習,我們使用決策樹演算法作為整合學習的基礎演算法,隨機森林和adaboost只是兩種規則,是對決策樹不同使用方法的規則,隨機森林使用決策樹的規則是bagging原理,而adaboost使用決策樹的規則是boosting原理!

當然更改基礎演算法也是可以的,以adaboost演算法為例,比如我使用svm演算法作為基礎演算法:

from sklearn.svm import svc

#base_estimator:基分類器,預設是決策樹,在該分類器基礎上進行boosting,理論上可以是任意乙個分類器,但是如果是其他分類器時需要指明樣本權重。

ad_clf2 = adaboostclassifier(svc(),n_estimators=500,algorithm='samme')

ad_clf2.fit(x_train,y_train)

ad_clf2.score(x_test,y_test)

最後的得分是0.43,得分不是很高。

那麼我使用決策樹為基礎演算法:

from sklearn.ensemble import adaboostclassifier

from sklearn.tree import decisiontreeclassifier

ad_clf = adaboostclassifier(decisiontreeclassifier(max_depth=2),n_estimators=500)

ad_clf.fit(x_train,y_train)

ad_clf.score(x_test,y_test)

最後得分為0.83,所以大家在使用時要多比較,選出最優的整合學習的基本演算法。

整合學習和Boosting原理總結

接自 bagging與隨機森林。整合學習 ensemble learing 通過構建並結合多個學習器來完成學習任務,有時也被稱為多酚類器系統 multi classifier system 基於委員會的學習 sommittee baseslearing 等。以下整合學習介紹來自西瓜書 個人感覺頗有幾...

SSH框架整合的學習總結

各個配置檔案 1.配置好資料庫連線需要的bean org.hibernate.dialect.mysqldialect true true update thread 注意一定要導好jar包,同時要對應好所使用的jar包中的類 這個org.springframework.orm.hibernate3...

機器學習常見演算法概述 整合學習總結

整合學習 多個弱分類器組合成乙個強分類器。1.adaboost 通過改變訓練樣本的權重 初始時權重相同,每次將前乙個分類器分類錯誤的那些樣本的權重增加,表現在分類誤差率的計算上 反覆訓練多個弱分類器,最後根據這些弱分類器的分類誤差率 權重 將他們線性組合到一起。其中分類誤差率越大權重越小。等價於損失...