摘要:

在用paddle复现时,遇到weight_init参数初始化的问题

解决方法

torch version:

def weight_init(m):
   # classname = m.__class__.__name__
   if isinstance(m, nn.Conv2d):
       nn.init.normal_(m.weight.data, 0.0, 0.02)
   elif isinstance(m, nn.BatchNorm2d):
       nn.init.normal_(m.weight.data, 1.0, 0.02)
       nn.init.constant_(m.bias.data, 0)

paddle version

from paddleseg.cvlibs import param_init
def weight_init(Layer):
    for n, m in Layer.named_children():
        if isinstance(m, nn.Conv2D):
            param_init.normal_init(m.weight,mean=0.0, std=0.02)
        elif isinstance(m, nn.BatchNorm2D):
            param_init.normal_init(m.weight, mean=1.0, std=0.02)
            param_init.constant_init(m.bias,value=0)

参考内容

1 官方参考文档

更多推荐

paddle weight_init参数初始化