Python torchvision.models 模块,resnet18() 实例源码

我们从Python开源项目中,提取了以下7个代码示例,用于说明如何使用torchvision.models.resnet18()

项目:facenet_pytorch    作者:liorshk    | 项目源码 | 文件源码
def __init__(self,embedding_size,num_classes, checkpoint=None):
        super(FaceModelCenter, self).__init__()
        self.model = resnet18()
        self.model.avgpool = None
        self.model.fc1 = nn.Linear(512*3*3, 512)
        self.model.fc2 = nn.Linear(512, embedding_size)
        self.model.classifier = nn.Linear(embedding_size, num_classes)
        self.centers = torch.zeros(num_classes, embedding_size).type(torch.FloatTensor)
        self.num_classes = num_classes

        self.apply(self.weights_init)

        if checkpoint is not None:
            # Check if there are the same number of classes
            if list(checkpoint['state_dict'].values())[-1].size(0) == num_classes:
                self.load_state_dict(checkpoint['state_dict'])
                self.centers = checkpoint['centers']
            else:
                own_state = self.state_dict()
                for name, param in checkpoint['state_dict'].items():
                    if "classifier" not in name:
                        if isinstance(param, Parameter):
                            # backwards compatibility for serialized parameters
                            param = param.data
                        own_state[name].copy_(param)
项目:voc_classification    作者:HyeonwooNoh    | 项目源码 | 文件源码
def GetPretrainedModel(params, num_classes):
    if params['model'] == 'resnet18':
        model = models.resnet18(pretrained=True)
    elif params['model'] == 'resnet34':
        model = models.resnet34(pretrained=True)
    elif params['model'] == 'resnet50':
        model = models.resnet50(pretrained=True)
    elif params['model'] == 'resnet101':
        model = models.resnet101(pretrained=True)
    elif params['model'] == 'resnet152':
        model = models.resnet152(pretrained=True)
    else:
        raise ValueError('Unknown model type')
    num_features = model.fc.in_features
    model.fc = SigmoidLinear(num_features, num_classes)
    return model
项目:planet-pytorch    作者:kefth    | 项目源码 | 文件源码
def __init__(self):
        super().__init__()
        self.pretrained_model = models.resnet18(pretrained=True)
        classifier = [
            nn.Linear(self.pretrained_model.fc.in_features, 17)
        ]
        self.classifier = nn.Sequential(*classifier)
        self.pretrained_model.fc = self.classifier
项目:weldon.resnet.pytorch    作者:durandtibo    | 项目源码 | 文件源码
def resnet18_weldon(num_classes, pretrained=True, kmax=1, kmin=None):
    model = models.resnet18(pretrained)
    pooling = WeldonPool2d(kmax, kmin)
    return ResNetWSL(model, num_classes, pooling=pooling)
项目:facenet_pytorch    作者:liorshk    | 项目源码 | 文件源码
def __init__(self,embedding_size,num_classes,pretrained=False):
        super(FaceModel, self).__init__()

        self.model = resnet18(pretrained)

        self.embedding_size = embedding_size

        self.model.fc = nn.Linear(512*3*3, self.embedding_size)

        self.model.classifier = nn.Linear(self.embedding_size, num_classes)
项目:pretrained-models.pytorch    作者:Cadene    | 项目源码 | 文件源码
def resnet18(num_classes=1000, pretrained='imagenet'):
    """Constructs a ResNet-18 model.
    """
    model = models.resnet18(pretrained=False)
    if pretrained is not None:
        settings = pretrained_settings['resnet18'][pretrained]
        model = load_pretrained(model, num_classes, settings)
    model = modify_resnets(model)
    return model
项目:voc_classification    作者:HyeonwooNoh    | 项目源码 | 文件源码
def _GetArguments():
    parser = argparse.ArgumentParser(
        formatter_class=argparse.ArgumentDefaultsHelpFormatter)
    parser.add_argument("--interactive", action="store_true", default=False,
        help="Run the script in an interactive mode")
    parser.add_argument("--verbose", action="store_true", default=False,
        help="Visualize all logs")
    parser.add_argument("--voc_devkit_dir", default="data/VOCdevkit",
        help="Root directory of VOC development kit")
    parser.add_argument("--voc_version", default="VOC2007",
        help="Target VOC dataset version")
    parser.add_argument("--model", default="resnet18",
        help="Pretrained model")
    parser.add_argument("--batch_size", default=100, type=int,
        help="Batch size")
    parser.add_argument("--num_data_loading_workers", default=4, type=int,
        help="Number of data loading workers")
    parser.add_argument("--num_epochs", default=50, type=int,
        help="Number of epochs for training")
    parser.add_argument("--initial_learning_rate", default=0.1, type=float,
        help="Initial learning rate for SGD")
    parser.add_argument("--learning_rate_decay_epoch", default=50, type=int,
        help="How frequently the learning rate will be decayed")
    parser.add_argument("--momentum", default=0.9, type=float,
        help="Momentum for learning rate of SGD")
    parser.add_argument("--seed", default=111, type=int,
        help="Random seed")
    parser.add_argument("--save_dir", default="temp_result",
        help="Directory for saving results of train / test")
    args = parser.parse_args()
    params = vars(args)
    print (json.dumps(params, indent=2))
    return params