Day18 随机森林法实作

https://github.com/PacktPublishing/Machine-Learning-Algorithms

使用sci-kit learn

一样先导入套件,上面的是用来算数学的;下面的是用来画画的,并且帮它们取绰号(np & plt)。

import numpy as np
import matplotlib.pyplot as plt

再来,用seed()随机产生整数的乱数後,设定树的数量100,再用for回圈将准确率加到rf_accuracy里面。根据下图结果,可以知道大概在30到40棵树之间,准确率会高达95%,最後会趋近稳定。

from sklearn.datasets import make_classification
rf_accuracy = []
np.random.seed(1000)
nb_classifications = 100
for i in range(1, nb_classifications):
    a = cross_val_score(RandomForestClassifier(n_estimators=i), digits.data, digits.target, scoring='accuracy',cv=10).mean()
    rf_accuracy.append(a)

https://ithelp.ithome.com.tw/upload/images/20210922/20137546yPS3Wc3gym.png

sci-kit learn还有提供一种可选出最佳门槛的版本,使用ExtraTreesClassifier类别,可以帮助减少变异数。可以看到大概在20棵树左右就有约95%的准确率了。

from sklearn.ensemble import ExtraTreesClassifier
for i in range(1, nb_classifications):
  a = cross_val_score(ExtraTreesClassifier(n_estimators=i), digits.data, digits.target, scoring='accuracy',cv=10).mean()
  et_accuracy.append(a)

https://ithelp.ithome.com.tw/upload/images/20210924/20137546bSMf4Lwd8c.png


<<:  Day 9 - 用 canvas 复刻 小画家 曲线

>>:  Day 10 - [Zenbo开发系列] 07-DDE与App Builder

AWS Academy LMS 新增学生 - 教师

当开设一个 AWS Academ 课程後(可参考 AWS Academy LMS 申请开课 - 教师...

[DAY 30] _韧体学习路程经验谈

我这经验分享适用刚入这行的人,不适合已经会有很多开发经验的人,我最後一天来谈谈我学习这单晶片嵌入式系...

上传档案 - day19

Upload Vaadin 档案上传档案使用 Upload Component,Upload 支援单...

【第十一天 - Two-pointer 题目分析】

先简单回顾一下,今天预计分析两个题目: Remove Duplicates from Sorted ...

Day 16 - 进行影像辨识训练

Day 16 - 进行影像辨识训练 在进行训练的过程中,我们可能因为某些关系而中断训练,可能是网路断...