梯度法的步骤

85次

问题描述:

梯度法的例题

推荐答案

2023-10-23 22:46:51

梯度法思想梯度法思想的三要素:出发点、下降方向、下降步长。

机器学习中常用的权重更新表达式为:,这里的λ就是学习率,本文从这个式子出发来把机器学习中的各种“梯度”下降法阐释清楚。

机器学习目标函数,一般都是凸函数,什么叫凸函数?限于篇幅,我们不做很深的展开,在这儿我们做一个形象的比喻,凸函数求解问题,可以把目标损失函数想象成一口锅,来找到这个锅的锅底。非常直观的想法就是,我们沿着初始某个点的函数的梯度方向往下走(即梯度下降)。在这儿,我们再作个形象的类比,如果把这个走法类比为力,那么完整的三要素就是步长(走多少)、方向、出发点,这样形象的比喻,让我们对梯度问题的解决豁然开朗,出发点很重要,是初始化时重点要考虑的,而方向、步长就是关键。事实上不同梯度的不同就在于这两点的不同!

梯度方向是,步长设为常数Δ,这时就会发现,如果用在梯度较大的时候,离最优解比较远,W的更新比较快;然而到了梯度较小的时候,也就是较靠近最优解的时候,W的更新竟然也保持着跟原来一样的速率,这样会导致W很容易更新过度反而远离了最优解,进而出现在最优解附近来回震荡。所以,既然在远离最优解的时候梯度大,在靠近最优解的时候梯度小,我们让步长随着这个律动,于是我我们就用λ|W|来代替Δ,最后得到了我们熟悉的式子:所以说这时的λ是随着坡度的陡缓而变化的,别看它是个常数。

二、全量梯度下降法(Batch gradient descent)全量梯度下降法每次学习都使用整个训练集,因此每次更新都会朝着正确的方向进行,最后能够保证收敛于极值点,凸函数收敛于全局极值点,非凸函数可能会收敛于局部极值点,缺陷就是学习时间太长,消耗大量内存。第二、随机梯度下降法(Stochastic Gradient Descent)SGD一轮迭代只用一条随机选取的数据,尽管SGD的迭代次数比BGD大很多,但一次学习时间非常快。SGD的缺点在于每次更新可能并不会按照正确的方向进行,参数更新具有高方差,从而导致损失函数剧烈波动。

不过,如果目标函数有盆地区域,SGD会使优化的方向从当前的局部极小值点跳到另一个更好的局部极小值点,这样对于非凸函数,可能最终收敛于一个较好的局部极值点,甚至全局极值点。缺点是,出现损失函数波动,并且无法判断是否收敛。

其他答案

2023-10-23 22:46:51

1、选定初始控制u 0 ( t ) u^0(t)u0(t), 凭经验给定,选取时应根据u ( t ) u(t)u(t)的物理意义选择合适的u 0 ( t ) u^0(t)u0(t),允许误差ϵ > 0 epsilon > 0ϵ>0;2将u 0 ( t ) u^0(t)u0(t)待人状态方程中,以x ( t 0 ) x(t_0)x(t0​)为初值,得到与u 0 ( t ) u^0(t)u0(t)对应的状态轨迹线x 0 ( t ) x_0(t)x0​(t);

3、计算性能指标J [ u 0 ( t ) ] J[u_0(t)]J[u0​(t)];4将x 0 ( t ) x^0(t)x0(t)待人正则方程中,得到对应的l a m b d a 0 ( t ) lambda ^0 (t)lambda0(t);

5、计算性能指标在u 0 u^0u0处的梯度▽ J [ u 0 ( t ) ] = g 0 = ∂ H ∂ u bigtriangledown J[u^0(t)] = g^0 = frac{partial H}{partial u}▽J[u0(t)]=g0=∂u∂H​;6确定搜索步长,由一维搜索法确定。J [ u 0 − α g 0 ] = min ⁡ α > 0 J [ u 0 − α g 0 ] J[u^0 - alpha g^0] = min limits_{alpha > 0} J[u^0 - alpha g^0]J[u0−αg0]=α>0min​J[u0−αg0];7修正控制向量:u 1 ( t ) = u 0 ( t ) − α g 0 u ^ 1 (t) = u ^0(t) - alpha g^0u1(t)=u0(t)−αg0

8、以u 1 u ^ 1u1代替u 0 u^0u0,重复步骤2、3、4、5、6、7,直到满足终止条件;

知道问答相关问答

(c)2008-2025 自学教育网 All Rights Reserved 汕头市灵创科技有限公司
粤ICP备2024240640号-6