损失函数(引出梯度下降算法)

一、损失函数有什么用:

  • 损失函数是损失J相对于参数值w、b的函数。

  • 损失函数用来衡量真实值与预测值之间的差异。

    • 在训练阶段,通过计算模型在整个训练集上的训练损失(真实值与预测值的差异)获得各个参数组合情况下的损失,从而生成损失函数曲线就找到了使得损失最小的参数值组合(使得参数更好的拟合训练数据)。
  • 对于单个参数的模型y=wx,损失函数曲线如下,此时损失函数J是关于w的一维函数
    在这里插入图片描述

  • 对于两个参数的模型y=wx+b,损失函数曲线如下,此时损失函数J是关于w、b的二维函数
    在这里插入图片描述

  • 该三维图像还可以用二维等高线图表示如下,每一个椭圆形表示的是3D图像上处于完全相同高度的点,即对于损失函数具有相同值的点集

  • 等高线图中,不难理解,椭圆越大越靠近图像边缘相应的损失值越大,椭圆越小越靠近图像中心相应的损失值越小。
    在这里插入图片描述

二、上述思想存在的问题:引出梯度下降

理论上通过遍历计算所有参数组合(w,b)情况下的损失从而形成损失函数,确实可以根据损失函数直观地获得使得损失最小的参数值组合,时间复杂度O(1),但是这只适用于简单的问题,对于复杂的模型和大量的参数,遍历计算所有参数组合的损失时间开销非常大,所以引入了梯度下降算法,不再采取遍历的方式,而是通过使用梯度下降算法一步步的调整参数组合值使得损失尽量小(上帝视角看就是使用梯度下降使得当前选择的w、b不断趋近于等高线图中心,ps:但是使用梯度下降算法时实际上损失函数图像和等高线图并不知道,因为损失函数图像和等高线图是通过遍历的方式画出来的。)

三、常用损失函数:

1.均方损失函数:

在这里插入图片描述

  • 损失 = 真实值-预测值的平方
  • 1/2的作用是幂函数求导时可以与落下的2抵消,方便计算。
  • 当预测值距真实值较大,梯度较大;越接近真实值,梯度越小。

2.绝对值损失函数:

在这里插入图片描述

  • 损失 = 真实值-预测值的绝对值
  • 当预测值距真实值较大,梯度为常数;越接近真实值,梯度变化不稳定。

3.Huber’s Robust损失函数:

在这里插入图片描述

  • 结合均方损失和绝对值损失优点
  • 当预测值距真实值较大,梯度为常数;越接近真实值,梯度越小。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

姓蔡小朋友

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值