在隨機森林的基礎上進行公升級。不尋找最有區別的閾值,而是為每個候選特徵隨機繪製閾值,並且這些隨機生成的閾值中的最佳閾值作為劃分規則。
極限森林 :1、樣本抽樣隨機 2、每棵樹**條件隨機(不是最好的裂分條件)
決策樹,進行**的時候,根據資訊增益最大進行裂分,刻板
交叉驗證:
資料簡單,普通演算法和複雜演算法效果一樣。資料預處理非常重要。
如何提公升準確率:資料的質量,資料的預處理,演算法的提公升,引數的調整。
二、**演練
from sklearn.ensemble import extratressclassifier,randomforsetclassifier
from sklearn.tree import decisiontreeclassifier
# 交叉驗證
from sklearn.model_selection import cross_val_score
from sklearn import datasets
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
# 葡萄酒資料
x,y = datasets.load_wine(
true
)# 使用普通樹
clf = decisiontreeclassifier(splitter=
'best'
)# 不尋找最有區別的閾值:通過:splitter='best'來體現
# 交叉驗證
cross_val_score(clf,x,y,cv=
6,scoring=
'accuracy'
).mean(
)# 使用隨機森林
forset = randomforsetclassifier(n_estimators=
100)
# 交叉驗證
cross_val_score(forest,x,y,cv=
6,scoring=
'accuracy'
).mean(
)# 使用極限森林
extra = extratreeclassifier(n_estimators=
100)
# 交叉驗證
cross_val_score(forset,x,y,cv=
6,scoring=
'accuracy'
).mean()-
----
----
----
----
----
----
----
----
----
----
----
----
----
----
----
----
----
----
--# 鳶尾花資料
x,y = datasets.load_iris(
true
)# 使用普通樹
clf = decisiontreeclassifier(splitter=
'best'
)# 不尋找最有區別的閾值:通過:splitter='best'來體現
# 交叉驗證
cross_val_score(clf,x,y,cv=
6,scoring=
'accuracy'
).mean(
)# 使用隨機森林
forset = randomforsetclassifier(n_estimators=
100)
# 交叉驗證
cross_val_score(forest,x,y,cv=
6,scoring=
'accuracy'
).mean(
)# 使用極限森林
extra = extratreeclassifier(n_estimators=
100)
# 交叉驗證
cross_val_score(forset,x,y,cv=
6,scoring=
'accuracy'
).mean(
)
scikit learn 極限森林
from sklearn.ensemble import extratreesclassifier,randomforestclassifier from sklearn.tree import decisiontreeclassifier from sklearn.model selection ...
機器學習 隨機森林
opencv包含隨機森林 random forest 類,隨機森林可以通過收集很多樹的子節點對各個類別的投票,然後選擇獲得最多投票的類別作為判斷結果。通過計算 森林 的所有子節點上的值的平均值來解決回歸問題。隨機森林包含隨機選擇的一些決策樹。隨機森林建立時的基本子系統也是決策樹,在建立決策樹時會一直...
機器學習 隨機森林
以下內容均為個人理解,如有錯誤,歡迎指出 如何生成隨機森林基學習器的訓練資料集 隨機 的含義 bagging整合學習的評測方法 隨機森林的引數 以下內容摘自周志華老師的 機器學習 隨機森林是bagging的乙個擴充套件變體,它在以決策樹為基學習器構建的bagging整合的基礎上,進一步在決策樹的訓練...