常见回归损失函数详解:L1 Loss, L2 Loss, Huber Loss

误差损失函数比较

L1 损失函数

L1 损失函数又称为绝对误差损失,其形式为 loss(x) = |x|,即预测值与真实值之间差值的绝对值。该函数对异常值具有鲁棒性,梯度恒定不易爆炸,但由于不可导点和不连续导数,可能导致优化过程中收敛速度变慢。

L2 损失函数

L2 损失函数也被称为均方误差损失,其形式为 loss(x) = x²。L2 损失对小误差敏感,能有效惩罚较大的偏差,是神经网络中常用的回归损失函数。然而,L2 损失对异常值非常敏感,可能使得模型偏向这些异常样本。

Huber 损失函数

Huber 损失结合了 L1 和 L2 的优点。其形式为:

  • |x| ≤ δ 时,loss(x) = 0.5 * x²
  • |x| > δ 时,loss(x) = δ * (|x| - 0.5 * δ)

Huber 损失在误差小的情况下与 L2 相同,对结果平滑;在误差大的情况下表现为 L1,提升了对异常值的鲁棒性。

可视化对比

下图展示了 L1 损失、L2 损失以及 Huber 损失三者在误差不同取值下的对比情况:

L1 损失(绝对误差):对异常值鲁棒,梯度恒定,可能导致模型收敛较慢。

L2 损失(平方误差):对小误差敏感,有助于平滑优化,但容易受异常值影响。

Huber 损失:结合了 L1 和 L2 的优点,小误差时像 L2,大误差时像 L1,更平稳且对异常值鲁棒。

相关推荐
sukioe几秒前
一张图、两把锁:AI 物流履约平台的确定性边界设计
人工智能·python·ai·langchain
爱吃火鸡面呀3 分钟前
OpenCV 实战:文档扫描与神经风格迁移完整指南
人工智能·opencv·计算机视觉
TechEdu20260616 分钟前
[人工智能]Gemini(Google DeepMind):多模态模型、智能体与工程实践
人工智能·ai
java1234_小锋18 分钟前
YOLO26 计算机视觉 - 训练自己的 YOLO26 模型
人工智能·yolo·机器学习·计算机视觉·yolo26
小程序设计22 分钟前
机械设计之大蒜茎叶粉碎抛送装置设计
人工智能·数据挖掘
满怀冰雪28 分钟前
23-PaddleClas 数据集、配置文件与训练参数详解
人工智能·python·深度学习·paddlepaddle
Akir.weiwen28 分钟前
③ 约束显化:把隐含的语义假设变成显式规则
人工智能·编译·设计规范·语义
tachibana229 分钟前
AI Agent 的记忆机制
人工智能·ai·大模型·llm·agent
苦猿的大模型日记30 分钟前
Day52|从0学习Claude Code(二):从一台机床到一个工具箱,循环一行没改
人工智能
richard_first32 分钟前
从 ChatGPT 到机器人:NVIDIA Jetson Orin Nano 2 背后的 Physical AI 浪潮
人工智能·chatgpt·机器人