梯度下降算法详细介绍

1.基础性知识介绍

1.1 损失函数

  • 梯度下降算法和正规方程都是作为优化算法,来对损失函数进行优化的(获取损失函数最小值)

    • 损失函数:损失函数即为真实值与预测值之间的误差大小,通过梯度下降算法来对损失函数进行优化,使得损失结果变得最小

    在这里插入图片描述
    如上图所示,即为最小二差法就是用来估计线性回归的损失函数。

1.2 梯度下降算法介绍

    梯度下降法的基本思想可以类⽐为⼀个下⼭的过程【这种理解是很形象的】。

    假设这样⼀个场景:⼀个⼈被困在⼭上,需要从⼭上下来(i.e. 找到⼭的最低点,也就是⼭⾕)。但此时⼭上的浓雾很⼤,导致可视度很低。因此,下⼭的路径就⽆法确定,他必须利⽤⾃⼰周围的信息去找到下⼭的路径。这个时候,他就可以利⽤梯度下降算法来帮助⾃⼰下⼭。

    具体来说就是,以他当前的所处的位置为基准,寻找这个位置最陡峭的地⽅,然后朝着⼭的⾼度下降的地⽅⾛【函数的斜率】,然后每⾛⼀段距离【斜率*步长】,都复采⽤同⼀个⽅法,最后就能成功的抵达⼭⾕。

在这里插入图片描述
梯度下降的基本过程就和下⼭的场景很类似。⾸先,我们有⼀个可微分的函数。这个函数就代表着⼀座⼭。我们的⽬标就是找到这个函数的最⼩值,也就是⼭底。

1.3 多参数函数举例

在这里插入图片描述

v
在这里插入图片描述

  • 梯度是微积分中⼀个很重要的概念
    • 在单变量的函数中,梯度其实就是函数的微分,代表着函数在某个给定点的切线的斜率;
    • 在多变量函数中,梯度是⼀个向量,向量有⽅向,梯度的⽅向就指出了函数在给定点的上升最快的⽅向;

我们需要到达⼭底,就需要在每⼀步观测到此时最陡峭的地⽅,梯度就恰巧告诉了我们这个⽅向。梯度的⽅向是函数在给定点上升最快的⽅向,那么梯度的反⽅向就是函数在给定点下降最快的⽅向,这正是我们所需要的。

2. 梯度下降算法具体实现

2.1 算法公式

在这里插入图片描述

其中, θi代表损失函数此时的损失函数参数(要求的就是他的最小值),α在梯度下降算法中被称作为学习率或者步⻓,意味着我们可以通过α来控制每⼀步⾛的距离,后面的是求出下一步的前进方向

2.2 算法推倒流程

  • 先决条件: 确认优化模型的假设函数和损失函数。
    在这里插入图片描述

  • 算法相关参数初始化

    • 主要是初始化θ , θ …, θ ,算法终⽌距离ε以及步⻓α 。在没有任何先验知识的时候,我喜欢将所有的θ 初始化为0, 将步⻓初始化为1。在调优的时候再 优化。
  • 算法过程在这里插入图片描述

2.3 补充说明

梯度前加负号:
梯度前加⼀个负号,就意味着朝着梯度相反的⽅向前进!我们在前⽂提到,梯度的⽅向实际就是函数在此点上升最快的⽅向!⽽我们需要朝着下降最快的⽅向⾛,⾃然就是负的梯度的⽅向,所以此处需要加上负号

实际上整个过程就是通过初始参数-梯度乘以补偿达到损失函数最小值是的模型参数的过程

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

皮皮皮皮皮皮皮卡乒

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

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

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

打赏作者

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

抵扣说明:

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

余额充值