选择回归模型的正确指标

我一直使用r2 score指标。我知道有很多评估指标,我读过几篇相关的文章。由于我在机器学习领域还是一个初学者,我仍然对以下几点感到非常困惑:

  1. 什么时候使用每个指标,是否取决于我们的具体情况,如果是,请举个例子
  2. 我读了这篇文章,它说r2 score并不直接,我们需要其他东西来衡量模型的性能。这是否意味着我们需要多个评估指标才能更好地了解模型性能?
  3. 如果我们只用一个评估指标来衡量模型性能,是否推荐这样做?
  4. 根据这篇文章,了解我们数据的分布和业务目标有助于我们选择合适的指标。这是什么意思?
  5. 如何知道对于每个指标,模型是否“足够好”?

回答:

回归问题有以下不同的评估指标:

  1. 均方误差(MSE)
  2. 均方根误差(RMSE)
  3. 平均绝对误差(MAE)
  4. R²或决定系数
  5. 均方百分比误差(MSPE)
  6. 等等…

如你所述,你需要根据问题类型、你想要衡量的内容以及数据的分布来使用这些指标。

  1. 要做到这一点,你需要了解这些指标如何评估模型。你可以从这篇很棒的博客文章中查看评估指标的定义和优缺点。
  2. 显示你的目标变量的变化有多少是由独立变量描述的。一个好的模型可以给出接近1.0的分数,但这并不意味着它必须如此。低的模型也可能给出低MSE分数。因此,为了确保你的模型的预测能力,最好使用MSERMSE或其他指标来补充
  3. 不可以。你可以使用多个评估指标。重要的是,如果你比较两个模型,你需要使用相同的测试数据集和相同的评估指标。
  4. 例如,如果你想过多地惩罚你的坏预测,你可以使用MSE评估指标,因为它基本上衡量我们的预测的平均平方误差,或者如果你的数据中有太多离群值,MSE会对这些例子施加过多的惩罚。
  5. 对“好模型”的定义会根据问题的复杂性而变化。例如,如果你训练一个模型来预测正面或反面,并且给出49%的准确率,这还不够好,因为这个问题的基线是50%。但对于其他任何问题,49%的准确率可能对你的问题来说足够了。所以总的来说,这取决于你的问题,你需要定义或考虑人类(基线)阈值。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注