in seamseg/modules/heads/fpn.py [0:0]
def reset_parameters(self):
gain = nn.init.calculate_gain(self.fc.bn1.activation, self.fc.bn1.activation_param)
for name, mod in self.named_modules():
if isinstance(mod, nn.Linear) or isinstance(mod, nn.Conv2d) or isinstance(mod, nn.ConvTranspose2d):
if "roi_cls" in name or "roi_msk" in name:
nn.init.xavier_normal_(mod.weight, .01)
elif "roi_bbx" in name:
nn.init.xavier_normal_(mod.weight, .001)
else:
nn.init.xavier_normal_(mod.weight, gain)
elif isinstance(mod, ABN):
nn.init.constant_(mod.weight, 1.)
if hasattr(mod, "bias") and mod.bias is not None:
nn.init.constant_(mod.bias, 0.)