【问题标题】:optimizing RandomForestRegressor for other metrics针对其他指标优化 RandomForestRegressor
【发布时间】:2014-09-08 08:09:58
【问题描述】:

sklearn 随机森林的文档页面说

唯一支持的标准是均方误差的“mse”。

我的数据很乱并且有异常值,我觉得 MAE 或一些强大的惩罚函数会表现得更好。

有没有办法让随机森林回归器适合其他指标,例如迭代,或者是否有其他 python 开源替代方案,或者我对要求其他指标的假设本身是错误的? Sklearn 在其他领域非常发达,所以我觉得奇怪的是只有 mse 支持随机森林这样重要的方法。

【问题讨论】:

  • 这里的“迭代”是什么意思?如果您愿意,可以添加不同的拆分标准,但您需要一些 cython 知识。
  • @AndreasMueller 是的,我认为“迭代”在这里不适用,我想到了一些重新加权的复杂方案。谢谢,我去看看 cython 和 scikit 的源码。

标签: python scikit-learn


【解决方案1】:

您可以使用GridSearchCVRandomizedSearchCV 来优化交叉验证循环中的另一个标准。森林本身仍会针对 MSE 进行优化,但 CV 循环会在选择的参数设置中找到森林,从而优化您感兴趣的实际标准。(它针对 CV 分数进行优化,而不是针对训练集分数进行优化。)

【讨论】:

  • 感谢您的回答,抱歉,没有足够的声望投票。我不确定这里的 GridSearchCV,虽然通常是很好的调优工具,但它只允许选择诸如树深度或估计器数量之类的小东西,它不会影响拆分决策过程本身。
猜你喜欢
  • 2019-02-21
  • 2011-06-16
  • 2012-03-15
  • 2018-12-24
  • 2011-05-18
  • 1970-01-01
  • 2021-11-03
  • 2020-09-08
  • 2018-05-30
相关资源
最近更新 更多