回归问题中5种常用损失函数

机器学习的所有算法都需要最大化或者最小化目标函数,在最小化场景下,目标函数又称损失函数。

实际应用中,选取损失函数需要从多个角度考虑,如是否有异常值、算法、求导难度、预测值的置信度等等。

损失函数可分为两大类,分类问题的损失函数和回归问题的损失函数,
本文将对比分析回归问题中最常用的5个损失函数。
在这里插入图片描述

1、均方误差(又称MSE、L2损失)

在这里插入图片描述
回归问题中最常见的损失函数。如果对所有样本点只给出一个预测值,那么这个值就是所有目标值的平均值。
优点:

  • 计算方便,逻辑清晰,衡量误差较准确
  • 梯度随着误差增大或减小,收敛效果好

缺点:

  • 对异常点会赋予较大的权重,如果异常点不属于考虑范围,是由于某种错误导致的,则此函数指导方向将出现偏差

2、平均绝对值误差(又称MAE,L1损失)

在这里插入图片描述
如果对所有样本点只给出一个预测值,那么这个值就是所有目标值的中位数。
优点:

  • 对异常值具有较好鲁棒性

缺点:

  • 梯度不变是个严重问题,即使对于很小的损失,梯度也很大,不利于模型收敛,常使用变化的学习率解决

3、Huber损失,平滑的平均绝对误差

在这里插入图片描述

当误差在[0-δ,0+δ]之间时,等价为MSE,而在[-∞,δ]和[δ,+∞]时为MAE
优点:

  • 对异常值更加鲁棒
  • 在最优点附近由于调整为MSE,梯度更新会随着误差减小而减小,有利于收敛

缺点:

  • 引入额外的超参,需要调试
  • 临界点delta处不可导

4、Log-Cosh损失

在这里插入图片描述
比MSE更加平滑的损失函数。
优点:

  • 具有huber损失具备的所有优点
  • 二阶处处可微
    许多机器学习算法采用牛顿法逼近最优点,比如鼎鼎大名的XGBoost算法,而牛顿法要求损失函数二阶可微。

缺点:

  • 误差很大情况下,一阶梯度和Hessian会变成定值,导致XGBoost出现缺少分裂点的情况。

5、分位数损失

预测的是目标的取值范围而不是值在这里插入图片描述
γ是所需的分位数,其值介于0和1之间,γ等于0.5时,相当于MAE。
设置多个γ值,得到多个预测模型,然后绘制成图表,即可知道预测范围及对应概率(两个γ值相减)。
在这里插入图片描述

参考链接:
机器学习大牛最常用的5个回归损失函数,你知道几个?

  • 28
    点赞
  • 120
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值