线性回归:损失

损失是一个数字指标,用于描述 模型的预测错误 。损失衡量的是模型预测结果与实际预测结果之间的距离, 标签。训练模型的目标是将损失降至最低, 可能的最低值。

在下图中,您可以将损失可视化为从数据中绘制的箭头 都指向模型。箭头显示模型的预测结果与预测结果之间的差距 实际值。

图 9.损失线将数据点连接到
模型。

图 9. 损失的衡量范围为实际值与预测值。

损失距离

在统计学和机器学习中,损失衡量的是 预测值和实际值。损失侧重于值之间的距离, 而不是方向例如,如果模型预测为 2,但实际值为 5,我们不关心损失为负数 $ -3 $ ($ 2-5=-3 $)。 而是使值之间的距离为 $ 3 $。因此, 计算损失的方法会移除符号。

移除符号的最常用方法有两种:

  • 计算实际值与 预测。
  • 计算实际值与预测结果之间的差值。

损失类型

线性回归模型主要有四种损失类型, 下表。

损失类型 定义 公式
L1 损失 差值的绝对值总和 预测值与实际值之间的差异。 $ ∑ |实际值 - 预测值 |美元
平均绝对误差 (MAE) 一组样本的 L1 损失平均值。 $ \frac{1}{N} ∑ |实际值 - 预测值 |美元
L2 损失 平方差的总和 预测值与实际值之间的差异。 $ ∑(实际\值 - 预测\值)^2 $
均方误差 (MSE) 一组样本的 L2 损失平均值。 $ \frac{1}{N} ∑(实际值 - 预测值)^2 $

L1 损失与 L2 损失之间的函数差异 即 MAE 和 MSE 之间的平方。当 很大,平方会让损失更大。当 差异很小(小于 1),则平方会让损失更小。

在一次处理多个样本时,我们建议对损失求平均值 无论是使用 MAE 还是 MSE,

计算损失示例

使用前面的最佳拟合线, 我们将计算单个样本的 L2 损失。在 最佳拟合线,权重和偏差值如下:

  • $ \small{重量:-3.6} $
  • $ \small{偏见:30} $

如果模型预测一辆 2,370 磅的汽车每加仑行驶 21.5 英里,但 每加仑大约能行驶 24 英里,我们可以按以下公式计算 L2 损失: 如下:

公式 结果
预测

$\small{偏差 +(权重 * 特征\值)}$

$\small{30 + (-3.6*2.37)}$

$\small{21.5}$
实际值 $ \small{ 标签 } $ $ \small{ 24 } $
L2 损失

$ \small{ (预测 - 实际\值)^2} $

$\small{ (21.5 - 24)^2 }$

$\small{6.25}$

在此示例中,该单个数据点的 L2 损失为 6.25。

选择损失

使用 MAE 还是 MSE 取决于数据集和 处理某些预测。数据集中的大多数特征值通常 处于不同的范围内。例如,汽车通常介于 2000 到 5000 磅,每加仑在 8 到 50 英里之间。一辆 8,000 磅重的汽车 或每加仑能行驶 100 英里的汽车不在正常范围内, 被视为离群值

离群值也可以指模型预测与真实情况之间的差距 值。例如,重 3,000 磅的汽车或每加仑可行驶 40 英里的汽车 在典型范围内但是,一辆重 3000 磅的汽车 根据模型的预测,每加仑 40 英里/加仑将是一个离群值 因为模型预测一辆 3000 磅的汽车大约可以 每加仑为 20 英里。

在选择最佳损失函数时,请考虑您希望模型如何处理 离群值。例如,MSE 使模型更接近离群值,而 MAE 则不可以。L2 损失函数对离群值的惩罚要比离群值高得多, L1 损失。例如,下图显示了一个经过训练的模型 使用 MAE 和使用 MSE 训练的模型。红线表示 将用于进行预测的经过训练的模型。离群值更接近于 与使用 MAE 训练的模型相比,使用 MSE 训练的模型。

图 10。模型更偏向离群值。

图 10. 使用 MSE 训练的模型会使模型更接近离群值。

图 11. 模型倾斜得远离离群值。

图 11. 使用 MAE 训练的模型离离群值更远。

请注意模型与数据之间的关系:

  • MSE。模型更接近离群值,但离大部分数据 其他数据点。

  • MAE。模型离离群值更远,但更接近 其他数据点。

检查您的理解情况

请考虑以下两个图表:

包含 10 个点的图表。
      一条线穿过 6 个点。2 积分等于 1 个单位
      (在行上方)另外 2 个点在线下方 1 个单位。 包含 10 个点的图表。线路运行
      也就是 8 个数据点1 积分等于 2 个单位
      (在行上方)另外 1 个点在线下方 2 个单位。
上述图表中显示的两个数据集中的哪一项 均方误差 (MSE) 较高吗?
左侧的数据集。
线上的六个样本产生的总损失为 0。四 没有线的样本也不会落差很大,因此, 对偏移量求平方仍会得到一个低值:$MSE = \frac{0^2 + 1^2 + 0^2 + 1^2 + 0^2 + 1^2 + 0^2 + 1^2 + 0^2 + 0^2} {10} = 0.4 美元
右侧的数据集。
线上的 8 个样本产生的总损失为 0。不过, 虽然只有两个点还没结束 点的离线距离是离群点的 2 倍 如左图所示平方损失扩大了这些差异, 因此 2 的偏移产生的损失是偏移的 4 倍 1 个:$MSE = \frac{0^2 + 0^2 + 0^2 + 2^2 + 0^2 + 0^2 + 0^2 + 2^2 + 0^2 + 0^2} {10} = 0.8 美元