随机森林的特点
我们前边提到,随机森林是一种很灵活实用的方法,它有如下几个特点:
1.在当前所有算法中,具有极好的准确率
2.能够有效地运行在大数据集上;
3.能够处理具有高维特征的输入样本,而且不需要降维
4.能够评估各个特征在分类问题上的重要性
5.在生成过程中,能够获取到内部生成误差的一种无偏估计
6.对于缺省值问题也能够获得很好得结果
实际上,随机森林的特点不只有这六点,它就相当于机器学习领域的Leatherman(多面手),你几乎可以把任何东西扔进去,它基本上都是可供使用的。在估计推断映射方面特别好用,以致都不需要像SVM那样做很多参数的调试。具体的随机森林介绍可以参见随机森林主页:Random Forest。
方法实现:
回归问题
利用sklearn.ensemble包中的RandomForestRegressor,此函数的重要参数说明:
n_estimators:建立树的个数,也就是上图中的N;
criterion:计算分割点的方法,默认为基尼系数,默认即可;
max_features:随机选择特征的个数,默认为"auto",回归问题默认即可;
max_depth:树的最大深度,默认即可;
min_samples_split:节点数据集中的样本个数等于次数则不再分裂,默认即可;
分类问题
利用sklearn.ensemble包中的RandomForestClassifie,此函数的重要参数说明:
n_estimators:建立树的个数,也就是上图中的N;
criterion:计算分割点的方法,默认为基尼系数,默认即可;
max_features:随机选择特征的个数,默认为"auto",设为“sqrt”;
max_depth:树的最大深度,默认即可;
min_samples_split:节点数据集中的样本个数等于次数则不再分裂,默认即可;
一般,参数的组合选择,可选用交叉验证法获得比较好的参数组合。
daimakuai
daima
网友评论