权重的初始化,决定了模型训练的起点。一个良好的初始化可以加快训练过程,同时避免模型收敛至局部最小值。为了在训练过程中避免使得权重的变化总沿着同一个方向,我们尽量避免将所有权重都初始化为同一个值,如全0矩阵或全1矩阵。
往往我们使用均匀分布或者正则分布初始化权重矩阵。在使用tensorflow框架时,keras为我们提供了许多封装好的层,其中常见的有Dense全连接层,Conv2D卷积层等等。查阅文档我们发现默认的权重初始化都使用了glorot uniform :
Wij⇝U(−6n+m,6n+m) W_{ij} \rightsquigarrow U(-\sqrt{\frac{6}{n+m}} , \sqrt{\frac{6}{n+m}})Wij

权重初始化对于深度学习模型的训练至关重要,它影响模型的收敛速度和最终性能。Keras库中的层,如Dense和Conv2D,默认采用glorot uniform分布进行权重初始化。这种初始化方法基于输入和输出节点数,在特定范围内使用均匀分布。此外,Keras还提供了Glorot Normal、RandomNormal和RandomUniform等不同的初始化选项,以适应不同的模型需求。
最低0.47元/天 解锁文章
862

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



