sklearn中的随机森林
阅读了Python的sklearn包中随机森林的代码实现,做了一些笔记。
sklearn中的随机森林是基于RandomForestClassifier类实现的,它的原型是 class RandomForestClassifier(ForestClassifier) 继承了一个抽象类ForestClassifier,也就是分类树 RandomForestClassifier有若干个参数,下面我们一个个来看:
n_estimators 随机森林中树的个数 默认为10 criterion 每一次分裂的标准,有两个可选项,默认的基尼系数("gini")和熵(“entropy”) max_features 每一次生成树时使用的特征数量,默认为“auto”。若为int则为对应的数量;若为float则对应n_estimators*max_features,即此时max_features对应的一个百分比;若为“auto”或“sqrt”,max_features=sqrt(总的特征数);若为“log2”,则为log2(总的特征数);若为None,则为总的特征数。 max_depth决策树的最大深度,默认为None min_samples_split每次分裂节点是最小的分裂个数,即最小被分裂为几个,默认为2 min_samples_leaf若某一次分裂时一个叶子节点上的样本数小于这个值,则会被剪枝,默认为1 max_leaf_nodes最大的叶子节点的个数,默认为None,如果不为None,max_depth参数将被忽略 min_weight_fraction_leaf oob_score、bootstrap这个两个参数决定是否使用out-of-bag进行误差度量和是否使用bootstrap进行抽样,默认都是False n_jobs并行计算的个数,默认为1,若为-1,则选择为cores的个数 random_state 默认使用np.random verbose
Controls the verbosity of the tree building process. warm_start 是否热启动,默认为True class_weight权重 默认全为1
首先把标签和特征分离
from sklearn.cross_validation import train_test_split
feature_train, feature_test, target_train, target_test = train_test_split(feature, target, test_size=0.1, random_state=42)
主要的方法有
model = RandomForestClassifier(n_estimators=1000)
model.fit(feature_train , target_train) # 创建一个随机森林
predict=predict(Z) # 对新的样本Z做预测
score = model.score(feature_test , target_test) # 评估正确率
sklearn中的随机森林的更多相关文章
- H2O中的随机森林算法介绍及其项目实战(python实现)
H2O中的随机森林算法介绍及其项目实战(python实现) 包的引入:from h2o.estimators.random_forest import H2ORandomForestEstimator ...
- sklearn中实现随机梯度下降法(多元线性回归)
sklearn中实现随机梯度下降法 随机梯度下降法是一种根据模拟退火的原理对损失函数进行最小化的一种计算方式,在sklearn中主要用于多元线性回归算法中,是一种比较高效的最优化方法,其中的梯度下降系 ...
- 机器学习实战基础(三十六):随机森林 (三)之 RandomForestClassifier 之 重要属性和接口
重要属性和接口 至此,我们已经讲完了所有随机森林中的重要参数,为大家复习了一下决策树的参数,并通过n_estimators,random_state,boostrap和oob_score这四个参数帮助 ...
- 【笔记】随机森林和Extra-Trees
随机森林和Extra-Trees 随机森林 先前说了bagging的方法,其中使用的算法都是决策树算法,对于这样的模型,因为具有很多棵树,而且具备了随机性,那么就可以称为随机森林 在sklearn中封 ...
- paper 56 :机器学习中的算法:决策树模型组合之随机森林(Random Forest)
周五的组会如约而至,讨论了一个比较感兴趣的话题,就是使用SVM和随机森林来训练图像,这样的目的就是 在图像特征之间建立内在的联系,这个model的训练,着实需要好好的研究一下,下面是我们需要准备的入门 ...
- 笔记+R︱风控模型中变量粗筛(随机森林party包)+细筛(woe包)
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 本内容来源于CDA-DSC课程内容,原内容为& ...
- 随机森林、gbdt算法
http://blog.csdn.net/songzitea/article/details/10035757 http://blog.csdn.net/holybin/article/details ...
- 04-10 Bagging和随机森林
目录 Bagging算法和随机森林 一.Bagging算法和随机森林学习目标 二.Bagging算法原理回顾 三.Bagging算法流程 3.1 输入 3.2 输出 3.3 流程 四.随机森林详解 4 ...
- 什么是机器学习的分类算法?【K-近邻算法(KNN)、交叉验证、朴素贝叶斯算法、决策树、随机森林】
1.K-近邻算法(KNN) 1.1 定义 (KNN,K-NearestNeighbor) 如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类 ...
随机推荐
- 模块初识2-模块的默认保存路径Python36-32\\lib\\site-packages,Python36-32\,标准库和第三方库
import 可以直接导入当前目录的其他脚本 如果你把login.py移动到new_dir的目录下,那么就会提示找不到模块: 要解决这个问题,有两个方法: 1.把login.py复制到C:\\User ...
- lnmp环境应用实践
LNMP 用户通过浏览器输入域名请求nginx web服务,如果请求时静态资源,则由nginx解析返回给用户:如果是动态请求(.php结尾),那么nginx就会把它通过FastCGI接口(生产常用方法 ...
- 第六章 通过Service访问Pod(下)
6.4 外网如何访问service (1)ClusterIp: Service通过Cluster内部的IP对外提供服务,只有Cluster内的节点和Pod可以访问,这是默认的Service类型. (2 ...
- 十六 在沉睡中停止(在sleep() 状态下停止线程)
1 如果线程在sleep()状态下停止线程,会是什么效果? 答案: 如果在sleep状态下停止某一线程,会进入sleep的catch块中, 抛出InterruptedException 异常,并且清除 ...
- 如何混编c++
1. 如何混编c++ 用 Xcode4 创建一个 工程,如果在任意一个文件AAA.h的头部加入 #include<string> using namespace std; 编译运行, ...
- Cocos开发前准备
Cocos2d-HTML5( http://www.cocos2d-x.org )引擎 代码编辑器:webstorm (http://www.jetbrains.com/)+ Sublime Text ...
- centos 6.3 kickstart 装机卡在 unsupported hardware detected 页面
起因 最近厂里一批 dell 新机器 centos 6.3 装机卡在 Unsupported Hardware Detected 页面,要人肉点击 OK 才能继续装机: Unsupported Har ...
- Android六大进程间通信方式总结之一:基本知识
因为不同进程都是享有独立资源的,所以全局变量这些都是无效的,必须有其他的进程间通信方式. 一.基本知识 1:怎样使用多进程 Android正常使用的多进程的办法只有一种,就是在Service或Acti ...
- interrupt 1 using 1
释疑:void Timer0() interrupt 1 using 1 Timer0 是函数名,随便取的 interrupt xx using y 跟在interrupt 后面的 ...
- python:数组/列表(remove()函数、append()函数、sort()函数、reverse()函数)
排序: 1:整理顺序 #冒泡 lista = [5,7,11,19,99,63,3,9,1] list = [] while lista != []: number = 0 for i in list ...