我們上次介紹決策樹,今天要來介紹隨機森林。
隨機森林,顧名思義就是隨機長出很多的決策樹一起進行演算。如果有實作上次的決策樹,你可能會發現每次的準確率都不太一樣,如果倒楣一點你可能會遇到很大的差異。
如果你的資料內容演算出來會有這樣的問題的話,不妨改用隨機森林試試看。不一定會提高準確率,但是相較起來準確率會比較平均。
我們先載入隨機森林
from sklearn.ensemble import RandomForestClassifier
中間分組訓練的過程我們就跳過了,請自己看前兩篇
接著開始使用隨機森林
# 隨機森林
#設定隨機森林
forest = RandomForestClassifier(criterion='entropy', n_estimators=100, random_state=3, n_jobs=2)
forest.fit(X_train, y_train) #學習
error = 0
count = 0
for i, v in enumerate(forest.predict(X_test)):
count += 1
if v != y_test[i]:
print(i, v)
error += 1
print(count)
print(error)