三个参数对随机森林分类结果的影响(附代码)

本文研究了随机森林分类中集成规模n_estimators、树的最大深度max_depth以及特征数max_features对模型性能的影响。通过交叉验证发现,增加n_estimators能提高准确率且不易过拟合;max_depth对模型复杂度有显著影响,较强学习器不会损害泛化能力;特征数max_features的选择,约选取特征总数的1/8能取得较好效果。
摘要由CSDN通过智能技术生成

使用手写数据集研究集成规模,树的最大深度以及特征数对随机森林分类结果的影响。代码在末尾。
手写数据集

使用交叉验证,返回accuracy,折数为10

1. 集成规模n_estimators

集成规模即树的数量。为了观察其影响,分别对数量1~40进行交叉验证,返回得到准确率并绘图。
集成规模与准确度的关系
观察可得,集成规模的增加可以提高模型在训练集和测试集上的准确度,这是因为增加树的数量可以减少偏差和方差,还可以发现模型不会随着复杂度的增加而过度拟合训练数据。

2. 树的最大深度max_depth

树的最大深度反映了单个树的复杂度,将集成规模固定为20,max_depth为变量进行类似实验。
树的最大深度与准确度的关系
显而易见,在随机森林中,决策树越强,集成的模型就越强,并不会失去泛化性。而基于一组基本学习器的其他算法可能会对弱学习器或者表现不佳的学习器产生跟强学习器一样的偏爱,例如Boosting的一些情况,

3. 特征数max_features

随机森林算法为了减少相关性以及在集成中引入随机性,从每个内部决策树的所有可用输入特征中选择k特征的随机子集。

使用较少数量的输入特征会降低各个树之间的相似性,但也会导致树的复杂性降低从而导致树的强度降低。

反之,增加特征数量可以使每棵树更强大,但也增加了树之间相关性。

特征数与准确度的关系
实验结果证明了,在一共64个特征中,选取大约 k = n f e a t u r e s = 64 = 8 k=\sqrt{n_{features}}=\sqrt{64}=8 k=nfeatures =64

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>