深度学习基础(二):神经网络参数初始化、Batch size和Optimization

本文探讨了深度学习中神经网络权重的初始化,包括固定方差的高斯分布和均匀分布,以及基于方差缩放的Xavier和He初始化。接着讨论了Batch size对模型训练的影响,如收敛速度和泛化能力。最后,介绍了常见的优化器,如SGD、Momentum、RMSprop和Adam。理解这些概念有助于优化模型的训练效果。

1.神经网络初始化

初识化神经网络权重 w w w

1.1固定方差

1)高斯分布

E = 0 E=0 E=0,参数分布符合 N ( 0 , σ 2 ) N(0,\sigma^2) N(0,σ2) σ \sigma σ过小会导致输出神经元过小,经过多层后会慢慢消失,也可能会造成sigmoid函数丢失非线性的能力。

2)均匀分布

1.2基于方差缩放

1)Xavier初始化(Glorot)

glorot_uniform,根据每层神经元数量调整参数方差。

self.gru = tf.keras.layers.GRU(self.dec_units,
                               return_sequences=True,
                               return_state=True,
                               recurrent_initializer='glorot_uniform')

2)He初始化

适合Relu激活函数的何恺明初始化

2.Batch size

1)Batch size是用于在每次迭代中训练模型的数据数量。一般的设置是32,64,128,256,512。
2)选择正确的Batch size对于确保cost function和参数值的收敛,以及模型的泛化能力。
3)Batch size决定更新的频率。Batch size越小,更新就越快。
4)Batch size越大,梯度越精确。也就是说,在迭代计算的时候更容易跳过局部区域。
5)比较大Batch size,往往GPU memory是不够用的,就需要通过并行计算的方式解决。

3.Optimization优化器

常用(Stochastic) Gradient Descent、Momentum、RMSprop和Adam

参考资料
[1]Initializing neural networks
[2]Parameter optimization in neural networks

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值