深度学习基础之损失函数



在机器学习和深度学习中,经常听到损失函数这个词,到底什么是损失函数?

一、损失函数

损失函数(Lossfunction)又叫做误差函数,用来衡量算法的运行情况,估量模型的预测 值 f ( x ) f(x) f(x)与真实值 Y Y Y的不一致程度,是一个非负实值函数,通常使用 L ( Y , f ( x ) ) L(Y,f(x)) L(Y,f(x)) , 来表示,损失函数越小,模型的鲁棒性就越好。

损失函数是经验风险函数的核心部分,也是结构风险函数重要组成部分。

==与代价函数有细微的区别是,损失函数是计算的是一个样本的误差。==但是在实际中,损失函数和代价函数是同一个东西,目标函数是一个与他们相关但更广的概念,目标函数是代价函数 + 正则化项。

二、常见的损失函数

机器学习通过对算法中的目标函数进行不断求解优化,得到最终想要的结果。分类和回归问题中,通常使用损失函数或代价函数作为目标函数。

损失函数用来评价预测值和真实值不一样的程度。通常损失函数越好,模型的性能也越好。

损失函数可分为经验风险损失函数和结构风险损失函数。经验风险损失函数指预测结果和 实际结果的差别,结构风险损失函数是在经验风险损失函数上加上正则项

下面介绍常用的损失函数:

2.1 回归问题

常见的回归问题损失函数有绝对值损失、平方损失、Huber损失。

1、 绝对值损失函数

绝对值损失函数又叫做L1损失,和 0-1 损失函数相似,绝对值损失函数表示为:

L ( Y ∣ f ( x ) ) = ∣ Y − f ( x ) ∣ L(Y|f(x))=|Y-f(x)| L(Yf(x))=Yf(x)

M A E = 1 N ∑ i = 1 N ∣ Y − f ( x ) ∣ MAE=\frac{1}{N}\sum_{i=1}^{N}|Y-f(x)| MAE=N1i=1NYf(x)

M A E MAE MAE一个问题是在 Y − f ( x ) = 0 Y-f(x)=0 Yf(x)=0处不可导,优化比较困难。

2、 平方损失函数

平方损失函数又称为L2损失,定义如下:

L ( Y ∣ f ( x ) ) = 1 N ∑ N ( Y − f ( x ) ) 2 L(Y|f(x))=\frac{1}{N}\sum_{N}(Y-f(x))^2 L(Yf(x))=N1N(Yf(x))2

这点可从最小二乘法和欧几里得距离角度理解。最小二乘法的原理是,最优拟合曲线应该使所有点到回归直线的距离和最小。

平方损失函数的一个问题是对异常点敏感,由于平方的存在,会放大对异常点的关注。

3、Huber损失函数

Huber损失函数相当于是L1和L2损失的一个结合。

L δ ( Y , f ( x ) ) = { 1 2 ( Y − f ( x ) ) 2 ( ∣ Y − f ( x ) ∣ ⩽ δ ) δ ∣ Y − f ( x ) ∣ − 1 2 δ 2 ( ∣ Y − f ( x ) ∣ >

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值