def __init__(self, num_classes=8, pretrained=False): super(AlexNet, self).__init__() self.num_classes = num_classes self.alexnet = alexnet.AlexNet(num_classes=num_classes) self.dim = self.alexnet.dim if pretrained: utl.load_state_dict(self.alexnet.state_dict(), model_zoo.load_url(model_urls['alexnet'])) nn.init.xavier_normal(self.alexnet.classifier[6].weight)
def inception_v4(pretrained=False, **kwargs): if pretrained: if 'transform_input' not in kwargs: kwargs['transform_input'] = True model = InceptionV4(**kwargs) utl.load_state_dict( model.state_dict(), model_zoo.load_url(model_urls['inception_v4_google'])) return model return InceptionV4(**kwargs)
def nasnetalarge(pretrained=False, **kwargs): r"""NASNetALarge model architecture from the `"NASNet" <https://arxiv.org/abs/1707.07012>`_ paper. """ if pretrained: model = NASNetALarge(**kwargs) utl.load_state_dict(model.state_dict(), model_zoo.load_url(model_urls['nasnetalarge'])) return model return NASNetALarge(**kwargs)
def __init__(self, num_classes=8, pretrained=False): super(ResNet18, self).__init__() self.num_classes = num_classes blocbasic = resnet.BasicBlock cfg = [2, 2, 2, 2] self.resnet18 = resnet.ResNet(blocbasic, cfg, num_classes=num_classes) self.dim = self.resnet18.dim if pretrained: utl.load_state_dict(self.resnet18.state_dict(), model_zoo.load_url(model_urls['resnet18'])) nn.init.xavier_normal(self.resnet18.fc.weight)
def __init__(self, num_classes=8, pretrained=False): super(VGG11, self).__init__() self.num_classes = num_classes cfg = [64, 'M', 128, 'M', 256, 256, 'M', 512, 512, 'M', 512, 512, 'M'] features = vgg.make_layers(cfg, batch_norm=False) self.vgg11 = vgg.VGG(features, num_classes=num_classes) self.dim = self.vgg11.dim if pretrained: utl.load_state_dict(self.vgg11.state_dict(), model_zoo.load_url(model_urls['vgg11'])) nn.init.xavier_normal(self.vgg11.classifier[6].weight)
def resnet101(pretrained=False, **kwargs): """Constructs a ResNet-101 model. Args: pretrained (bool): If True, returns a model pre-trained on ImageNet """ model = ResNet(Bottleneck, [3, 4, 23, 3], **kwargs) if pretrained: #model.load_state_dict(model_zoo.load_url(model_urls['resnet101'])) utl.load_state_dict(model.state_dict(), model_zoo.load_url(model_urls['resnet101'])) return model
def resnet34(pretrained=False, **kwargs): """Constructs a ResNet-34 model. Args: pretrained (bool): If True, returns a model pre-trained on ImageNet """ model = ResNet(BasicBlock, [3, 4, 6, 3], **kwargs) if pretrained: #model.load_state_dict(model_zoo.load_url(model_urls['resnet34'])) utl.load_state_dict(model.state_dict(), model_zoo.load_url(model_urls['resnet34'])) return model
def __init__(self, num_classes=8, pretrained=False): super(InceptionV3, self).__init__() self.num_classes = num_classes self.inception = inception.Inception3(num_classes=num_classes, transform_input=False, aux_logits=False) self.dim = self.inception.dim if pretrained: utl.load_state_dict( self.inception.state_dict(), model_zoo.load_url(model_urls['inception_v3_google'])) nn.init.xavier_normal(self.inception.fc.weight)
def __init__(self, num_classes=8, pretrained=False): super(DenseNet, self).__init__() self.num_classes = num_classes self.densenet = torchvision.models.DenseNet(num_classes=num_classes, num_init_features=64, growth_rate=32, block_config=(6, 12, 24, 16)) self.dim = self.densenet.dim if pretrained: utl.load_state_dict(self.densenet.state_dict(), model_zoo.load_url(model_urls['densenet121'])) nn.init.xavier_normal(self.densenet.classifier.weight)
def vgg19_bn(pretrained=False, in_channels=3, **kwargs): """VGG 19-layer model (configuration 'E') with batch normalization Args: pretrained (bool): If True, returns a model pre-trained on ImageNet """ if pretrained: kwargs['init_weights'] = False model = VGG(make_layers(cfg['E'], in_channels, batch_norm=True), **kwargs) if pretrained: #model.load_state_dict(model_zoo.load_url(model_urls['vgg19_bn'])) utl.load_state_dict(model.state_dict(), model_zoo.load_url(model_urls['vgg19_bn'])) return model
def vgg16(pretrained=False, in_channels=3, **kwargs): """VGG 16-layer model (configuration "D") Args: pretrained (bool): If True, returns a model pre-trained on ImageNet """ if pretrained: kwargs['init_weights'] = False model = VGG(make_layers(cfg['D'], in_channels), **kwargs) if pretrained: #model.load_state_dict(model_zoo.load_url(model_urls['vgg16'])) utl.load_state_dict(model.state_dict(), model_zoo.load_url(model_urls['vgg16'])) return model
def densenet161(pretrained=False, **kwargs): r"""Densenet-161 model from `"Densely Connected Convolutional Networks" <https://arxiv.org/pdf/1608.06993.pdf>`_ Args: pretrained (bool): If True, returns a model pre-trained on ImageNet """ model = DenseNet(num_init_features=96, growth_rate=48, block_config=(6, 12, 36, 24), **kwargs) if pretrained: #model.load_state_dict(model_zoo.load_url(model_urls['densenet161'])) utl.load_state_dict(model.state_dict(), model_zoo.load_url(model_urls['densenet161'])) return model
def inception_v3(pretrained=False, **kwargs): r"""Inception v3 model architecture from `"Rethinking the Inception Architecture for Computer Vision" <http://arxiv.org/abs/1512.00567>`_. Args: pretrained (bool): If True, returns a model pre-trained on ImageNet """ if pretrained: if 'transform_input' not in kwargs: kwargs['transform_input'] = True model = Inception3(**kwargs) #model.load_state_dict(model_zoo.load_url(model_urls['inception_v3_google'])) utl.load_state_dict( model.state_dict(), model_zoo.load_url(model_urls['inception_v3_google'])) return model return Inception3(**kwargs)