线性机器学习算法“经常”具有高偏差/低方差?

数据挖掘 线性回归 方差 偏见
2022-03-01 08:26:55

这篇解释机器学习中偏差和方差含义的博客中,“偏差-方差权衡”标题下有一行内容:

参数或线性机器学习算法通常具有高偏差但低方差。

我知道第一句话中有一个“经常”,但它怎么可能是真的呢?
如果线性 ML 算法具有高偏差,我们怎么能期望它具有低方差?

4个回答

“经常”是这里的关键——线性模型的构建方式,尤其是与其他类型的模型相比,更有可能偏爱某些类型的错误……在这种情况下,它们更有可能产生偏差——类型错误而不是方差类型。另一种思考方式是,大多数线性模型会给你总体上大致正确的预测,而不是特别准确或非常不准确的预测。显然这是一个超级简单的阅读,但我找到了一种直观的方法。从本质上讲 - 构建线性模型的方式将导致他们进行更普遍的预测,而不是反映数据中的每一种类型的曲折。这部分是模型本身的功能,

如果您考虑公式,一种解释方法是截距概括了模型的预测。话虽如此,如果有足够的变量和某些类型的数据,很有可能过度训练线性模型(这会使它倾向于方差类型的错误)。

我喜欢将偏差/方差权衡问题视为一个具有三个因素的问题,而不仅仅是标题中的两个因素。我将使用下面的简短定义(有关更多信息,我发现维基百科关于该主题的文章相对清晰):

  1. 偏差 - 导致通常被认为是“欠拟合”的错误类型,高偏差可能会以未捕获(丢失)数据中的重要细微差别为代价来很好地概括
    1. 方差 - 导致经常被认为是“过度拟合”的错误类型,高方差将捕获训练数据中的大多数细微差别,包括噪声,这将降低其泛化到未来类似数据集的可能性
    2. 数据/数据质量——虽然通常不包含在对权衡的经典理解中,但数据类型和质量对于理解为什么某个模型倾向于权衡的偏差或方差方面是不可或缺的。这还包括任何类型的时间效应或其他怪癖,本质上意味着训练/测试拆分将无法正确代表模型的未来性能,尤其是对于线性模型。

偏差是模型在训练阶段的误差。如果你的目标是 96% 的准确率,而你得到了 90%,那么你就有 6% 的偏差。方差是训练和验证之间的误差差异,因此,举个相同的例子,如果你得到 80% 的验证准确率,你就有 10% 的方差。

线性 ML 算法不适用于非线性情况,这是大多数实际情况。然后,通常,线性模型在训练数据上表现不佳(高偏差),在验证集上表现同样糟糕(低方差)。在这种情况下,模型对数据的拟合不足,太简单了。

举个例子:

  • 所需准确度:95%
  • 训练准确率:65%
  • 验证准确率:62%

如果我们将 LR 称为不复杂的模型,线性回归通常是一个高偏差低方差 ml 模型。这意味着由于它很简单,因此在大多数情况下它可以很好地概括,而在某些极端情况下有时会表现得更差。所以答案是更简单的模型是高偏差、低方差模型。

对不起,但我认为声明

参数或线性机器学习算法通常具有高偏差但低方差。

不是真的。

普通最小二乘法 (OLS) - 在某些假设下,即Gauss-Markov-Theorem - 是无偏的。它被称为“最佳线性无偏估计器”(BLUE)。如果我们将非线性参数(例如多项式)添加到回归方程,则可以保留此属性。所以数据中的非线性不是这里的问题。

使用 Lasso 或其他类似 boosting 的方法可以减少方差,但会引入偏差。所以我认为该声明必须是相反的。

参数或线性机器学习算法通常具有高方差但低偏差。