Python torch.nn.init.kaiming_normal() Examples
The following are 30
code examples of torch.nn.init.kaiming_normal().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
torch.nn.init
, or try the search function
.
Example #1
Source File: network.py From DMIT with MIT License | 7 votes |
def weights_init(init_type='xavier'): def init_fun(m): classname = m.__class__.__name__ if (classname.find('Conv') == 0 or classname.find('Linear') == 0) and hasattr(m, 'weight'): if init_type == 'normal': init.normal(m.weight.data, 0.0, 0.02) elif init_type == 'xavier': init.xavier_normal(m.weight.data, gain=math.sqrt(2)) elif init_type == 'kaiming': init.kaiming_normal(m.weight.data, a=0, mode='fan_in') elif init_type == 'orthogonal': init.orthogonal(m.weight.data, gain=math.sqrt(2)) elif init_type == 'default': pass else: assert 0, "Unsupported initialization: {}".format(init_type) if hasattr(m, 'bias') and m.bias is not None: init.constant(m.bias.data, 0.0) elif (classname.find('Norm') == 0): if hasattr(m, 'weight') and m.weight is not None: init.constant(m.weight.data, 1.0) if hasattr(m, 'bias') and m.bias is not None: init.constant(m.bias.data, 0.0) return init_fun
Example #2
Source File: utils.py From mixup_pytorch with MIT License | 6 votes |
def init_params(net): '''Init layer parameters.''' for m in net.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_out') if m.bias: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.normal(m.weight, std=1e-3) if m.bias: init.constant(m.bias, 0) #_, term_width = os.popen('stty size', 'r').read().split() # term_width = int(term_width)
Example #3
Source File: alexnet_all.py From alibabacloud-quantization-networks with Apache License 2.0 | 6 votes |
def reset_params(self): for m in self.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_in') if m.bias is not None: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm1d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.kaiming_normal(m.weight, mode='fan_in') if m.bias is not None: init.constant(m.bias, 0)
Example #4
Source File: model.py From raster-deep-learning with Apache License 2.0 | 6 votes |
def __init__(self, f, c, is_multi, is_reg, ps=None, xtra_fc=None, xtra_cut=0, custom_head=None, pretrained=True): self.f,self.c,self.is_multi,self.is_reg,self.xtra_cut = f,c,is_multi,is_reg,xtra_cut if xtra_fc is None: xtra_fc = [512] if ps is None: ps = [0.25]*len(xtra_fc) + [0.5] self.ps,self.xtra_fc = ps,xtra_fc if f in model_meta: cut,self.lr_cut = model_meta[f] else: cut,self.lr_cut = 0,0 cut-=xtra_cut layers = cut_model(f(pretrained), cut) self.nf = num_features(layers)*2 if not custom_head: layers += [AdaptiveConcatPool2d(), Flatten()] self.top_model = nn.Sequential(*layers) n_fc = len(self.xtra_fc)+1 if not isinstance(self.ps, list): self.ps = [self.ps]*n_fc if custom_head: fc_layers = [custom_head] else: fc_layers = self.get_fc_layers() self.n_fc = len(fc_layers) self.fc_model = to_gpu(nn.Sequential(*fc_layers)) if not custom_head: apply_init(self.fc_model, kaiming_normal) self.model = to_gpu(nn.Sequential(*(layers+fc_layers)))
Example #5
Source File: alexnet.py From alibabacloud-quantization-networks with Apache License 2.0 | 6 votes |
def reset_params(self): for m in self.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_in') if m.bias is not None: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm1d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.kaiming_normal(m.weight, mode='fan_in') if m.bias is not None: init.constant(m.bias, 0)
Example #6
Source File: model.py From FormulaNet with BSD 3-Clause "New" or "Revised" License | 6 votes |
def __init__(self, *layers): ''' layers : list of int There are dimensions in the sequence ''' super(FullyConnectedNet, self).__init__() self.linear = nn.ModuleList() self.bn = nn.ModuleList() self.relu = nn.ModuleList() pre_dim = layers[0] self.nLayers = 0 for dim in layers[1:]: self.linear.append(nn.Linear(pre_dim, dim, bias=False)) self.bn.append(nn.BatchNorm1d(dim)) self.relu.append(nn.ReLU(inplace=True)) init.kaiming_normal(self.linear[-1].weight) self.nLayers += 1 pre_dim = dim
Example #7
Source File: model.py From FormulaNet with BSD 3-Clause "New" or "Revised" License | 6 votes |
def __init__(self, nFeats_in, nFeats1, nFeats2, nFeats_out, bias=False): super(PairForward, self).__init__() self.l1 = nn.Linear(nFeats_in, nFeats1, bias=bias) init.kaiming_normal(self.l1.weight) self.bn1 = nn.BatchNorm1d(nFeats1) self.relu1 = nn.ReLU(inplace=True) self.l2 = nn.Linear(nFeats1, nFeats2, bias=bias) init.kaiming_normal(self.l2.weight) self.bn2 = nn.BatchNorm1d(nFeats2) self.relu2 = nn.ReLU(inplace=True) self.l3 = nn.Linear(nFeats2, nFeats_out, bias=bias) init.kaiming_normal(self.l3.weight) self.bn3 = nn.BatchNorm1d(nFeats_out) self.relu3 = nn.ReLU(inplace=True)
Example #8
Source File: misc.py From HBONet with Apache License 2.0 | 5 votes |
def init_params(net): '''Init layer parameters.''' for m in net.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_out') if m.bias: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.normal(m.weight, std=1e-3) if m.bias: init.constant(m.bias, 0)
Example #9
Source File: model_helper.py From HSD with MIT License | 5 votes |
def weights_init(m): for key in m.state_dict(): if key.split('.')[-1] == 'weight': if 'conv' in key: init.kaiming_normal(m.state_dict()[key], mode='fan_out') if 'offset' in key: #init.kaiming_normal(m.state_dict()[key], mode='fan_out') m.state_dict()[key][...] = 0 if 'bn' in key: m.state_dict()[key][...] = 1 elif key.split('.')[-1] == 'bias': m.state_dict()[key][...] = 0
Example #10
Source File: box_utils.py From HSD with MIT License | 5 votes |
def weights_init(m): for key in m.state_dict(): if key.split('.')[-1] == 'weight': if 'conv' in key: init.kaiming_normal(m.state_dict()[key], mode='fan_out') if 'bn' in key: m.state_dict()[key][...] = 1 elif key.split('.')[-1] == 'bias': m.state_dict()[key][...] = 0
Example #11
Source File: model.py From Adversarial_Metric_Attack with MIT License | 5 votes |
def weights_init_kaiming(m): classname = m.__class__.__name__ # print(classname) if classname.find('Conv') != -1: init.kaiming_normal(m.weight.data, a=0, mode='fan_in') elif classname.find('Linear') != -1: init.kaiming_normal(m.weight.data, a=0, mode='fan_out') init.constant(m.bias.data, 0.0) elif classname.find('BatchNorm1d') != -1: init.normal(m.weight.data, 1.0, 0.02) if hasattr(m.bias, 'data'): init.constant(m.bias.data, 0.0)
Example #12
Source File: resnext.py From rethinking-network-pruning with MIT License | 5 votes |
def __init__(self, cardinality, depth, num_classes, widen_factor=4, dropRate=0): """ Constructor Args: cardinality: number of convolution groups. depth: number of layers. num_classes: number of classes widen_factor: factor to adjust the channel dimensionality """ super(CifarResNeXt, self).__init__() self.cardinality = cardinality self.depth = depth self.block_depth = (self.depth - 2) // 9 self.widen_factor = widen_factor self.num_classes = num_classes self.output_size = 64 self.stages = [64, 64 * self.widen_factor, 128 * self.widen_factor, 256 * self.widen_factor] self.conv_1_3x3 = nn.Conv2d(3, 64, 3, 1, 1, bias=False) self.bn_1 = nn.BatchNorm2d(64) self.stage_1 = self.block('stage_1', self.stages[0], self.stages[1], 1) self.stage_2 = self.block('stage_2', self.stages[1], self.stages[2], 2) self.stage_3 = self.block('stage_3', self.stages[2], self.stages[3], 2) self.classifier = nn.Linear(1024, num_classes) init.kaiming_normal(self.classifier.weight) for key in self.state_dict(): if key.split('.')[-1] == 'weight': if 'conv' in key: init.kaiming_normal(self.state_dict()[key], mode='fan_out') if 'bn' in key: self.state_dict()[key][...] = 1 elif key.split('.')[-1] == 'bias': self.state_dict()[key][...] = 0
Example #13
Source File: misc.py From rethinking-network-pruning with MIT License | 5 votes |
def init_params(net): '''Init layer parameters.''' for m in net.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_out') if m.bias: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.normal(m.weight, std=1e-3) if m.bias: init.constant(m.bias, 0)
Example #14
Source File: misc.py From rethinking-network-pruning with MIT License | 5 votes |
def init_params(net): '''Init layer parameters.''' for m in net.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_out') if m.bias: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.normal(m.weight, std=1e-3) if m.bias: init.constant(m.bias, 0)
Example #15
Source File: misc.py From DIANet with MIT License | 5 votes |
def init_params(net): '''Init layer parameters.''' for m in net.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_out') if m.bias: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.normal(m.weight, std=1e-3) if m.bias: init.constant(m.bias, 0)
Example #16
Source File: shufflenetv2plus.py From LightNet with MIT License | 5 votes |
def _initialize_weights(self): for m in self.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_out') if m.bias is not None: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.normal(m.weight, std=0.001) if m.bias is not None: init.constant(m.bias, 0)
Example #17
Source File: networks.py From Single-Image-Reflection-Removal-Beyond-Linearity with MIT License | 5 votes |
def weights_init_kaiming(m): classname = m.__class__.__name__ # print(classname) if classname.find('Conv') != -1: init.kaiming_normal(m.weight.data, a=0, mode='fan_in') elif classname.find('Linear') != -1: init.kaiming_normal(m.weight.data, a=0, mode='fan_in') elif classname.find('BatchNorm2d') != -1: init.normal(m.weight.data, 1.0, 0.02) init.constant(m.bias.data, 0.0)
Example #18
Source File: networks.py From Single-Image-Reflection-Removal-Beyond-Linearity with MIT License | 5 votes |
def weights_init_kaiming(m): classname = m.__class__.__name__ # print(classname) if classname.find('Conv') != -1: init.kaiming_normal(m.weight.data, a=0, mode='fan_in') elif classname.find('Linear') != -1: init.kaiming_normal(m.weight.data, a=0, mode='fan_in') elif classname.find('BatchNorm2d') != -1: init.normal(m.weight.data, 1.0, 0.02) init.constant(m.bias.data, 0.0)
Example #19
Source File: fbresnet200.py From pytorch-planet-amazon with Apache License 2.0 | 5 votes |
def __init__(self, num_classes=1000, activation_fn=nn.ReLU(), drop_rate=0., global_pool='avg'): super(ResNet200, self).__init__() self.drop_rate = drop_rate self.global_pool = global_pool self.features = fbresnet200_features(activation_fn=activation_fn) self.fc = nn.Linear(2048 * pooling_factor(global_pool), num_classes) for m in self.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight) elif isinstance(m, nn.BatchNorm2d): m.weight.data.fill_(1) m.bias.data.zero_()
Example #20
Source File: resnext101_32x4d.py From pytorch-planet-amazon with Apache License 2.0 | 5 votes |
def __init__(self, num_classes=1000, activation_fn=nn.ReLU(), drop_rate=0, global_pool='avg'): self.drop_rate = drop_rate self.global_pool = global_pool super(ResNeXt101_32x4d, self).__init__() self.features = resnext_101_32x4d_features(activation_fn=activation_fn) self.pool = nn.AdaptiveAvgPool2d(1) assert global_pool == 'avg' # other options not supported self.fc = nn.Linear(2048, num_classes) for m in self.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight) elif isinstance(m, nn.BatchNorm2d): m.weight.data.fill_(1) m.bias.data.zero_()
Example #21
Source File: resnext.py From pytorch-priv with MIT License | 5 votes |
def __init__(self, cardinality=8, depth=29, widen_factor=4, num_classes=10): """ Constructor Args: cardinality: number of convolution groups. depth: number of layers. num_classes: number of classes widen_factor: factor to adjust the channel dimensionality """ super(CifarResNeXt, self).__init__() self.cardinality = cardinality self.depth = depth self.block_depth = (self.depth - 2) // 9 self.widen_factor = widen_factor self.num_classes = num_classes self.output_size = 64 self.stages = [64, 64 * self.widen_factor, 128 * self.widen_factor, 256 * self.widen_factor] self.conv1 = nn.Conv2d(3, 64, 3, 1, 1, bias=False) self.bn1 = nn.BatchNorm2d(64) self.stage_1 = self.block('stage_1', self.stages[0], self.stages[1], 1) self.stage_2 = self.block('stage_2', self.stages[1], self.stages[2], 2) self.stage_3 = self.block('stage_3', self.stages[2], self.stages[3], 2) self.avgpool = nn.AdaptiveAvgPool2d(1) self.fc = nn.Linear(self.stages[3], num_classes) for key in self.state_dict(): if key.split('.')[-1] == 'weight': if 'conv' in key: init.kaiming_normal(self.state_dict()[key], mode='fan_out') if 'bn' in key: self.state_dict()[key][...] = 1 elif key.split('.')[-1] == 'bias': self.state_dict()[key][...] = 0 init.kaiming_normal(self.fc.weight)
Example #22
Source File: model.py From progressive-gan-pytorch with MIT License | 5 votes |
def init_conv(conv, glu=True): init.kaiming_normal(conv.weight) if conv.bias is not None: conv.bias.data.zero_()
Example #23
Source File: misc.py From pytorch-priv with MIT License | 5 votes |
def init_params(net): """Init layer parameters.""" for m in net.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_out') if m.bias: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.normal(m.weight, std=1e-3) if m.bias: init.constant(m.bias, 0)
Example #24
Source File: misc.py From attention_branch_network with MIT License | 5 votes |
def init_params(net): '''Init layer parameters.''' for m in net.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_out') if m.bias: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.normal(m.weight, std=1e-3) if m.bias: init.constant(m.bias, 0)
Example #25
Source File: misc.py From Batch-Instance-Normalization with MIT License | 5 votes |
def init_params(net): '''Init layer parameters.''' for m in net.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_out') if m.bias: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.normal(m.weight, std=1e-3) if m.bias: init.constant(m.bias, 0)
Example #26
Source File: utils.py From dl2 with MIT License | 5 votes |
def init_params(net): '''Init layer parameters.''' for m in net.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_out') if m.bias: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.normal(m.weight, std=1e-3) if m.bias: init.constant(m.bias, 0)
Example #27
Source File: inception.py From open-reid with MIT License | 5 votes |
def reset_params(self): for m in self.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_out') if m.bias is not None: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.normal(m.weight, std=0.001) if m.bias is not None: init.constant(m.bias, 0)
Example #28
Source File: resnet.py From open-reid with MIT License | 5 votes |
def reset_params(self): for m in self.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_out') if m.bias is not None: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.normal(m.weight, std=0.001) if m.bias is not None: init.constant(m.bias, 0)
Example #29
Source File: utils.py From YellowFin_Pytorch with Apache License 2.0 | 5 votes |
def init_params(net): '''Init layer parameters.''' for m in net.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_out') if m.bias: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.normal(m.weight, std=1e-3) if m.bias: init.constant(m.bias, 0)
Example #30
Source File: utils.py From Fixup with BSD 3-Clause "New" or "Revised" License | 5 votes |
def init_params(net): '''Init layer parameters.''' for m in net.modules(): if isinstance(m, nn.Conv2d): init.kaiming_normal(m.weight, mode='fan_out') if m.bias: init.constant(m.bias, 0) elif isinstance(m, nn.BatchNorm2d): init.constant(m.weight, 1) init.constant(m.bias, 0) elif isinstance(m, nn.Linear): init.normal(m.weight, std=1e-3) if m.bias: init.constant(m.bias, 0)