我使用python在二进制目标类的不平衡数据集上运行随机森林。我想将默认概率阈值0.5更改为另一个值以提高召回率和精确度。到目前为止,我找不到任何可用于执行此任务的已定义方法或类。任何人都可以请教一个方法,或者是否意味着我应该自己编写代码?干杯如何在随机森林中设置自己的概率阈值?
0
A
回答
1
的RandomForestClassifier scikit学习没有固定的阈值,以指定一个类样品。正如你在RandomForestClassifier.predict的源代码中看到的那样,它只是返回最可能的类。当然你可以使用@thiom提出的方法,但我很难想象这会提高精度和回忆。
举例来说,如果你选择的阈值是0.7和类概率为0.6和0.4,你什么分配类?一个都没有?
作为一种替代方法,您可以尝试使用RandomForestClassifier的class_weight
选项来更多地重视您的代表性不足的班级。
+0
我同意。改变预测概率并不是提高不平衡类的精度/召回率的有效方法。您将需要更新您的模型训练策略,如玩类别权重(如Rene所建议的)或更改抽样频率。 – tihom
相关问题
- 1. 随机森林clasification:如何从“probabilityCol”推断类概率
- 2. 从随机森林中检索结果的概率
- 3. P值为随机森林
- 4. 随机森林的高OOB错误率
- 5. 如何从Spark ML随机森林中获得对应于该类的概率
- 6. 如何从回归随机森林中获得概率密度函数?
- 7. python中的随机森林
- 8. 如何将随机森林预测概率转换为单个分类响应?
- 9. OpenCV随机森林:设置随机种子
- 10. 具有NaN值的随机森林
- 11. 随机森林分析
- 12. OpenCV - 随机森林示例
- 13. 加权随机森林
- 14. 随机森林中的子集
- 15. 随机森林中的ValueError(Python)
- 16. 随机森林中的套袋和max_feature
- 17. scikit-learn中的随机森林解释
- 18. R中的随机森林算法
- 19. ScikitLearn中的Undersampling vs class_weight随机森林
- 20. 随机森林中的树细节
- 21. 如何在随机森林中得到正确的类别,预测类别和预测概率?
- 22. 如何在R中的随机森林中确定节点数
- 23. PHP随机概率
- 24. 随机概率PHP
- 25. 概率随机数?
- 26. 使用sklearn在随机森林中自动超参数调整?
- 27. 随机的值从枚举的概率
- 28. 随机森林参数“keep.forest”的含义
- 29. 随机森林树的终点
- 30. 随机森林的二进制数据
您正在运行哪个库? Python没有“随机森林”。 –
@AmiTavory我使用'from sklearn.ensemble import RandomForestClassifier' – LUSAQX
您可以使用'p = clf.predict_proba(X)'得到概率,然后计算'Y = p> custom_value' – tihom