损失是一个数字指标,用于描述 模型的预测错误 。损失衡量的是模型预测结果与实际预测结果之间的距离, 标签。训练模型的目标是将损失降至最低, 可能的最低值。
在下图中,您可以将损失可视化为从数据中绘制的箭头 都指向模型。箭头显示模型的预测结果与预测结果之间的差距 实际值。
图 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. 使用 MSE 训练的模型会使模型更接近离群值。
图 11. 使用 MAE 训练的模型离离群值更远。
请注意模型与数据之间的关系:
MSE。模型更接近离群值,但离大部分数据 其他数据点。
MAE。模型离离群值更远,但更接近 其他数据点。
检查您的理解情况
请考虑以下两个图表: