【数据挖掘】【笔记】之sklearn.ensemble

来源:互联网 发布:网络上小泰迪什么意思 编辑:程序博客网 时间:2024/06/03 07:28

ensemble methods

组合几个不同的模型结果以增强泛化能力和鲁棒性。

  • In averaging methods, 原则是建立几个独立的模型,对结果取均值,可以降低方差(取均值可降低方差的原因:平均可以平滑曲线)

    Examples: Bagging methods, Forests of randomized trees, …

  • By contrast, in boosting methods, 基础模型相继建立,后续模型建立的标准是降低上一模型的偏差。是一系列弱学习器的组合,

    Examples: AdaBoost, Gradient Tree Boosting, …

bagging meta-estimator

一组算法在随机生成的子数据集中训练并产生预测,然后把单独的预测组合成最后的预测。用来降低基础模型的方差。

bagging强且复杂的模型效果明显,相反的boosting适合处理弱学习器。

bagging主要依照划分训练集的方法分类:
- 随机划分数据集:Pasting
- 有放回的划分样本:Bagging
- 依照特征的随机划分:Subspaces
- 随机的样本和特征划分:Random Patches

  • max_samplesmax_features(依据样本和特征)控制子数据集的大小。
  • boostrapboostrap_features控制样本和特征是否有放回

random forests

样本有放回的集成树模型。使用部分特征训练基础模型,偏差可能增加。但是由于平均,方差减小。

sklearn中分类器平均预测概率而不是对结果投票。

extreamely randomized trees

决策树分裂过程的划分点也是随机的。更多的降低子模型的方差,以及更多的偏差。

调参

主要调整n_estimatorsmax_features
- n_estimators越高越好,但是计算量大,且超过一个阈值后带来的提升会减少。
- max_features,越低方差越小,但是增加偏差。
- 经验上来说,回归问题max_features=n_features, 分类max_features=sqrt(n_feautres).
- 对max_depth不加限制,且min_samples_split=1能够充分拟合树模型。

原创粉丝点击