初始化
神经网络初始化
神经网络的初始化对整个模型的训练起到至关重要的作用,一个合理的初始化能够让模型更快的拟合,反正不合适的初始化对整个模型是灾难性的影响。
通常在自己构建模型的时候,pytorch
会自动对模型中的权重进行正太分布初始化,当让在莫些模型中正太分布分布表现效果并不优良,亦或者是有特殊要求进行特征提取。这时就要利用到自定义初始化了Weight Initialization
选定卷积层为对象
通常我们需要自定义的权重的层为卷积层,因为有的特殊的卷积核能够提取不同数据特征。为后面的模型训练提特征的筛选与提取getattr
函数
利用getattr
函数能够完成指定层的的获取conv_weight = getattr(model, conv)
这样就将model中名为conv层的卷积层的权重链接至conv_weight变量中。
当conv_weight变量进行赋值改变的时候,对应的conv层中的参数同样发生改变。
进行参数初始化
凯明初始化
参考文献
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 楚天!