Pytorch aprendiendo la inicialización del peso

Pytorch Learning Weight Initialization

La inicialización del peso es muy importante para entrenar redes neuronales. Unos buenos pesos de inicialización pueden evitar de forma eficaz problemas como la desaparición del gradiente.

Existen varios métodos para la inicialización del peso en el uso de pytorch para su referencia.
Nota: No se recomienda el primer método. Intente utilizar los dos últimos métodos.



|_+_| |_+_| |_+_|

Bien escrito # not recommend def weights_init(m): classname = m.__class__.__name__ if classname.find('Conv') != -1: m.weight.data.normal_(0.0, 0.02) elif classname.find('BatchNorm') != -1: m.weight.data.normal_(1.0, 0.02) m.bias.data.fill_(0) Después de la función, puede usar el modelo # recommend def initialize_weights(m): if isinstance(m, nn.Conv2d): m.weight.data.normal_(0, 0.02) m.bias.data.zero_() elif isinstance(m, nn.Linear): m.weight.data.normal_(0, 0.02) m.bias.data.zero_() El método realiza la inicialización del peso en el modelo.



|_+_|

Material de referencia

Reimpreso en: https://www.jianshu.com/p/adf427f4fcdf