5.类神经网络训练不起来怎么办(二):Batch、Momentum

类神经网络训练不起来怎么办(二)

Batch

每个Batch更新一次参数,所有Batch遍历一次叫做Epoch

Small Batch v.s. Large Batch

  1. Batch size=N

    所有资料看过一遍更新参数

  2. Batch size=1

    每一个资料更新一次参数

  • 大的Batch size不一定比小的更新参数的时间长

​ Parallel computing:Gpu的并行运算(有极限)

  • 小的Batch size需要更长的遍历一次epoch

    需要更久的时间遍历所有数据

大的Batch size在Training data得到不好的结果

​ Optimization issue: 大的Batch容易卡在critical point

Batch size是一个超参数需要我们自己决定

Momentum

不止考虑梯度的反方向,同时考虑前一步怎么走的

第一次:

  1. 选择 θ 0 \theta_0 θ0开始

  2. 前一次移动 m 0 = 0 m^0=0 m0=0

  3. 计算梯度 g 0 g^0 g0

  4. 移动 m 1 = λ m 0 − η g 0 , θ 1 = θ 0 + m 1 m^1=\lambda m^0-\eta g^0,\theta^1=\theta^0+m^1 m1=λm0ηg0,θ1=θ0+m1

第二次开始:

  1. 计算梯度 g 1 g^1 g1

  2. 移动 m 2 = λ m 1 − η g 1 , θ 2 = θ 1 + m 2 m^2=\lambda m^1-\eta g^1,\theta^2=\theta^1+m^2 m2=λm1ηg1,θ2=θ1+m2

    image-20230101112455620
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值