QQ登录

只需要一步,快速开始

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

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

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

1192

主题

4

听众

2946

积分

该用户从未签到

跳转到指定楼层
1#
发表于 2023-11-29 11:37 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
梯度下降是最基本但使用最多的优化算法。它在线性回归和分类算法中大量使用。神经网络中的反向传播也使用梯度下降算法。
/ u3 i' Q! I% E  @' c, ^  t. `1 D6 u/ k
梯度下降是一种一阶优化算法,它依赖于损失函数的一阶导数。它计算应该改变权重的方式,以便函数可以达到最小值。通过反向传播,损失从一层转移到另一层,模型的参数(也称为权重)根据损失进行修改,从而使损失最小化。2 _& E/ o7 h; y. }2 j: J0 E
4 o4 G2 X) C" V! |" o
优点:
7 A, z: J* e, [- }
  \' a* s( _1 j" N& [5 W4 {容易计算。7 f$ z* t  Y! g5 T' e3 F: v7 r
易于实施。8 K: L2 s; @' v/ A' r% Z7 H6 l% M
容易理解。
8 z% v3 o$ ?: J; s( r' H缺点:
3 X& B' r' @3 k3 F3 X$ G$ s2 h! c# ]$ F. w
可能陷入局部最小值。
, ]' t9 D/ X& j$ R+ l, G在计算整个数据集的梯度后,权重会发生变化。因此,如果数据集太大,可能需要数年时间才能收敛到最小值。* V7 L- S. p$ q! c6 A2 l9 h* }
需要大内存来计算整个数据集的梯度+ h& d0 i2 ?8 L* l/ v
随机梯度下降
/ Q, Q! q3 U& E: y+ z# d它是梯度下降的变体。它尝试更频繁地更新模型的参数。在这种情况下,模型参数在计算每个训练示例的损失后会发生变化。因此,如果数据集包含 1000 行,SGD 将在数据集的一个循环中更新模型参数 1000 次,而不是像梯度下降中那样更新一次。
4 |2 }! ^+ J# [1 S% E
2 S( P6 m) w, W; {  _3 |θ=θ−α⋅∇J(θ;x(i);y(i)) ,其中 {x(i) ,y(i)} 是训练样本6 I, T! b+ w% ^0 K1 q
  X) R& t4 _+ D" J- e; P: h, b
由于模型参数更新频繁,参数在不同强度下具有较大的方差和损失函数波动。" r* e3 {3 L7 P. I8 c

4 A, L/ v4 C+ N- r: |3 A优点:. ?" L  q" E$ |9 J6 T' g3 P2 T+ C
% T" [7 o& M* ]# j; @& ]
因此,频繁更新模型参数可以在更短的时间内收敛。
0 G8 q: V" w1 w需要更少的内存,因为不需要存储损失函数的值。+ I& J! |- `- J! O1 t
可能会得到新的最小值。9 z6 d9 ^8 ^3 s1 L% Z' }
缺点:- q  X. j& w* W+ O: c5 N

% V& ]% Z: I0 l0 S) h模型参数的高方差。: u  ]* ?" f; a
即使在达到全局最小值后也可能射击。( a, q/ ?6 c* z' U0 v( `
要获得与梯度下降相同的收敛性,需要慢慢降低学习率的值。
2 |& I8 \* }; S" E# U- M+ x小批量梯度下降
3 p7 u8 Q) n0 _9 G0 Y. h它是梯度下降算法所有变体中最好的。它是对 SGD 和标准梯度下降的改进。它在每批次后更新模型参数。因此,数据集被分成不同的批次,每批次之后,参数都会更新。. {1 r1 `4 ^* k! F7 a3 T4 n. q+ F  b

3 C) H$ U- Y) B$ H% E* Zθ=θ−α⋅∇J(θ; B(i)),其中 {B(i)} 是训练样本的批次。
8 ^8 Y* E6 V3 r$ M
$ S+ D! O7 x3 @9 Y优点:
' Q- s; ^' c7 @, M8 s, ^/ ]2 V( Y8 f# K) f! w
经常更新模型参数并且方差也较小。0 b0 Z9 u3 ?' f; _
需要中等的内存
  N9 p9 F% ]( }: @/ {' ^$ ^+ L2 T所有类型的梯度下降都有一些挑战:/ f5 E2 I6 R. [
# F) z6 r- d5 g
选择学习率的最佳值。如果学习率太小,梯度下降可能需要很长时间才能收敛。
" M( p- p( b3 U: W) d对所有参数都有一个恒定的学习率。可能有一些参数我们不想以相同的速率改变。0 r% |% _& d( z. o+ p: ]# n, D. A9 w
可能会陷入局部极小值。
6 t7 w6 S5 Q  e其它优化算法
% t% P3 {# u9 t1 C% P具体我就不再详细介绍,其它优化器如下:, J: N) g5 y. P& k8 f5 J7 |

4 a3 ?1 Q9 G- P3 ^& qMomentum( p1 D% J- _! r) s0 b9 f
Nesterov Accelerated Gradient
* R0 s. T" E; D% x: W# IAdagrad) X2 {" Z0 C; K, R0 D/ P* U
AdaDelta
/ ^" w$ L6 F. d) A. rAdam* C" k: j5 u2 A& C2 a8 l
各个优化算法比较动态图
$ b5 T! Y6 f1 m! j" p VeryCapture_20231129112215.gif & j; L* ^5 _- P3 {7 H3 I
8 l  Z' `1 M' S. n5 s
: x5 B" }  P1 v4 B. ^8 W! R8 _; u
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 02:42 , Processed in 0.420286 second(s), 53 queries .

回顶部