如何使用Scikit Learn在Random Forest中调整参数?

奥卡
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, 
                                              bootstrap=True, 
                                              oob_score=False,
                                              n_jobs=1, 
                                              random_state=None,
                                              verbose=0, 
                                              warm_start=False, 
                                              class_weight=None)

我正在使用带有9个样本和大约7000个属性的随机森林模型。在这些样本中,我的分类器可以识别3个类别。

我知道这远非理想条件,但我正在尝试找出哪些属性在特征预测中最重要。哪些参数最适合优化功能重要性?

我尝试了不同的方法n_estimators,发现“重要特征”(即feature_importances_数组中的非零值)的数量急剧增加。

我已经阅读了文档,但是如果有任何经验,我想知道最适合调整哪些参数,并简要说明原因。

兰迪·奥尔森

根据我的经验,sklearn RandomForestClassifier具有三个值得探讨的功能,按重要性排序:

  • n_estimators

  • max_features

  • criterion

n_estimators确实不值得优化。您给它的估算器越多,它将做得越好。通常500或1000就足够了。

max_features值得探索许多不同的价值。这可能会对RF的行为产生很大影响,因为它决定了RF中每棵树在每个分割处考虑多少个特征。

criterion可能会产生很小的影响,但通常默认设置是可以的。如果您有时间,请尝试一下。

尝试这些参数时,请确保使用sklearn的GridSearch(最好是GridSearchCV,但您的数据集大小太小)。

但是,如果我正确理解您的问题,那么您只有9个样本和3个类?大概每个课有3个样本?除非它们是好的,有代表性的记录,否则您的RF很可能会过少地容纳少量数据。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

什么是 scikit-learn TSNE 中的 random_state 参数?

来自分类常见问题

scikit-learn中的class_weight参数如何工作?

来自分类Dev

在 scikit-learn 中使用 RandomizedSearchCV 对超参数进行条件调整

来自分类Dev

如何使用scikit-learn中的Information Gain度量选择Dataframe中的最佳功能

来自分类Dev

如何使用scikit-learn中的哈希技巧对bigrams进行矢量化处理?

来自分类Dev

如何使用Scikit Learn CountVectorizer获得语料库中的单词频率?

来自分类Dev

如何使用scikit-learn在Python中打印简单线性回归的截距和斜率?

来自分类Dev

如何使用 scikit learn 预测目标标签

来自分类Dev

如何在scikit-learn中使用随机对数回归找到最低的正则化参数(C)?

来自分类Dev

scikit-learn中的“ verbose”参数

来自分类Dev

使用** kwargs设置n_estimators参数(Scikit Learn)

来自分类Dev

如何在scikit-learn中对管道中的转换参数进行网格搜索

来自分类Dev

如何从scikit-learn中与Forecast_proba一起使用的cross_val_predict获取类标签

来自分类Dev

如何使用Scikit Learn dictvectorizer从Python中的密集数据帧获取编码数据帧?

来自分类Dev

如何在scikit-learn中预测时间序列?

来自分类Dev

在Scikit-learn的RandomForestRegressor中如何排列“ feature_importances_”

来自分类Dev

如何在scikit-learn中理解DecisionTreeClassifier的输出?

来自分类Dev

如何在scikit-learn的DecisionTreeRegressor中获取节点的MSE?

来自分类Dev

在Scikit-learn的RandomForestRegressor中如何排列“ feature_importances_”

来自分类Dev

如何在scikit Learn,Python中处理名义数据?

来自分类Dev

在scikit-learn中对LogisticRegressionCV()使用l1惩罚

来自分类Dev

使用 scikit learn 在词典学习中获得记忆错误

来自分类Dev

如何使用scikit-learn评估预测的置信度得分

来自分类Dev

如何使用scikit-learn加载和处理.txt文件?

来自分类Dev

如何在scikit-learn中使用tfidf计算功能?

来自分类Dev

如何使用scikit-learn执行多元线性回归?

来自分类Dev

如何使用scikit-learn训练XOR模型?

来自分类Dev

如何在scikit-learn中使用tfidf计算功能?

来自分类Dev

scikit-learn:如何使用拟合概率模型?

Related 相关文章

  1. 1

    什么是 scikit-learn TSNE 中的 random_state 参数?

  2. 2

    scikit-learn中的class_weight参数如何工作?

  3. 3

    在 scikit-learn 中使用 RandomizedSearchCV 对超参数进行条件调整

  4. 4

    如何使用scikit-learn中的Information Gain度量选择Dataframe中的最佳功能

  5. 5

    如何使用scikit-learn中的哈希技巧对bigrams进行矢量化处理?

  6. 6

    如何使用Scikit Learn CountVectorizer获得语料库中的单词频率?

  7. 7

    如何使用scikit-learn在Python中打印简单线性回归的截距和斜率?

  8. 8

    如何使用 scikit learn 预测目标标签

  9. 9

    如何在scikit-learn中使用随机对数回归找到最低的正则化参数(C)?

  10. 10

    scikit-learn中的“ verbose”参数

  11. 11

    使用** kwargs设置n_estimators参数(Scikit Learn)

  12. 12

    如何在scikit-learn中对管道中的转换参数进行网格搜索

  13. 13

    如何从scikit-learn中与Forecast_proba一起使用的cross_val_predict获取类标签

  14. 14

    如何使用Scikit Learn dictvectorizer从Python中的密集数据帧获取编码数据帧?

  15. 15

    如何在scikit-learn中预测时间序列?

  16. 16

    在Scikit-learn的RandomForestRegressor中如何排列“ feature_importances_”

  17. 17

    如何在scikit-learn中理解DecisionTreeClassifier的输出?

  18. 18

    如何在scikit-learn的DecisionTreeRegressor中获取节点的MSE?

  19. 19

    在Scikit-learn的RandomForestRegressor中如何排列“ feature_importances_”

  20. 20

    如何在scikit Learn,Python中处理名义数据?

  21. 21

    在scikit-learn中对LogisticRegressionCV()使用l1惩罚

  22. 22

    使用 scikit learn 在词典学习中获得记忆错误

  23. 23

    如何使用scikit-learn评估预测的置信度得分

  24. 24

    如何使用scikit-learn加载和处理.txt文件?

  25. 25

    如何在scikit-learn中使用tfidf计算功能?

  26. 26

    如何使用scikit-learn执行多元线性回归?

  27. 27

    如何使用scikit-learn训练XOR模型?

  28. 28

    如何在scikit-learn中使用tfidf计算功能?

  29. 29

    scikit-learn:如何使用拟合概率模型?

热门标签

归档