理解用于机器学习回归的 3 种最常见的损失函数

2025年2月3日 | 阅读 4 分钟

机器学习回归任务涉及根据输入特征对连续输出变量进行预测。目标是减小期望值与实际值之间的差异。

因此,需要使用损失函数来衡量预测误差。损失函数是模型在训练过程中试图减小的量,它将实际值与预测值之间的差异转换为一个实数。

理解损失函数至关重要,因为它对模型的性能有很大影响。在本文中,我们将介绍回归任务中最常见的三个损失函数:

  • MSE、MAE 和 Huber 损失。

1. 均方误差 (MSE)

均方误差 (MSE),也称为 L2 损失,是回归任务中最常用的损失函数。它计算预测值(y ̂_i)与实际值(y_i)之间差值的平方的平均值。

公式

Understanding the 3 Most Common Loss Functions for Machine Learning Regression

其中

  • n 是数据点的数量。
  • ŷi 是第 iii 个数据点的预测值。
  • yi 是第 iii 个数据点的实际值。

特性和用途

  • 对异常值的敏感性:由于误差被平方,使得较大的误差变得不成比例地重要,因此 MSE 对异常值很敏感。如果我们希望在模型中更严厉地惩罚较大的误差,这可能会很有用。
  • 可微分性:由于 MSE 光滑且可微分,基于梯度的优化技术可以从使用它中受益。计算 MSE 相对于预测值的梯度很简单,这使得模型训练更有效。
  • 可解释性:平方项意味着 MSE 的单位与目标变量的原始单位不同,这可能使解释不那么明确。通过计算均方误差 (MSE) 的平方根,可以得到均方根误差 (RMSE),它与目标变量的单位相同,并且经常用于解释。

示例

考虑一个简单的线性回归模型,该模型根据大小预测房屋价值。如果模型预测一栋房屋的售价为 250,000 美元,但实际售价为 300,000 美元,则此预测的平方误差为 (250,000 - 300,000)² = 2,500,000,000。MSE 将对所有预测中的这些平方误差求和,以衡量模型的整体性能。

2. 平均绝对误差 (MAE)

平均绝对误差 (MAE) 是另一种流行的回归损失函数,其定义为预测值与实际值之间绝对差值的平均值。

公式

Understanding the 3 Most Common Loss Functions for Machine Learning Regression

特征和属性

  • 对异常值的鲁棒性:由于 MAE 使用误差的绝对值而不是平方,因此它比 MSE 对异常值的敏感性较低。因此,MAE 对可能以其他方式严重影响损失估计的异常数据项更具弹性。
  • 线性梯度:由于 MAE 的梯度不像 MSE 那样平滑,因此优化可能有点棘手。

应用

MAE 在对异常值具有鲁棒性的应用中有用。它常用于金融模型、房地产价格预测以及任何其他可能因极端值而导致结果严重偏差的场景。

3. Huber 损失

Huber 损失,也称为平滑平均绝对误差,结合了 MSE 和 MAE 的优点。

公式

Understanding the 3 Most Common Loss Functions for Machine Learning Regression

其中 a = yi - ŷi,δ 是一个超参数,它确定了损失函数从二次变为线性的点。

特征和属性

  • Huber 损失对于小误差是二次的,对于大误差是线性的。这意味着它对异常值的敏感性较低,同时仍然为优化提供平滑的梯度。它通过结合 MSE 对小误差的敏感性与 MAE 对大误差的弹性来实现这一点。
  • 可调的鲁棒性:可以使用超参数 δ 调整损失函数从二次变为线性的点。因此,Huber 损失具有适应性和多功能性,可适应不同的数据集和问题规范。

应用

在鲁棒回归应用中,当数据可能包含异常值,但模型仍需要产生平滑的梯度以实现有效优化时,经常使用 Huber 损失。它经常用于需要权衡敏感性和稳定性的情况,例如在支持向量机等机器学习技术中。

结论

机器学习中回归模型的性能和优化在很大程度上依赖于损失函数。由于其独特的特性和对各种数据集和问题场景的适用性,MSE、MAE 和 Huber 损失是最广泛使用的指标。MSE 因其平滑的梯度和对高斯误差分布的适用性而受到青睐,而 MAE 则对异常值提供了鲁棒性。通过结合 MSE 和 MAE 的优点,Huber 损失提供了一种折衷方案,并可适应各种回归应用。理解各种损失函数可以使从业者为其应用程序选择最合适的损失函数,最终产生更可靠、更准确的预测模型。