0
点赞
收藏
分享

微信扫一扫

Python 随机森林分类


                                       Python 随机森林分类

1 声明

本文的数据来自网络,部分代码也有所参照,这里做了注释和延伸,旨在技术交流,如有冒犯之处请联系博主及时处理。

2 决策树分类简介

相关概念见下:

决策树的最大问题是树在训练集生成的过于茂密,导致过拟合(即在训练集上表现卓越但在测试集上效果很差)。这时随机森林就应运而生了。在随机森林里会有很多决策树,而每颗决策树只接收自举样本且每个节点仅围绕部分特征寻找最好的分割。随机决策树的森林最后通过投票的方式选出最后的预测分类。

注:自举样本是指从一个较大的样本中 "自举 "出来的较小样本。Bootstrap是一种重新取样的方法,即从一个原始样本中反复抽取大量相同大小的小样本,并进行替换。

随机森林分类里的几个参数:

max_features:每个节点选择的特征的最大数

boostrap:指定是否以自举采样

n_estimators: 指定决策树的个数

n_jobs:并行数量,等于-1是最大化计算资源

 

3 随机森林分类代码与注释示例

# 加载随机森林分类包
from sklearn.ensemble import RandomForestClassifier
from sklearn import datasets
# 加载数据与模型创建
iris = datasets.load_iris()
features = iris.data
target = iris.target
randomforest = RandomForestClassifier(random_state=0, n_jobs=-1)
# 训练模型
model = randomforest.fit(features, target)
# 预测分类
observation = [[ 5, 4, 3, 2]]
# Predict observation's class
print(model.predict(observation))

4 总结

举报

相关推荐

0 条评论