QQ登录

只需要一步,快速开始

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

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

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

1198

主题

4

听众

2978

积分

该用户从未签到

跳转到指定楼层
1#
发表于 2023-11-29 11:37 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
梯度下降是最基本但使用最多的优化算法。它在线性回归和分类算法中大量使用。神经网络中的反向传播也使用梯度下降算法。
; y& F/ h. R3 H! u; f
: |2 S# m6 r! _0 ~, S梯度下降是一种一阶优化算法,它依赖于损失函数的一阶导数。它计算应该改变权重的方式,以便函数可以达到最小值。通过反向传播,损失从一层转移到另一层,模型的参数(也称为权重)根据损失进行修改,从而使损失最小化。
6 p" m! g0 P6 o$ H# h% b* Y7 p  J; B  I& }4 f# F! ?4 F" w
优点:4 a; Z2 T" M) w9 D- R9 K
' G$ ?+ d6 J; M. q9 s
容易计算。; F7 w* C& E  Y8 @: d7 r# n( ^/ A% b
易于实施。1 G# H* E1 Q) J; `+ X
容易理解。
4 K6 s1 o  c1 B3 {. z缺点:
4 N* U! o6 B& p# q0 k- z0 S
) ]3 k" e; |- k" b, m) `$ M9 ^9 K2 ?可能陷入局部最小值。
8 G% K" c  i6 V在计算整个数据集的梯度后,权重会发生变化。因此,如果数据集太大,可能需要数年时间才能收敛到最小值。
0 H# d+ N/ r! S: b" p需要大内存来计算整个数据集的梯度
* a' q; Z/ ]5 r' c随机梯度下降
1 F0 T9 b3 H( J6 x$ {- M它是梯度下降的变体。它尝试更频繁地更新模型的参数。在这种情况下,模型参数在计算每个训练示例的损失后会发生变化。因此,如果数据集包含 1000 行,SGD 将在数据集的一个循环中更新模型参数 1000 次,而不是像梯度下降中那样更新一次。
6 R0 s! u' N, |& b$ ]" Y. g+ H1 ~6 H- H1 W
θ=θ−α⋅∇J(θ;x(i);y(i)) ,其中 {x(i) ,y(i)} 是训练样本7 d! G9 H: i* f2 y+ o
+ v: a8 a1 ?; \8 a- \
由于模型参数更新频繁,参数在不同强度下具有较大的方差和损失函数波动。+ r3 i: \- R6 b2 M8 L
; E1 H0 ~# b( h3 @. h4 s3 w1 K- N7 U
优点:
6 C: q7 r7 n1 N  d$ @+ \5 ?3 _$ e
因此,频繁更新模型参数可以在更短的时间内收敛。# J1 `4 S4 F7 y- |4 c1 k  Q
需要更少的内存,因为不需要存储损失函数的值。* B. Z( z# F+ c. N9 r0 u
可能会得到新的最小值。; s6 c+ A/ r' i& l9 [
缺点:4 F1 v% N( w# a8 r% Q
/ U/ k7 ~$ D  b% f9 ^6 Y
模型参数的高方差。
, B, h/ G4 U* Q+ G, }即使在达到全局最小值后也可能射击。
( z  r  ~4 F, i9 I$ l要获得与梯度下降相同的收敛性,需要慢慢降低学习率的值。. T9 J: o4 U' L1 _' X
小批量梯度下降
1 ~$ a) e9 ^8 [; N/ R% m8 \( q它是梯度下降算法所有变体中最好的。它是对 SGD 和标准梯度下降的改进。它在每批次后更新模型参数。因此,数据集被分成不同的批次,每批次之后,参数都会更新。& T! C. S& D9 `/ I+ m$ y- `$ \

' a' q! P! g1 z& @6 Fθ=θ−α⋅∇J(θ; B(i)),其中 {B(i)} 是训练样本的批次。
( L) v) e; o- b' j: ]  s9 l
# J" J" o% j; i; W5 Y优点:- u% G- Z8 X, q" B* l* k* u

: p: p' P7 s8 t! S3 k0 ]& x经常更新模型参数并且方差也较小。& H" Z: C. ~* H: o- V3 b
需要中等的内存" D- u2 M. `, q# p- |
所有类型的梯度下降都有一些挑战:5 y$ z$ o+ ]% k' I2 v8 i
% B* V" V" A  b3 o6 C/ N
选择学习率的最佳值。如果学习率太小,梯度下降可能需要很长时间才能收敛。& K& k+ Y1 d  `( ~; u5 I
对所有参数都有一个恒定的学习率。可能有一些参数我们不想以相同的速率改变。
# h- A0 i$ g% ]' [可能会陷入局部极小值。
; R- N6 o8 E: g7 F# N! C其它优化算法
0 G7 g) Y4 `. ^  l4 C具体我就不再详细介绍,其它优化器如下:4 M. O$ x8 m7 v5 e( f+ u" O! Y2 B
- Z% f% w7 G# D& ^* p. }( h
Momentum3 |8 V! c' t1 u" u1 i( i
Nesterov Accelerated Gradient
8 Q' e9 G5 P" r/ }3 `& B  x* F% zAdagrad
5 }$ o2 G, Z9 q4 u0 i! w9 oAdaDelta3 t9 r4 l6 m% U/ Z5 t
Adam
" t. M1 a' U% y5 E  g  C各个优化算法比较动态图
& _  @6 _8 a4 Y7 R( {& |4 M) B, q) K VeryCapture_20231129112215.gif ' ?8 F& W3 Z6 M' E# X' |+ J5 B
- V2 t  x' M% t6 y4 n, @! T

8 r5 y5 h  L# m# i! B* N
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-10-14 04:41 , Processed in 1.305849 second(s), 54 queries .

回顶部