- 在线时间
- 481 小时
- 最后登录
- 2026-8-25
- 注册时间
- 2023-7-11
- 听众数
- 4
- 收听数
- 0
- 能力
- 0 分
- 体力
- 7859 点
- 威望
- 0 点
- 阅读权限
- 255
- 积分
- 2946
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1177
- 主题
- 1192
- 精华
- 0
- 分享
- 0
- 好友
- 1
该用户从未签到
 |
梯度下降是最基本但使用最多的优化算法。它在线性回归和分类算法中大量使用。神经网络中的反向传播也使用梯度下降算法。1 e s3 v8 W/ r( K+ h6 t3 J* B
1 d2 @4 c' R- Z% y梯度下降是一种一阶优化算法,它依赖于损失函数的一阶导数。它计算应该改变权重的方式,以便函数可以达到最小值。通过反向传播,损失从一层转移到另一层,模型的参数(也称为权重)根据损失进行修改,从而使损失最小化。6 f! l9 f$ _- M; m! X$ D
% z3 h& v+ n: m1 x6 J' y( ]& H优点:% i6 u5 W- V V. G/ k/ \8 b8 B
7 X$ p4 e5 E' M+ e
容易计算。% W* g' N. j7 `3 `7 i
易于实施。
' r# ]) u+ V; o1 S6 x& R容易理解。6 J) K' }. p. x) x' b( M
缺点:
6 W$ G- x; H5 u, P+ ?& a5 s8 v& O0 C* m( B
可能陷入局部最小值。& S8 s* \! q1 g1 z
在计算整个数据集的梯度后,权重会发生变化。因此,如果数据集太大,可能需要数年时间才能收敛到最小值。
( ^% C( T# o/ J# h* p/ p需要大内存来计算整个数据集的梯度8 j$ @$ r' r j3 [- W+ y
随机梯度下降
2 X9 P S/ J1 u4 C它是梯度下降的变体。它尝试更频繁地更新模型的参数。在这种情况下,模型参数在计算每个训练示例的损失后会发生变化。因此,如果数据集包含 1000 行,SGD 将在数据集的一个循环中更新模型参数 1000 次,而不是像梯度下降中那样更新一次。$ a# M/ c/ \0 l, c9 s4 f
, |- F% r+ f4 S# sθ=θ−α⋅∇J(θ;x(i);y(i)) ,其中 {x(i) ,y(i)} 是训练样本' r0 B* P+ D) K. h0 Q3 P7 n! b6 V; z
- l( t, ?, K" g& |
由于模型参数更新频繁,参数在不同强度下具有较大的方差和损失函数波动。% Z+ B: ?' q t; v" e* _9 L/ @
! m) _9 o4 J( T' U. Z" Q7 m; Y* U
优点:
. d8 G% t0 c+ O/ _2 b1 e J4 Z& G, U1 E2 }. K- H! u
因此,频繁更新模型参数可以在更短的时间内收敛。* _5 l! ]) y3 c3 H' @, ~+ X( E% f
需要更少的内存,因为不需要存储损失函数的值。/ g, h: s [% y+ ?4 _) P$ [
可能会得到新的最小值。1 O3 q8 ^* i: N7 E
缺点: V' T; r0 o6 ]$ n, k a; Y
( T7 V4 G6 n7 d; x6 Q4 |& } B模型参数的高方差。2 b' b g* D; q
即使在达到全局最小值后也可能射击。. W. L5 r3 x" |
要获得与梯度下降相同的收敛性,需要慢慢降低学习率的值。. G1 m/ k& g% f' m4 ^1 w, t4 m/ d
小批量梯度下降
9 J5 c$ M0 V2 R, f它是梯度下降算法所有变体中最好的。它是对 SGD 和标准梯度下降的改进。它在每批次后更新模型参数。因此,数据集被分成不同的批次,每批次之后,参数都会更新。* M) }8 [; _2 v6 t# `
6 b( F. S8 i4 s) ~
θ=θ−α⋅∇J(θ; B(i)),其中 {B(i)} 是训练样本的批次。; H+ N) W2 Q7 w0 I2 b. Y' s
2 x6 N! l2 g# D" o0 s优点:
. s) S4 V( U# s! S, b4 T; S' t+ p$ J
经常更新模型参数并且方差也较小。) Q2 y. P% Y1 M$ N3 n
需要中等的内存$ v1 a" Q! I! ~, B# ?4 C
所有类型的梯度下降都有一些挑战:
- L u/ |. a0 ]9 q6 x! X) |( u9 x' u, t( T
选择学习率的最佳值。如果学习率太小,梯度下降可能需要很长时间才能收敛。
2 U% |, @. H# b, J对所有参数都有一个恒定的学习率。可能有一些参数我们不想以相同的速率改变。
. Z: o5 A h2 ]& I W可能会陷入局部极小值。
. _! i$ [3 ?# u' E) w5 Y其它优化算法
) x2 b$ V' U: W4 o% _( @+ R1 q# `具体我就不再详细介绍,其它优化器如下:
+ I0 P) w' ?& _5 ~ Z& X. _6 ^2 ~$ ], R0 M# t
Momentum4 y1 L) k0 X" e$ w9 g
Nesterov Accelerated Gradient
) ]. R& y* r& H K! yAdagrad
3 \! f( \8 S) p4 Z" kAdaDelta
* j9 P$ h" \5 J- m3 h' C, j) QAdam3 o* E! ~6 p' }
各个优化算法比较动态图9 Q) S- y* y- h) z' @& q
# H8 t0 j; L0 r6 H
: n' x4 ? B6 V1 V: Q& \( N" s* u' y8 k
|
zan
|