关于snake方程(2)

参考来源:(6 封私信 / 20 条消息) 什么是梯度下降法? - 知乎 (zhihu.com) ------------马同学

每一次的梯度向量模长列出来,可以看到是在不断减小的,因此这种方法称为梯度下降法:

    

这也比较好理解,当最终趋向于 0 时有:

所以梯度下降法求出来的就是最小值(或者在附近)。

步长设置:

上面谈到了可以通过步长 来控制每次移动的距离,下面来看看不同步长对最终结果的影响。

步长过小

 如果设 就过于小了,迭代 20 次后离谷底还很远,实际上 100 次后都无法到达谷底。

                  

 步长合适

 如果设,, 是较为合适的步长,10 次就差不多找到了最小值:

步长太大

如果设 , 这个时候会来回震荡(下图看上去只有两个点,实际上在这两个点之间来来回回):

       

 总结下,不同的步长随着迭代次数的增加,会导致被优化函数 的值有不同的变化 :

 

 寻找合适的步长,是个手艺活,在工程中可以将上图画出来,根据图像来手动调整:

 几乎是线性变化(蓝线)可能是较小,需要调高

 往上走(红线),自然是过大,需要调低。

 一开始下降特别急,然后就几乎没有变化(棕线),可能是较大,需要调低。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值