在机器学习的背景下,“基线”是什么意思?

数据挖掘 机器学习 回归 预测建模 术语
2021-10-10 22:42:59

在机器学习和数据科学的背景下,“基线”是什么意思?

有人给我写信:

提示:适当的基线将给出大约 200 的 RMSE。

我不明白这个。他的意思是,如果我对训练数据的预测模型的 RMSE 低于 500,那就很好?

什么是“基线方法”?

3个回答

基线是非常基本的模型/解决方案的结果。您通常创建一个基线,然后尝试制作更复杂的解决方案以获得更好的结果。如果你获得比基线更好的分数,那很好。

基线是一种使用启发式、简单汇总统计、随机性或机器学习来为数据集创建预测的方法。您可以使用这些预测来衡量基线的性能(例如,准确性)——然后,该指标将成为您与任何其他机器学习算法进行比较的指标。

更详细地说:

机器学习算法试图学习一个函数,该函数对输入(特征)数据和目标变量(或标签)之间的关系进行建模。当您测试它时,您通常会以一种或另一种方式衡量性能。例如,您的算法可能准确率为 75%。但是,这是什么意思?您可以通过与基线的性能进行比较来推断此含义。

典型的基线包括scikit-learn 的“虚拟”估计器支持的基线:

分类基线:

  • “分层”:通过尊重训练集的类分布来生成预测。
  • “most_frequent”:总是预测训练集中最频繁的标签。
  • “prior”:总是预测使先验类最大化的类。
  • “uniform”:随机均匀地生成预测。
  • “常量”:总是预测用户提供的常量标签。

这对于评估非多数类的指标很有用。

回归基线:

  • “median”:总是预测训练集的中位数
  • “分位数”:总是预测训练集的指定分位数,提供分位数参数。
  • “常量”:始终预测用户提供的常量值。

一般来说,您会希望您的方法优于您选择的基线。在上面的示例中,您希望 75% 的准确度高于您在相同数据上运行的任何基线。

最后,如果您正在处理机器学习的特定领域(例如推荐系统),那么您通常会选择当前最先进(SoTA)方法的基线 - 因为您通常希望证明您的方法比这些做得更好。例如,当您评估一种新的协同过滤算法时,您可能希望将其与矩阵分解进行比较——矩阵分解本身是一种学习算法,但现在已成为一种流行的基准,因为它在推荐系统研究中非常成功。

由于我们有许多机器学习算法,我们必须知道哪种机器学习算法最适合我们的问题。这将由基线预测算法识别,

基线预测算法提供一组预测,您可以像对问题的任何预测一样评估这些预测,例如分类准确度或 RMSE。

在针对您的问题评估所有其他机器学习算法时,这些算法的分数提供了所需的比较点。

有关更多信息,我们有一个关于 ML 的非常好的博客:在机器学习的背景下,“基线”是什么意思?