QQ登录

只需要一步,快速开始

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

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

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

1188

主题

4

听众

2931

积分

该用户从未签到

跳转到指定楼层
1#
发表于 2023-11-29 11:37 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
梯度下降是最基本但使用最多的优化算法。它在线性回归和分类算法中大量使用。神经网络中的反向传播也使用梯度下降算法。: e. a' U  h! Q/ p
: Y3 G# v. `% E4 _4 b( C
梯度下降是一种一阶优化算法,它依赖于损失函数的一阶导数。它计算应该改变权重的方式,以便函数可以达到最小值。通过反向传播,损失从一层转移到另一层,模型的参数(也称为权重)根据损失进行修改,从而使损失最小化。
$ _4 V1 W; g3 g% I# e
6 H1 \* `+ D- L2 c优点:
! g& _: J: B5 \+ p# N$ p; G
3 q# s; M4 |3 l: s# p: u3 s% N% C0 c容易计算。) G% h2 v4 |8 K" A5 U
易于实施。2 x# i+ {5 k- O
容易理解。
1 n, \" j+ ?1 x2 D2 A3 C* A/ {缺点:
& Y% k# k7 F, s! F" m4 z& Q5 I/ X) f; N4 [- P
可能陷入局部最小值。- W9 v+ r& l* D" U* u4 U8 Y
在计算整个数据集的梯度后,权重会发生变化。因此,如果数据集太大,可能需要数年时间才能收敛到最小值。
: G/ ]7 b5 Y* n3 z需要大内存来计算整个数据集的梯度3 J* \' b+ a' J9 _0 i
随机梯度下降( o& @5 i9 S: [3 ~0 O
它是梯度下降的变体。它尝试更频繁地更新模型的参数。在这种情况下,模型参数在计算每个训练示例的损失后会发生变化。因此,如果数据集包含 1000 行,SGD 将在数据集的一个循环中更新模型参数 1000 次,而不是像梯度下降中那样更新一次。
1 y" r. S$ R4 h# }7 J! \" W
8 \/ ^3 X/ e9 L! }θ=θ−α⋅∇J(θ;x(i);y(i)) ,其中 {x(i) ,y(i)} 是训练样本
: u! |2 w: {4 j0 B( [
2 ]4 _5 Z* l: [由于模型参数更新频繁,参数在不同强度下具有较大的方差和损失函数波动。
* Z. P  R1 J: C1 H) l" J3 S1 R4 o( H# o3 X$ ~+ g% ], O
优点:
$ P9 c* s" h9 G! |  B' Y
/ s9 U; \" p  [# W因此,频繁更新模型参数可以在更短的时间内收敛。) \& z7 M8 `1 D, z0 I8 }- @
需要更少的内存,因为不需要存储损失函数的值。
/ l' ~0 K* Y" f1 |% y可能会得到新的最小值。
, ?' ^* s. d1 U7 q缺点:" ?% p  V$ f4 P; ]" v
4 w7 S: F1 |: U( Q& D$ {) y1 _
模型参数的高方差。) k' ]: d* U6 l" a, k- S
即使在达到全局最小值后也可能射击。
( F8 K1 J; w0 |  \! |) q1 N要获得与梯度下降相同的收敛性,需要慢慢降低学习率的值。: a8 z& g$ t# l5 A$ {
小批量梯度下降
3 E" c# a* d" s1 J" r5 Q2 P; b' w它是梯度下降算法所有变体中最好的。它是对 SGD 和标准梯度下降的改进。它在每批次后更新模型参数。因此,数据集被分成不同的批次,每批次之后,参数都会更新。6 M7 n" N! v: N

; A% J+ X0 z9 @, B( r7 vθ=θ−α⋅∇J(θ; B(i)),其中 {B(i)} 是训练样本的批次。: K5 G' _- [; m
' d8 w( {: M# ^+ f3 A; ]
优点:2 R  ~% q5 N: G( E9 O% I

+ j* e) t7 U9 z  l& Q( K9 f  Y' y0 M经常更新模型参数并且方差也较小。% {* _- n, h1 s- C( \/ ?4 u7 e+ p( _
需要中等的内存; l/ B% ^' O7 P1 h
所有类型的梯度下降都有一些挑战:
, Q, w: `7 j' F6 C/ U+ H( ]
7 L, ?$ Q4 `4 c  t4 n选择学习率的最佳值。如果学习率太小,梯度下降可能需要很长时间才能收敛。
7 O- N+ f3 `  ^2 m0 |对所有参数都有一个恒定的学习率。可能有一些参数我们不想以相同的速率改变。5 X% U6 t0 Y5 c; _/ w/ L& h
可能会陷入局部极小值。
7 U. {, u2 d: @其它优化算法3 P! N7 n0 n$ D- M* Q
具体我就不再详细介绍,其它优化器如下:
; x( S  E' s) T; d
, K7 [# i) l* a! P, b. YMomentum$ @! X  }! }& Y6 ?' K7 H
Nesterov Accelerated Gradient
5 o3 J& M. m6 o; J* t5 oAdagrad
$ ~. q* Y$ C- {9 ]AdaDelta/ h/ b. e2 D8 Q! ~8 y7 k% ^1 C( ]
Adam
& g! [4 f* n9 v- c; [3 z! r, C各个优化算法比较动态图! M9 Q, J1 l: L6 t+ v
VeryCapture_20231129112215.gif
9 X6 ~$ @) @. d5 y  s; F: b& _& z% j* K; L# d$ ?) A$ i
) O3 `6 `  n( ?) ?5 i
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-5-26 10:37 , Processed in 0.617074 second(s), 54 queries .

回顶部