QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2377|回复: 0
打印 上一主题 下一主题

训练神经网络的各种优化算法

[复制链接]
字体大小: 正常 放大

1192

主题

4

听众

2946

积分

该用户从未签到

跳转到指定楼层
1#
发表于 2023-11-29 11:37 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
梯度下降是最基本但使用最多的优化算法。它在线性回归和分类算法中大量使用。神经网络中的反向传播也使用梯度下降算法。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
VeryCapture_20231129112215.gif
# H8 t0 j; L0 r6 H
: n' x4 ?  B6 V1 V: Q& \( N" s* u' y8 k
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-8-26 19:42 , Processed in 0.455757 second(s), 54 queries .

回顶部