sklearn随机森林的参数有哪些


这篇文章主要介绍“sklearn随机森林的参数有哪些”,在日常操作中,相信很多人在sklearn随机森林的参数有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”sklearn随机森林的参数有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!随机森林
随机森林是一个元估计器,它适合数据集的各个子样本上的多个决策树分类器,并使用平均值来提高预测精度和控制过度拟合。子样本大小始终与原始输入样本大小相同,但如果bootstrap = True(默认值),则会使用替换来绘制样本。
先看这个类的参数:class sklearn.ensemble.RandomForestClassifier(n_estimators=10, criterion=’gini’, max_depth=None, min_samples_split=2, min_samples_leaf=1, min_weight_fraction_leaf=0.0, max_features=’auto’, max_leaf_nodes=None, min_impurity_decrease=0.0, min_impurity_split=None, bootstrap=True, oob_score=False, n_jobs=1, random_state=None, verbose=0, warm_start=False, class_weight=None)代码举例:具体参数意义如下:
参数:n_estimators :森林里(决策)树的数目
integer, optional (default=10) 整数,可选择(默认值为10)criterion : string, optional (default=”gini”) 字符串,可选择(默认值为“gini”)。
衡量分裂质量的性能(函数)。受支持的标准是基尼不纯度的”gini”,和信息增益的”entropy”(熵)。
注意:这个参数是特定树的。max_features : int, float, string or None, optional (default=”auto”) 整数,浮点数,字符串或者无值,可选的(默认值为”auto”)
寻找最佳分割时需要考虑的特征数目:
&如果是int,就要考虑每一次分割处的max_feature特征
&如果是float,那么max_features就是一个百分比,那么(max_feature*n_features)特征整数值是在每个分割处考虑的。
&如果是auto,那么max_features=sqrt(n_features),即n_features的平方根值。
&如果是log2,那么max_features=log2(n_features)
&如果是None,那么max_features=n_features
注意:寻找分割点不会停止,直到找到最少一个有效的节点划分区,即使它需要有效检查超过max_features的特征。max_depth : integer or None, optional (default=None) 整数或者无值,可选的(默认为None)
(决策)树的最大深度。如果值为None,那么会扩展节点,直到所有的叶子是纯净的,或者直到所有叶子包含少于min_sample_split的样本。min_samples_split : int, float, optional (default=2) 整数,浮点数,可选的(默认值为2)
分割内部节点所需要的最小样本数量:
~如果为int,那么考虑min_samples_split作为最小的数字。
~如果为float,那么min_samples_split是一个百分比,并且把ceil(min_samples_split*n_samples)是每一个分割最小的样本数量。
在版本0.18中更改:为百分比添加浮点值。min_samples_leaf : int, float, optional (default=1) 整数,浮点数,可选的(默认值为1)
需要在叶子结点上的最小样本数量:
~如果为int,那么考虑min_samples_leaf作为最小的数字。
~如果为float,那么min_samples_leaf为一个百分比,并且ceil(min_samples_leaf*n_samples)是每一个节点的最小样本数量。
在版本0.18中更改:为百分比添加浮点值。min_weight_fraction_leaf : float, optional (default=0.) 浮点数,可选的(默认值是0.0)
一个叶子节点所需要的权重总和(所有的输入样本)的最小加权分数。当sample_weight没有提供时,样本具有相同的权重max_leaf_nodes : int or None, optional (default=None) 整数或者无值,可选的(默认值为None)
以最优的方法使用max_leaf_nodes来生长树。最好的节点被定义为不纯度上的相对减少。如果为None,那么不限制叶子节点的数量。min_impurity_split : float, 浮点数
树早期生长的阈值。如果一个节点的不纯度超过阈值那么这个节点将会分裂,否则它还是一片叶子。min_impurity_decrease : float, optional (default=0.) 浮点数,可选的(默认值为0)bootstrap : boolean, optional (default=True) 布尔值,可选的(默认值为True)建立决策树时,是否使用有放回抽样。oob_score : bool (default=False) bool,(默认值为False)是否使用袋外样本来估计泛化精度。n_jobs : integer, optional (default=1) 整数,可选的(默认值为1)用于拟合和预测的并行运行的工作(作业)数量。如果值为-1,那么工作数量被设置为核的数量。random_state : int, RandomState instance or None, optional (default=None) 整数,RandomState实例,或者为None,可选(默认值为None)RandomStateIf int,random_state是随机数生成器使用的种子; 如果是RandomState实例,random_state就是随机数生成器; 如果为None,则随机数生成器是np.random使用的RandomState实例。verbose : int, optional (default=0) 整数,可选的(默认值为0)控制决策树建立过程的冗余度。warm_start : bool, optional (default=False) 布尔值,可选的(默认值为False)当被设置为True时,重新使用之前呼叫的解决方案,用来给全体拟合和添加更多的估计器,反之,仅仅只是为了拟合一个全新的森林。class_weight : dict, list of dicts, “balanced”, 字典,字典序列,”balanced”属性:estimators_ : list of DecisionTreeClassifier 决策树分类器的序列,拟合的子估计器的集合。classes_ : array of shape = [n_classes] or a list of such arrays 数组维度=[n_classes]的数组或者一个这样数组的序列。类别标签(单一输出问题),或者类别标签的数组序列(多输出问题)。n_classes_ : int or list 整数或者序列,类别的数量(单输出问题),或者一个序列,包含每一个输出的类别数量(多输出问题)n_features_ : int 整数,执行拟合时的特征数量n_outputs_ : int 整数,执行拟合时的输出数量。feature_importances_ : array of shape = [n_features] 维度等于n_features的数组,特征的重要性(值越高,特征越重要)oob_score_ : float 浮点数,使用袋外估计获得的训练数据集的得分。oob_decision_function_ : array of shape = [n_samples, n_classes] 维度=[n_samples,n_classes]的数组,在训练集上用袋外估计计算的决策函数。如果n_estimators很小的话,那么在有放回抽样中,一个数据点也不会被忽略是可能的。在这种情况下,oob_decision_function_ 可能包括NaN。注意点:参数的默认值控制决策树的大小(例如,max_depth,,min_samples_leaf等等),导致完全的生长和在某些数据集上可能非常大的未修剪的树。为了降低内容消耗,决策树的复杂度和大小应该通过设置这些参数值来控制。这些特征总是在每个分割中随机排列。因此,即使使用相同的训练数据,max_features = n_features和bootstrap = False,如果在搜索最佳分割期间所列举的若干分割的准则的改进是相同的,那么找到的最佳分割点可能会不同。为了在拟合过程中获得一个确定的行为,random_state将不得不被修正。方法:apply(X) Apply trees in the forest to X, return leaf indices.
decision_path(X) Return the decision path in the forest
fit(X,y[,sample_weight]) Build a forest of trees from the training set (X, y).
get_params([deep]) Get parameters for this estimator.
predict(X) Predict class for X.
predict_log_proba(X) Predict class log-probabilities for X.
predict_proba(X) Predict class probabilities for X.
score(X,y[,sample_weight]) Returns the mean acc 香港云主机uracy on the given test data and labels.
set_params(**params) Set the parameters of this estimator.到此,关于“sklearn随机森林的参数有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注开发云网站,小编会继续努力为大家带来更多实用的文章!

相关推荐: win7开机需要启动修复怎么设置

这篇文章主要讲解了“win7开机需要启动修复怎么设置”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“win7开机需要启动修复怎么设置”吧!设置方法:1、鼠标右键点击计算机,选择属性→高级系统设置。2、在系统属性窗…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

Like (0)
Donate 微信扫一扫 微信扫一扫
Previous 07/14 10:58
Next 07/14 10:58

相关推荐