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

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

被折叠的 条评论
为什么被折叠?



