def conv_fc_init(layer,
weight_init=init.xavier_uniform,
bias_init=zero_init):
"""
Initialize a layer's filter weights by xavier and bias weights to zero
The layer can be either nn.ConvNd or nn.Linear
"""
if isinstance(layer, (list, nn.ModuleList)):
return type(layer)([conv_fc_init(l, weight_init=weight_init, bias_init=bias_init)
for l in layer])
assert is_conv_layer(layer) or isinstance(layer, nn.Linear)
weight_init(layer.weight)
bias_init(layer.bias)
return layer
评论列表
文章目录