跳到主内容
快讯直播
AI智模界
AI 词典

MSE 与 MAE:选错损失,模型就学会中庸

一句话定义:均方误差(Mean Squared Error, MSE)先把每个预测值与真实值之差平方、再取平均;平均绝对误差(Mean Absolute Error, MAE)先把差取绝对值、再取平均。两者都是回归(regression)任务里最常用的损失函数(loss function),也常被当作评估指标(metric)。

差别只有一步:平方还是绝对值

举个例子。某条订单的真实配送时长是 30 分钟,模型 A 猜 32 分钟(差 2),模型 B 猜 50 分钟(差 20)。差 10 倍,平方之后变成 100 倍:4 对 400。

打个生活化的比方:MSE 像按超速幅度平方罚款:超一点点罚几块钱,超很多罚到让人心疼。被这样训出来的模型,会极度厌恶大的单点错误。它宁愿每个样本都差一点点,也不敢让任何一个样本错得离谱。这就是“中庸”的由来。MAE 像按超速时长线性罚款,超多少罚多少,心态平和得多。

数学后果:最优解从均值变成中位数

这一点常被忽略,但很关键。让 MSE 最小的预测值,是这批数据的均值(mean);而均值会被一个极端值拽走。让 MAE 最小的预测值,是中位数(median);一个离谱样本几乎动摇不了它。这就是“MAE 对离群点(outlier)稳健”的真正含义。

代价在梯度(gradient)上:MSE 的梯度与误差成正比,错得越多,步子迈得越大,收敛快,但一个异常样本就能把参数往那边拽。MAE 的梯度在误差为正时恒为 +1、为负时恒为 -1,靠近最优点时步长不会自动收窄,容易来回震荡;工程上通常配合学习率衰减(learning rate decay)使用。另外,绝对值在 0 点不可导,严格说要用次梯度(subgradient)。

维度MSEMAE
计算误差平方后取平均误差取绝对值后取平均
最优预测值均值中位数
离群点非常敏感稳健
梯度特性随误差线性增大,平滑恒为 ±1,0 点不可导
收敛通常更快需要调学习率
单位原单位的平方原单位

和相邻概念的区别

  • RMSE(均方根误差):把 MSE 开根号,量纲回到原单位(分钟、元),更好向业务方解释;它和 MSE 的排序完全一致,只是换了个刻度。
  • Huber 损失或 Smooth L1:折中方案。小误差时用平方(保住平滑梯度),大误差时切到绝对值(不被异常值主导),是很多回归模型的默认选择。
  • 交叉熵(cross-entropy):分类任务用的损失,处理的是概率分布,不要拿来做连续值回归。

对从业者和普通职场人意味着什么

数据里脏标注多、长尾极端值多,或者你更在乎“大多数预测别太差”,就选 MAE 或 Huber;如果业务上“绝对不能出大错”,比如风控额度、库存安全水位,MSE 或 RMSE 的惩罚结构更贴合这种恐惧。汇报时用 RMSE,因为单位直观;但别只报一个平均值,配上分位数误差才看得清长尾。

说到底,损失函数是在替你定义“什么叫错”。定义错了,模型就学会中庸。具体实现的默认参数和接口细节,以各框架的官方页面为准。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。