sklearn-机器学习-随机森林

1RandomForestRegressor随机森林回归

class sklearn.ensemble.RandomForestRegressor (n_estimators=’warn’, criterion=’mse’, 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=None, random_state=None, verbose=0, warm_start=False) 所有的参数,属性与接口,全部和随机森林分类器一致。仅有的不同就是回归树与分类树的不同,不纯度的指标, 参数Criterion不一致。

参数 criterion

回归树衡量分枝质量的指标,支持的标准有三种:

(1)输入"mse"使用均方误差mean squared error(MSE),父节点和叶子节点之间的均方误差的差额将被用来作为 特征选择的标准,这种方法通过使用叶子节点的均值来最小化L2损失

(2)输入“friedman_mse”使用费尔德曼均方误差,这种指标使用弗里德曼针对潜在分枝中的问题改进后的均方误差

(3)输入"mae"使用绝对平均误差MAE(mean absolute error),这种指标使用叶节点的中值来最小化L1损失

最重要的属性和接口,都与随机森林的分类器相一致,还是apply, fit, predict和score最为核心。值得一提的是,随 机森林回归并没有predict_proba这个接口,因为对于回归来说,并不存在一个样本要被分到某个类别的概率问 题,因此没有predict_proba这个接口。

2机器学习中调参的基本思想

(1)模型太复杂或者太简单,都会让泛化误差高,我们追求的是位于中间的平衡点

(2)模型太复杂就会过拟合,模型太简单就会欠拟合

(3)对树模型和树的集成模型来说,树的深度越深,枝叶越多,模型越复杂

(4)树模型和树的集成模型的目标,都是减少模型复杂度,把模型往图像的左边移动

实例:随机森林在乳腺癌数据上的调参

sklearn-机器学习-随机森林_第1张图片

在确定好的范围内,进一步细化学习曲线

sklearn-机器学习-随机森林_第2张图片

 

3 使用网格搜索和学习曲线的大概判断方法

开始按照参数对模型整体准确率的影响程度进行调参,首先调整max_depth

sklearn-机器学习-随机森林_第3张图片

 

调整max_features

sklearn-机器学习-随机森林_第4张图片

 

调整min_samples_leaf

​​​​​​​sklearn-机器学习-随机森林_第5张图片

 

 继续尝试min_samples_split

sklearn-机器学习-随机森林_第6张图片​​​​​​​

 

#调整Criterion

 sklearn-机器学习-随机森林_第7张图片

 

 最佳参数

sklearn-机器学习-随机森林_第8张图片

你可能感兴趣的:(笔记,机器学习,随机森林)