imgclsmob项目的PDF打印和预训练模型下载(pre_models+model_PDF)+tensorflow权重转pytorch权重

https://github.com/lukemelas/EfficientNet-PyTorch/tree/master/tf_to_pytorch/convert_tf_to_pt

tensorflow权重转pytorch权重

https://travis-ci.org/osmr/imgclsmob
https://github.com/osmr/imgclsmob

# -*-coding:utf-8-*-
from __future__ import print_function
import os


import torch
import torch.onnx
import torch.nn as nn
import torch.optim as optim
import torch.nn.functional as F
from torch.autograd import Variable
from torchvision import datasets, transforms, models

import argparse

from pytorchcv.model_provider import get_model as ptcv_get_model

def train(args, model, device, train_loader, optimizer, epoch):
    model.train()
    # for batch_idx, (data, target) in enumerate(train_loader):
    for batch_idx, data_ynh in enumerate(train_loader):
        # 获取图片和标签
        data, target = data_ynh
        data, target = data.to(device), target.to(device)
        optimizer.zero_grad()
        output = model(data)
        output1 = torch.nn.functional.log_softmax(output, dim=1)
        loss = F.nll_loss(output1, target)
        # loss = F.l1_loss(output, target)
        loss.backward()
        optimizer.step()

        # new ynh
        # 每10个batch画个点用于loss曲线
        if batch_idx % 10 == 0:
            niter = epoch * len(train_loader) + batch_idx

        if batch_idx % args.log_interval == 0:
            print('Train Epoch: {} [{}/{} ({:.0f}%)]\tLoss: {:.6f}'.format(
                epoch, batch_idx * len(data), len(train_loader.dataset),
                       100. * batch_idx / len(train_loader), loss.item()))


def test(args, model, device, test_loader, epoch):
    model.eval()
    test_loss = 0
    correct = 0
    with torch.no_grad():
        # for data, target in test_loader:
        for data_ynh in test_loader:
            # 获取图片和标签
            data, target = data_ynh
            data, target = data.to(device), target.to(device)
            output = model(data)
            output1 = torch.nn.functional.log_softmax(output, dim=1)
            test_loss += F.nll_loss(output1, target, reduction='sum').item()  # sum up batch loss
            pred = output.argmax(dim=1, keepdim=True)  # get the index of the max log-probability
            correct += pred.eq(target.view_as(pred)).sum().item()

    test_loss /= len(test_loader.dataset)

    print('\nTest set: Average loss: {:.4f}, Accuracy: {}/{} ({:.0f}%)\n'.format(
        test_loss, correct, len(test_loader.dataset),
        100. * correct / len(test_loader.dataset)))


def main():
    # Training settings
    parser = argparse.ArgumentParser(description='PyTorch MNIST Example')
    parser.add_argument('--batch-size', type=int, default=10, metavar='N',
                        help='input batch size for training (default: 64)')
    parser.add_argument('--test-batch-size', type=int, default=10, metavar='N',
                        help='input batch size for testing (default: 1000)')
    parser.add_argument('--epochs', type=int, default=10, metavar='N',
                        help='number of epochs to train (default: 10)')
    parser.add_argument('--lr', type=float, default=0.01, metavar='LR',
                        help='learning rate (default: 0.01)')
    parser.add_argument('--momentum', type=float, default=0.5, metavar='M',
                        help='SGD momentum (default: 0.5)')
    parser.add_argument('--no-cuda', action='store_true', default=False,
                        help='disables CUDA training')
    parser.add_argument('--seed', type=int, default=1, metavar='S',
                        help='random seed (default: 1)')
    parser.add_argument('--log-interval', type=int, default=10, metavar='N',
                        help='how many batches to wait before logging training status')

    parser.add_argument('--save-model', action='store_true', default=False,
                        help='For Saving the current Model')
    args = parser.parse_args()
    use_cuda = not args.no_cuda and torch.cuda.is_available()

    torch.manual_seed(args.seed)

    device = torch.device("cuda" if use_cuda else "cpu")

    kwargs = {'num_workers': 1, 'pin_memory': True} if use_cuda else {}

    # -------------------------------------------- step 1/5 : 加载数据 -------------------------------------------
    train_txt_path = './Data/train.txt'
    valid_txt_path = './Data/valid.txt'
    # 数据预处理设置
    # normMean = [0.4948052, 0.48568845, 0.44682974]
    # normStd = [0.24580306, 0.24236229, 0.2603115]
    normMean = [104, 117, 123]
    normStd = [1, 1, 1]
    normTransform = transforms.Normalize(normMean, normStd)
    trainTransform = transforms.Compose([
        transforms.Resize(224),
        # transforms.RandomCrop(224, padding=4),
        transforms.ToTensor(),
        # normTransform
    ])

    validTransform = transforms.Compose([
        transforms.Resize(224),
        transforms.ToTensor(),
        # normTransform
    ])

    train_loader = torch.utils.data.DataLoader(
        datasets.MNIST('./data/', train=True, download=True,
                       transform=transforms.Compose([
                           transforms.Resize((224), interpolation=2),
                           transforms.Grayscale(3),
                           transforms.ToTensor(),
                           transforms.Normalize((0.1307,), (0.3081,))
                       ])),
        batch_size=args.batch_size, shuffle=True, **kwargs)
    valid_loader = torch.utils.data.DataLoader(
        datasets.MNIST('./data/', train=False, transform=transforms.Compose([
            transforms.Resize((224), interpolation=2),
            transforms.Grayscale(3),
            transforms.ToTensor(),
            transforms.Normalize((0.1307,), (0.3081,))
        ])),
        batch_size=args.test_batch_size, shuffle=True, **kwargs)


    # blocks_args, global_params = utils.get_model_params('efficientnet-b0', override_params=None)
    # model = EfficientNet(blocks_args, global_params)

    #model = EfficientNet.from_pretrained('efficientnet-b0').to(device)  # .cuda()
    modelname = 'efficientnet_b0'
    #efficientnet_b0
    root = os.path.join("./", "pre_models")
    model = ptcv_get_model(modelname, num_classes=10, pretrained=True, root=root) #True #False
    #print(model)
    model = model.cuda()

    # dummy_input = torch.rand(1, 3, 224, 224).requires_grad_(True)
    # writer.add_graph(model, (dummy_input,))

    # no cuda()
    # vis_graph = make_dot(model(dummy_input), params=dict(model.named_parameters()))
    # vis_graph = make_dot(model(dummy_input), params=dict(list(model.named_parameters()) + [('x', dummy_input)]))
    # vis_graph.view()

    # no cuda()
    #import hiddenlayer as hl
    #temp_input = torch.zeros([1, 3, 224, 224]).cuda()
    #hl_graph = hl.build_graph(model, temp_input)
    #hl_graph.theme = hl.graph.THEMES["blue"].copy()
    #hl_graph.save(os.path.join("./model_PDF", modelname+"_hl.pdf"))

    # netron这个工具来可视化(读取ONNX文件)
    # https://discuss.pytorch.org/t/onnx-export-failed-couldnt-export-operator-aten-adaptive-avg-pool1d/30204
    # https://ptorch.com/news/95.html
    # model.train(False)
    # dummy_input = torch.randn(10, 3, 224, 224, device='cuda')
    # torch_out = torch.onnx._export(model, dummy_input, "./efficientnet-b0.onnx", export_params=True, verbose=True)

    # no .cuda()

    import tensorwatch as tw
    tw_graph = tw.draw_model(model, torch.zeros([1, 3, 224, 224]).cuda())
    tw_graph.save(os.path.join("./model_PDF", modelname+"_tw.pdf"))
    # print(model)
    # model.to(device)
    # summary(model, (3, 224, 224))
    # model.cpu()
    # stat(model,  (3, 224, 224))
    print("-------------------------------------------")

    optimizer = optim.SGD(model.parameters(), lr=args.lr, momentum=args.momentum)

    for epoch in range(1, args.epochs + 1):
        train(args, model, device, train_loader, optimizer, epoch)
        test(args, model, device, valid_loader, epoch)

    if (args.save_model):
        torch.save(model.state_dict(), "mnist_cnn.pt")


if __name__ == '__main__':
    main()
# -*-coding:utf-8-*-
from __future__ import print_function
import os


import torch
import torch.onnx
import torch.nn as nn
import torch.optim as optim
import torch.nn.functional as F
from torch.autograd import Variable
from torchvision import datasets, transforms, models

import argparse

from pytorchcv.model_provider import get_model as ptcv_get_model
from pytorchcv.models.model_store import *


_models = {
    'alexnet': 'alexnet',
    'alexnetb': 'alexnetb',

    'zfnet': 'zfnet',

    'vgg11': 'vgg11',
    'vgg13': 'vgg13',
    'vgg16': 'vgg16',
    'vgg19': 'vgg19',
    'bn_vgg11': 'bn_vgg11',
    'bn_vgg13': 'bn_vgg13',
    'bn_vgg16': 'bn_vgg16',
    'bn_vgg19': 'bn_vgg19',
    'bn_vgg11b': 'bn_vgg11b',
    'bn_vgg13b': 'bn_vgg13b',
    'bn_vgg16b': 'bn_vgg16b',
    'bn_vgg19b': 'bn_vgg19b',

    'bninception': 'bninception',

    'resnet10': 'resnet10',
    'resnet12': 'resnet12',
    'resnet14': 'resnet14',
    'resnetbc14b': 'resnetbc14b',
    'resnet16': 'resnet16',
    'resnet18_wd4': 'resnet18_wd4',
    'resnet18_wd2': 'resnet18_wd2',
    'resnet18_w3d4': 'resnet18_w3d4',
    'resnet18': 'resnet18',
    'resnet26': 'resnet26',
    'resnetbc26b': 'resnetbc26b',
    'resnet34': 'resnet34',
    'resnetbc38b': 'resnetbc38b',
    'resnet50': 'resnet50',
    'resnet50b': 'resnet50b',
    'resnet101': 'resnet101',
    'resnet101b': 'resnet101b',
    'resnet152': 'resnet152',
    'resnet152b': 'resnet152b',
    'resnet200': 'resnet200',
    'resnet200b': 'resnet200b',

    'preresnet10': 'preresnet10',
    'preresnet12': 'preresnet12',
    'preresnet14': 'preresnet14',
    'preresnetbc14b': 'preresnetbc14b',
    'preresnet16': 'preresnet16',
    'preresnet18_wd4': 'preresnet18_wd4',
    'preresnet18_wd2': 'preresnet18_wd2',
    'preresnet18_w3d4': 'preresnet18_w3d4',
    'preresnet18': 'preresnet18',
    'preresnet26': 'preresnet26',
    'preresnetbc26b': 'preresnetbc26b',
    'preresnet34': 'preresnet34',
    'preresnetbc38b': 'preresnetbc38b',
    'preresnet50': 'preresnet50',
    'preresnet50b': 'preresnet50b',
    'preresnet101': 'preresnet101',
    'preresnet101b': 'preresnet101b',
    'preresnet152': 'preresnet152',
    'preresnet152b': 'preresnet152b',
    'preresnet200': 'preresnet200',
    'preresnet200b': 'preresnet200b',
    'preresnet269b': 'preresnet269b',

    'resnext14_16x4d': 'resnext14_16x4d',
    'resnext14_32x2d': 'resnext14_32x2d',
    'resnext14_32x4d': 'resnext14_32x4d',
    'resnext26_16x4d': 'resnext26_16x4d',
    'resnext26_32x2d': 'resnext26_32x2d',
    'resnext26_32x4d': 'resnext26_32x4d',
    'resnext38_32x4d': 'resnext38_32x4d',
    'resnext50_32x4d': 'resnext50_32x4d',
    'resnext101_32x4d': 'resnext101_32x4d',
    'resnext101_64x4d': 'resnext101_64x4d',

    'seresnet10': 'seresnet10',
    'seresnet12': 'seresnet12',
    'seresnet14': 'seresnet14',
    'seresnet16': 'seresnet16',
    'seresnet18': 'seresnet18',
    'seresnet26': 'seresnet26',
    'seresnetbc26b': 'seresnetbc26b',
    'seresnet34': 'seresnet34',
    'seresnetbc38b': 'seresnetbc38b',
    'seresnet50': 'seresnet50',
    'seresnet50b': 'seresnet50b',
    'seresnet101': 'seresnet101',
    'seresnet101b': 'seresnet101b',
    'seresnet152': 'seresnet152',
    'seresnet152b': 'seresnet152b',
    'seresnet200': 'seresnet200',
    'seresnet200b': 'seresnet200b',

    'sepreresnet10': 'sepreresnet10',
    'sepreresnet12': 'sepreresnet12',
    'sepreresnet14': 'sepreresnet14',
    'sepreresnet16': 'sepreresnet16',
    'sepreresnet18': 'sepreresnet18',
    'sepreresnet26': 'sepreresnet26',
    'sepreresnetbc26b': 'sepreresnetbc26b',
    'sepreresnet34': 'sepreresnet34',
    'sepreresnetbc38b': 'sepreresnetbc38b',
    'sepreresnet50': 'sepreresnet50',
    'sepreresnet50b': 'sepreresnet50b',
    'sepreresnet101': 'sepreresnet101',
    'sepreresnet101b': 'sepreresnet101b',
    'sepreresnet152': 'sepreresnet152',
    'sepreresnet152b': 'sepreresnet152b',
    'sepreresnet200': 'sepreresnet200',
    'sepreresnet200b': 'sepreresnet200b',

    'seresnext50_32x4d': 'seresnext50_32x4d',
    'seresnext101_32x4d': 'seresnext101_32x4d',
    'seresnext101_64x4d': 'seresnext101_64x4d',

    'senet16': 'senet16',
    'senet28': 'senet28',
    'senet40': 'senet40',
    'senet52': 'senet52',
    'senet103': 'senet103',
    'senet154': 'senet154',

    'ibn_resnet50': 'ibn_resnet50',
    'ibn_resnet101': 'ibn_resnet101',
    'ibn_resnet152': 'ibn_resnet152',

    'ibnb_resnet50': 'ibnb_resnet50',
    'ibnb_resnet101': 'ibnb_resnet101',
    'ibnb_resnet152': 'ibnb_resnet152',

    'ibn_resnext50_32x4d': 'ibn_resnext50_32x4d',
    'ibn_resnext101_32x4d': 'ibn_resnext101_32x4d',
    'ibn_resnext101_64x4d': 'ibn_resnext101_64x4d',

    'ibn_densenet121': 'ibn_densenet121',
    'ibn_densenet161': 'ibn_densenet161',
    'ibn_densenet169': 'ibn_densenet169',
    'ibn_densenet201': 'ibn_densenet201',

    'airnet50_1x64d_r2': 'airnet50_1x64d_r2',
    'airnet50_1x64d_r16': 'airnet50_1x64d_r16',
    'airnet101_1x64d_r2': 'airnet101_1x64d_r2',

    'airnext50_32x4d_r2': 'airnext50_32x4d_r2',
    'airnext101_32x4d_r2': 'airnext101_32x4d_r2',
    'airnext101_32x4d_r16': 'airnext101_32x4d_r16',

    'bam_resnet18': 'bam_resnet18',
    'bam_resnet34': 'bam_resnet34',
    'bam_resnet50': 'bam_resnet50',
    'bam_resnet101': 'bam_resnet101',
    'bam_resnet152': 'bam_resnet152',

    'cbam_resnet18': 'cbam_resnet18',
    'cbam_resnet34': 'cbam_resnet34',
    'cbam_resnet50': 'cbam_resnet50',
    'cbam_resnet101': 'cbam_resnet101',
    'cbam_resnet152': 'cbam_resnet152',

    'resattnet56': 'resattnet56',
    'resattnet92': 'resattnet92',
    'resattnet128': 'resattnet128',
    'resattnet164': 'resattnet164',
    'resattnet200': 'resattnet200',
    'resattnet236': 'resattnet236',
    'resattnet452': 'resattnet452',

    'sknet50': 'sknet50',
    'sknet101': 'sknet101',
    'sknet152': 'sknet152',

    'diaresnet10': 'diaresnet10',
    'diaresnet12': 'diaresnet12',
    'diaresnet14': 'diaresnet14',
    'diaresnetbc14b': 'diaresnetbc14b',
    'diaresnet16': 'diaresnet16',
    'diaresnet18': 'diaresnet18',
    'diaresnet26': 'diaresnet26',
    'diaresnetbc26b': 'diaresnetbc26b',
    'diaresnet34': 'diaresnet34',
    'diaresnetbc38b': 'diaresnetbc38b',
    'diaresnet50': 'diaresnet50',
    'diaresnet50b': 'diaresnet50b',
    'diaresnet101': 'diaresnet101',
    'diaresnet101b': 'diaresnet101b',
    'diaresnet152': 'diaresnet152',
    'diaresnet152b': 'diaresnet152b',
    'diaresnet200': 'diaresnet200',
    'diaresnet200b': 'diaresnet200b',

    'diapreresnet10': 'diapreresnet10',
    'diapreresnet12': 'diapreresnet12',
    'diapreresnet14': 'diapreresnet14',
    'diapreresnetbc14b': 'diapreresnetbc14b',
    'diapreresnet16': 'diapreresnet16',
    'diapreresnet18': 'diapreresnet18',
    'diapreresnet26': 'diapreresnet26',
    'diapreresnetbc26b': 'diapreresnetbc26b',
    'diapreresnet34': 'diapreresnet34',
    'diapreresnetbc38b': 'diapreresnetbc38b',
    'diapreresnet50': 'diapreresnet50',
    'diapreresnet50b': 'diapreresnet50b',
    'diapreresnet101': 'diapreresnet101',
    'diapreresnet101b': 'diapreresnet101b',
    'diapreresnet152': 'diapreresnet152',
    'diapreresnet152b': 'diapreresnet152b',
    'diapreresnet200': 'diapreresnet200',
    'diapreresnet200b': 'diapreresnet200b',
    'diapreresnet269b': 'diapreresnet269b',

    'pyramidnet101_a360': 'pyramidnet101_a360',

    'diracnet18v2': 'diracnet18v2',
    'diracnet34v2': 'diracnet34v2',

    'sharesnet18': 'sharesnet18',
    'sharesnet34': 'sharesnet34',
    'sharesnet50': 'sharesnet50',
    'sharesnet50b': 'sharesnet50b',
    'sharesnet101': 'sharesnet101',
    'sharesnet101b': 'sharesnet101b',
    'sharesnet152': 'sharesnet152',
    'sharesnet152b': 'sharesnet152b',

    'densenet121': 'densenet121',
    'densenet161': 'densenet161',
    'densenet169': 'densenet169',
    'densenet201': 'densenet201',

    'condensenet74_c4_g4': 'condensenet74_c4_g4',
    'condensenet74_c8_g8': 'condensenet74_c8_g8',

    'sparsenet121': 'sparsenet121',
    'sparsenet161': 'sparsenet161',
    'sparsenet169': 'sparsenet169',
    'sparsenet201': 'sparsenet201',
    'sparsenet264': 'sparsenet264',

    'peleenet': 'peleenet',

    'wrn50_2': 'wrn50_2',

    'drnc26': 'drnc26',
    'drnc42': 'drnc42',
    'drnc58': 'drnc58',
    'drnd22': 'drnd22',
    'drnd38': 'drnd38',
    'drnd54': 'drnd54',
    'drnd105': 'drnd105',

    'dpn68': 'dpn68',
    'dpn68b': 'dpn68b',
    'dpn98': 'dpn98',
    'dpn107': 'dpn107',
    'dpn131': 'dpn131',

    'darknet_ref': 'darknet_ref',
    'darknet_tiny': 'darknet_tiny',
    'darknet19': 'darknet19',
    'darknet53': 'darknet53',

    'channelnet': 'channelnet',

    'revnet38': 'revnet38',
    'revnet110': 'revnet110',
    'revnet164': 'revnet164',

    'irevnet301': 'irevnet301',

    'bagnet9': 'bagnet9',
    'bagnet17': 'bagnet17',
    'bagnet33': 'bagnet33',

    'dla34': 'dla34',
    'dla46c': 'dla46c',
    'dla46xc': 'dla46xc',
    'dla60': 'dla60',
    'dla60x': 'dla60x',
    'dla60xc': 'dla60xc',
    'dla102': 'dla102',
    'dla102x': 'dla102x',
    'dla102x2': 'dla102x2',
    'dla169': 'dla169',

    'msdnet22': 'msdnet22',

    'fishnet99': 'fishnet99',
    'fishnet150': 'fishnet150',

    'espnetv2_wd2': 'espnetv2_wd2',
    'espnetv2_w1': 'espnetv2_w1',
    'espnetv2_w5d4': 'espnetv2_w5d4',
    'espnetv2_w3d2': 'espnetv2_w3d2',
    'espnetv2_w2': 'espnetv2_w2',

    'xdensenet121_2': 'xdensenet121_2',
    'xdensenet161_2': 'xdensenet161_2',
    'xdensenet169_2': 'xdensenet169_2',
    'xdensenet201_2': 'xdensenet201_2',

    'squeezenet_v1_0': 'squeezenet_v1_0',
    'squeezenet_v1_1': 'squeezenet_v1_1',

    'squeezeresnet_v1_0': 'squeezeresnet_v1_0',
    'squeezeresnet_v1_1': 'squeezeresnet_v1_1',

    'sqnxt23_w1': 'sqnxt23_w1',
    'sqnxt23_w3d2': 'sqnxt23_w3d2',
    'sqnxt23_w2': 'sqnxt23_w2',
    'sqnxt23v5_w1': 'sqnxt23v5_w1',
    'sqnxt23v5_w3d2': 'sqnxt23v5_w3d2',
    'sqnxt23v5_w2': 'sqnxt23v5_w2',

    'shufflenet_g1_w1': 'shufflenet_g1_w1',
    'shufflenet_g2_w1': 'shufflenet_g2_w1',
    'shufflenet_g3_w1': 'shufflenet_g3_w1',
    'shufflenet_g4_w1': 'shufflenet_g4_w1',
    'shufflenet_g8_w1': 'shufflenet_g8_w1',
    'shufflenet_g1_w3d4': 'shufflenet_g1_w3d4',
    'shufflenet_g3_w3d4': 'shufflenet_g3_w3d4',
    'shufflenet_g1_wd2': 'shufflenet_g1_wd2',
    'shufflenet_g3_wd2': 'shufflenet_g3_wd2',
    'shufflenet_g1_wd4': 'shufflenet_g1_wd4',
    'shufflenet_g3_wd4': 'shufflenet_g3_wd4',

    'shufflenetv2_wd2': 'shufflenetv2_wd2',
    'shufflenetv2_w1': 'shufflenetv2_w1',
    'shufflenetv2_w3d2': 'shufflenetv2_w3d2',
    'shufflenetv2_w2': 'shufflenetv2_w2',

    'shufflenetv2b_wd2': 'shufflenetv2b_wd2',
    'shufflenetv2b_w1': 'shufflenetv2b_w1',
    'shufflenetv2b_w3d2': 'shufflenetv2b_w3d2',
    'shufflenetv2b_w2': 'shufflenetv2b_w2',

    'menet108_8x1_g3': 'menet108_8x1_g3',
    'menet128_8x1_g4': 'menet128_8x1_g4',
    'menet160_8x1_g8': 'menet160_8x1_g8',
    'menet228_12x1_g3': 'menet228_12x1_g3',
    'menet256_12x1_g4': 'menet256_12x1_g4',
    'menet348_12x1_g3': 'menet348_12x1_g3',
    'menet352_12x1_g8': 'menet352_12x1_g8',
    'menet456_24x1_g3': 'menet456_24x1_g3',

    'mobilenet_w1': 'mobilenet_w1',
    'mobilenet_w3d4': 'mobilenet_w3d4',
    'mobilenet_wd2': 'mobilenet_wd2',
    'mobilenet_wd4': 'mobilenet_wd4',

    'fdmobilenet_w1': 'fdmobilenet_w1',
    'fdmobilenet_w3d4': 'fdmobilenet_w3d4',
    'fdmobilenet_wd2': 'fdmobilenet_wd2',
    'fdmobilenet_wd4': 'fdmobilenet_wd4',

    'mobilenetv2_w1': 'mobilenetv2_w1',
    'mobilenetv2_w3d4': 'mobilenetv2_w3d4',
    'mobilenetv2_wd2': 'mobilenetv2_wd2',
    'mobilenetv2_wd4': 'mobilenetv2_wd4',

    'mobilenetv3_small_w7d20': 'mobilenetv3_small_w7d20',
    'mobilenetv3_small_wd2': 'mobilenetv3_small_wd2',
    'mobilenetv3_small_w3d4': 'mobilenetv3_small_w3d4',
    'mobilenetv3_small_w1': 'mobilenetv3_small_w1',
    'mobilenetv3_small_w5d4': 'mobilenetv3_small_w5d4',
    'mobilenetv3_large_w7d20': 'mobilenetv3_large_w7d20',
    'mobilenetv3_large_wd2': 'mobilenetv3_large_wd2',
    'mobilenetv3_large_w3d4': 'mobilenetv3_large_w3d4',
    'mobilenetv3_large_w1': 'mobilenetv3_large_w1',
    'mobilenetv3_large_w5d4': 'mobilenetv3_large_w5d4',

    'igcv3_w1': 'igcv3_w1',
    'igcv3_w3d4': 'igcv3_w3d4',
    'igcv3_wd2': 'igcv3_wd2',
    'igcv3_wd4': 'igcv3_wd4',

    'mnasnet': 'mnasnet',

    'darts': 'darts',

    'proxylessnas_cpu': 'proxylessnas_cpu',
    'proxylessnas_gpu': 'proxylessnas_gpu',
    'proxylessnas_mobile': 'proxylessnas_mobile',
    'proxylessnas_mobile14': 'proxylessnas_mobile14',

    'xception': 'xception',
    'inceptionv3': 'inceptionv3',
    'inceptionv4': 'inceptionv4',
    'inceptionresnetv2': 'inceptionresnetv2',
    'polynet': 'polynet',

    'nasnet_4a1056': 'nasnet_4a1056',
    'nasnet_6a4032': 'nasnet_6a4032',

    'pnasnet5large': 'pnasnet5large',

    'efficientnet_b0': 'efficientnet_b0',
    'efficientnet_b1': 'efficientnet_b1',
    'efficientnet_b2': 'efficientnet_b2',
    'efficientnet_b3': 'efficientnet_b3',
    'efficientnet_b4': 'efficientnet_b4',
    'efficientnet_b5': 'efficientnet_b5',
    'efficientnet_b6': 'efficientnet_b6',
    'efficientnet_b7': 'efficientnet_b7',
    'efficientnet_b0b': 'efficientnet_b0b',
    'efficientnet_b1b': 'efficientnet_b1b',
    'efficientnet_b2b': 'efficientnet_b2b',
    'efficientnet_b3b': 'efficientnet_b3b',

    'nin_cifar10': 'nin_cifar10',
    'nin_cifar100': 'nin_cifar100',
    'nin_svhn': 'nin_svhn',

    'resnet20_cifar10': 'resnet20_cifar10',
    'resnet20_cifar100': 'resnet20_cifar100',
    'resnet20_svhn': 'resnet20_svhn',
    'resnet56_cifar10': 'resnet56_cifar10',
    'resnet56_cifar100': 'resnet56_cifar100',
    'resnet56_svhn': 'resnet56_svhn',
    'resnet110_cifar10': 'resnet110_cifar10',
    'resnet110_cifar100': 'resnet110_cifar100',
    'resnet110_svhn': 'resnet110_svhn',
    'resnet164bn_cifar10': 'resnet164bn_cifar10',
    'resnet164bn_cifar100': 'resnet164bn_cifar100',
    'resnet164bn_svhn': 'resnet164bn_svhn',
    'resnet272bn_cifar10': 'resnet272bn_cifar10',
    'resnet272bn_cifar100': 'resnet272bn_cifar100',
    'resnet272bn_svhn': 'resnet272bn_svhn',
    'resnet542bn_cifar10': 'resnet542bn_cifar10',
    'resnet542bn_cifar100': 'resnet542bn_cifar100',
    'resnet542bn_svhn': 'resnet542bn_svhn',
    'resnet1001_cifar10': 'resnet1001_cifar10',
    'resnet1001_cifar100': 'resnet1001_cifar100',
    'resnet1001_svhn': 'resnet1001_svhn',
    'resnet1202_cifar10': 'resnet1202_cifar10',
    'resnet1202_cifar100': 'resnet1202_cifar100',
    'resnet1202_svhn': 'resnet1202_svhn',

    'preresnet20_cifar10': 'preresnet20_cifar10',
    'preresnet20_cifar100': 'preresnet20_cifar100',
    'preresnet20_svhn': 'preresnet20_svhn',
    'preresnet56_cifar10': 'preresnet56_cifar10',
    'preresnet56_cifar100': 'preresnet56_cifar100',
    'preresnet56_svhn': 'preresnet56_svhn',
    'preresnet110_cifar10': 'preresnet110_cifar10',
    'preresnet110_cifar100': 'preresnet110_cifar100',
    'preresnet110_svhn': 'preresnet110_svhn',
    'preresnet164bn_cifar10': 'preresnet164bn_cifar10',
    'preresnet164bn_cifar100': 'preresnet164bn_cifar100',
    'preresnet164bn_svhn': 'preresnet164bn_svhn',
    'preresnet272bn_cifar10': 'preresnet272bn_cifar10',
    'preresnet272bn_cifar100': 'preresnet272bn_cifar100',
    'preresnet272bn_svhn': 'preresnet272bn_svhn',
    'preresnet542bn_cifar10': 'preresnet542bn_cifar10',
    'preresnet542bn_cifar100': 'preresnet542bn_cifar100',
    'preresnet542bn_svhn': 'preresnet542bn_svhn',
    'preresnet1001_cifar10': 'preresnet1001_cifar10',
    'preresnet1001_cifar100': 'preresnet1001_cifar100',
    'preresnet1001_svhn': 'preresnet1001_svhn',
    'preresnet1202_cifar10': 'preresnet1202_cifar10',
    'preresnet1202_cifar100': 'preresnet1202_cifar100',
    'preresnet1202_svhn': 'preresnet1202_svhn',

    'resnext20_16x4d_cifar10': 'resnext20_16x4d_cifar10',
    'resnext20_16x4d_cifar100': 'resnext20_16x4d_cifar100',
    'resnext20_16x4d_svhn': 'resnext20_16x4d_svhn',
    'resnext20_32x2d_cifar10': 'resnext20_32x2d_cifar10',
    'resnext20_32x2d_cifar100': 'resnext20_32x2d_cifar100',
    'resnext20_32x2d_svhn': 'resnext20_32x2d_svhn',
    'resnext20_32x4d_cifar10': 'resnext20_32x4d_cifar10',
    'resnext20_32x4d_cifar100': 'resnext20_32x4d_cifar100',
    'resnext20_32x4d_svhn': 'resnext20_32x4d_svhn',
    'resnext29_32x4d_cifar10': 'resnext29_32x4d_cifar10',
    'resnext29_32x4d_cifar100': 'resnext29_32x4d_cifar100',
    'resnext29_32x4d_svhn': 'resnext29_32x4d_svhn',
    'resnext29_16x64d_cifar10': 'resnext29_16x64d_cifar10',
    'resnext29_16x64d_cifar100': 'resnext29_16x64d_cifar100',
    'resnext29_16x64d_svhn': 'resnext29_16x64d_svhn',
    'resnext272_1x64d_cifar10': 'resnext272_1x64d_cifar10',
    'resnext272_1x64d_cifar100': 'resnext272_1x64d_cifar100',
    'resnext272_1x64d_svhn': 'resnext272_1x64d_svhn',
    'resnext272_2x32d_cifar10': 'resnext272_2x32d_cifar10',
    'resnext272_2x32d_cifar100': 'resnext272_2x32d_cifar100',
    'resnext272_2x32d_svhn': 'resnext272_2x32d_svhn',

    'seresnet20_cifar10': 'seresnet20_cifar10',
    'seresnet20_cifar100': 'seresnet20_cifar100',
    'seresnet20_svhn': 'seresnet20_svhn',
    'seresnet56_cifar10': 'seresnet56_cifar10',
    'seresnet56_cifar100': 'seresnet56_cifar100',
    'seresnet56_svhn': 'seresnet56_svhn',
    'seresnet110_cifar10': 'seresnet110_cifar10',
    'seresnet110_cifar100': 'seresnet110_cifar100',
    'seresnet110_svhn': 'seresnet110_svhn',
    'seresnet164bn_cifar10': 'seresnet164bn_cifar10',
    'seresnet164bn_cifar100': 'seresnet164bn_cifar100',
    'seresnet164bn_svhn': 'seresnet164bn_svhn',
    'seresnet272bn_cifar10': 'seresnet272bn_cifar10',
    'seresnet272bn_cifar100': 'seresnet272bn_cifar100',
    'seresnet272bn_svhn': 'seresnet272bn_svhn',
    'seresnet542bn_cifar10': 'seresnet542bn_cifar10',
    'seresnet542bn_cifar100': 'seresnet542bn_cifar100',
    'seresnet542bn_svhn': 'seresnet542bn_svhn',
    'seresnet1001_cifar10': 'seresnet1001_cifar10',
    'seresnet1001_cifar100': 'seresnet1001_cifar100',
    'seresnet1001_svhn': 'seresnet1001_svhn',
    'seresnet1202_cifar10': 'seresnet1202_cifar10',
    'seresnet1202_cifar100': 'seresnet1202_cifar100',
    'seresnet1202_svhn': 'seresnet1202_svhn',

    'sepreresnet20_cifar10': 'sepreresnet20_cifar10',
    'sepreresnet20_cifar100': 'sepreresnet20_cifar100',
    'sepreresnet20_svhn': 'sepreresnet20_svhn',
    'sepreresnet56_cifar10': 'sepreresnet56_cifar10',
    'sepreresnet56_cifar100': 'sepreresnet56_cifar100',
    'sepreresnet56_svhn': 'sepreresnet56_svhn',
    'sepreresnet110_cifar10': 'sepreresnet110_cifar10',
    'sepreresnet110_cifar100': 'sepreresnet110_cifar100',
    'sepreresnet110_svhn': 'sepreresnet110_svhn',
    'sepreresnet164bn_cifar10': 'sepreresnet164bn_cifar10',
    'sepreresnet164bn_cifar100': 'sepreresnet164bn_cifar100',
    'sepreresnet164bn_svhn': 'sepreresnet164bn_svhn',
    'sepreresnet272bn_cifar10': 'sepreresnet272bn_cifar10',
    'sepreresnet272bn_cifar100': 'sepreresnet272bn_cifar100',
    'sepreresnet272bn_svhn': 'sepreresnet272bn_svhn',
    'sepreresnet542bn_cifar10': 'sepreresnet542bn_cifar10',
    'sepreresnet542bn_cifar100': 'sepreresnet542bn_cifar100',
    'sepreresnet542bn_svhn': 'sepreresnet542bn_svhn',
    'sepreresnet1001_cifar10': 'sepreresnet1001_cifar10',
    'sepreresnet1001_cifar100': 'sepreresnet1001_cifar100',
    'sepreresnet1001_svhn': 'sepreresnet1001_svhn',
    'sepreresnet1202_cifar10': 'sepreresnet1202_cifar10',
    'sepreresnet1202_cifar100': 'sepreresnet1202_cifar100',
    'sepreresnet1202_svhn': 'sepreresnet1202_svhn',

    'pyramidnet110_a48_cifar10': 'pyramidnet110_a48_cifar10',
    'pyramidnet110_a48_cifar100': 'pyramidnet110_a48_cifar100',
    'pyramidnet110_a48_svhn': 'pyramidnet110_a48_svhn',
    'pyramidnet110_a84_cifar10': 'pyramidnet110_a84_cifar10',
    'pyramidnet110_a84_cifar100': 'pyramidnet110_a84_cifar100',
    'pyramidnet110_a84_svhn': 'pyramidnet110_a84_svhn',
    'pyramidnet110_a270_cifar10': 'pyramidnet110_a270_cifar10',
    'pyramidnet110_a270_cifar100': 'pyramidnet110_a270_cifar100',
    'pyramidnet110_a270_svhn': 'pyramidnet110_a270_svhn',
    'pyramidnet164_a270_bn_cifar10': 'pyramidnet164_a270_bn_cifar10',
    'pyramidnet164_a270_bn_cifar100': 'pyramidnet164_a270_bn_cifar100',
    'pyramidnet164_a270_bn_svhn': 'pyramidnet164_a270_bn_svhn',
    'pyramidnet200_a240_bn_cifar10': 'pyramidnet200_a240_bn_cifar10',
    'pyramidnet200_a240_bn_cifar100': 'pyramidnet200_a240_bn_cifar100',
    'pyramidnet200_a240_bn_svhn': 'pyramidnet200_a240_bn_svhn',
    'pyramidnet236_a220_bn_cifar10': 'pyramidnet236_a220_bn_cifar10',
    'pyramidnet236_a220_bn_cifar100': 'pyramidnet236_a220_bn_cifar100',
    'pyramidnet236_a220_bn_svhn': 'pyramidnet236_a220_bn_svhn',
    'pyramidnet272_a200_bn_cifar10': 'pyramidnet272_a200_bn_cifar10',
    'pyramidnet272_a200_bn_cifar100': 'pyramidnet272_a200_bn_cifar100',
    'pyramidnet272_a200_bn_svhn': 'pyramidnet272_a200_bn_svhn',

    'densenet40_k12_cifar10': 'densenet40_k12_cifar10',
    'densenet40_k12_cifar100': 'densenet40_k12_cifar100',
    'densenet40_k12_svhn': 'densenet40_k12_svhn',
    'densenet40_k12_bc_cifar10': 'densenet40_k12_bc_cifar10',
    'densenet40_k12_bc_cifar100': 'densenet40_k12_bc_cifar100',
    'densenet40_k12_bc_svhn': 'densenet40_k12_bc_svhn',
    'densenet40_k24_bc_cifar10': 'densenet40_k24_bc_cifar10',
    'densenet40_k24_bc_cifar100': 'densenet40_k24_bc_cifar100',
    'densenet40_k24_bc_svhn': 'densenet40_k24_bc_svhn',
    'densenet40_k36_bc_cifar10': 'densenet40_k36_bc_cifar10',
    'densenet40_k36_bc_cifar100': 'densenet40_k36_bc_cifar100',
    'densenet40_k36_bc_svhn': 'densenet40_k36_bc_svhn',
    'densenet100_k12_cifar10': 'densenet100_k12_cifar10',
    'densenet100_k12_cifar100': 'densenet100_k12_cifar100',
    'densenet100_k12_svhn': 'densenet100_k12_svhn',
    'densenet100_k24_cifar10': 'densenet100_k24_cifar10',
    'densenet100_k24_cifar100': 'densenet100_k24_cifar100',
    'densenet100_k24_svhn': 'densenet100_k24_svhn',
    'densenet100_k12_bc_cifar10': 'densenet100_k12_bc_cifar10',
    'densenet100_k12_bc_cifar100': 'densenet100_k12_bc_cifar100',
    'densenet100_k12_bc_svhn': 'densenet100_k12_bc_svhn',
    'densenet190_k40_bc_cifar10': 'densenet190_k40_bc_cifar10',
    'densenet190_k40_bc_cifar100': 'densenet190_k40_bc_cifar100',
    'densenet190_k40_bc_svhn': 'densenet190_k40_bc_svhn',
    'densenet250_k24_bc_cifar10': 'densenet250_k24_bc_cifar10',
    'densenet250_k24_bc_cifar100': 'densenet250_k24_bc_cifar100',
    'densenet250_k24_bc_svhn': 'densenet250_k24_bc_svhn',

    'xdensenet40_2_k24_bc_cifar10': 'xdensenet40_2_k24_bc_cifar10',
    'xdensenet40_2_k24_bc_cifar100': 'xdensenet40_2_k24_bc_cifar100',
    'xdensenet40_2_k24_bc_svhn': 'xdensenet40_2_k24_bc_svhn',
    'xdensenet40_2_k36_bc_cifar10': 'xdensenet40_2_k36_bc_cifar10',
    'xdensenet40_2_k36_bc_cifar100': 'xdensenet40_2_k36_bc_cifar100',
    'xdensenet40_2_k36_bc_svhn': 'xdensenet40_2_k36_bc_svhn',

    'wrn16_10_cifar10': 'wrn16_10_cifar10',
    'wrn16_10_cifar100': 'wrn16_10_cifar100',
    'wrn16_10_svhn': 'wrn16_10_svhn',
    'wrn28_10_cifar10': 'wrn28_10_cifar10',
    'wrn28_10_cifar100': 'wrn28_10_cifar100',
    'wrn28_10_svhn': 'wrn28_10_svhn',
    'wrn40_8_cifar10': 'wrn40_8_cifar10',
    'wrn40_8_cifar100': 'wrn40_8_cifar100',
    'wrn40_8_svhn': 'wrn40_8_svhn',

    'wrn20_10_1bit_cifar10': 'wrn20_10_1bit_cifar10',
    'wrn20_10_1bit_cifar100': 'wrn20_10_1bit_cifar100',
    'wrn20_10_1bit_svhn': 'wrn20_10_1bit_svhn',
    'wrn20_10_32bit_cifar10': 'wrn20_10_32bit_cifar10',
    'wrn20_10_32bit_cifar100': 'wrn20_10_32bit_cifar100',
    'wrn20_10_32bit_svhn': 'wrn20_10_32bit_svhn',

    'ror3_56_cifar10': 'ror3_56_cifar10',
    'ror3_56_cifar100': 'ror3_56_cifar100',
    'ror3_56_svhn': 'ror3_56_svhn',
    'ror3_110_cifar10': 'ror3_110_cifar10',
    'ror3_110_cifar100': 'ror3_110_cifar100',
    'ror3_110_svhn': 'ror3_110_svhn',
    'ror3_164_cifar10': 'ror3_164_cifar10',
    'ror3_164_cifar100': 'ror3_164_cifar100',
    'ror3_164_svhn': 'ror3_164_svhn',

    'rir_cifar10': 'rir_cifar10',
    'rir_cifar100': 'rir_cifar100',
    'rir_svhn': 'rir_svhn',

    'msdnet22_cifar10': 'msdnet22_cifar10',

    'resdropresnet20_cifar10': 'resdropresnet20_cifar10',
    'resdropresnet20_cifar100': 'resdropresnet20_cifar100',
    'resdropresnet20_svhn': 'resdropresnet20_svhn',

    'shakeshakeresnet20_2x16d_cifar10': 'shakeshakeresnet20_2x16d_cifar10',
    'shakeshakeresnet20_2x16d_cifar100': 'shakeshakeresnet20_2x16d_cifar100',
    'shakeshakeresnet20_2x16d_svhn': 'shakeshakeresnet20_2x16d_svhn',
    'shakeshakeresnet26_2x32d_cifar10': 'shakeshakeresnet26_2x32d_cifar10',
    'shakeshakeresnet26_2x32d_cifar100': 'shakeshakeresnet26_2x32d_cifar100',
    'shakeshakeresnet26_2x32d_svhn': 'shakeshakeresnet26_2x32d_svhn',

    'shakedropresnet20_cifar10': 'shakedropresnet20_cifar10',
    'shakedropresnet20_cifar100': 'shakedropresnet20_cifar100',
    'shakedropresnet20_svhn': 'shakedropresnet20_svhn',

    'fractalnet_cifar10': 'fractalnet_cifar10',
    'fractalnet_cifar100': 'fractalnet_cifar100',

    'diaresnet20_cifar10': 'diaresnet20_cifar10',
    'diaresnet20_cifar100': 'diaresnet20_cifar100',
    'diaresnet20_svhn': 'diaresnet20_svhn',
    'diaresnet56_cifar10': 'diaresnet56_cifar10',
    'diaresnet56_cifar100': 'diaresnet56_cifar100',
    'diaresnet56_svhn': 'diaresnet56_svhn',
    'diaresnet110_cifar10': 'diaresnet110_cifar10',
    'diaresnet110_cifar100': 'diaresnet110_cifar100',
    'diaresnet110_svhn': 'diaresnet110_svhn',
    'diaresnet164bn_cifar10': 'diaresnet164bn_cifar10',
    'diaresnet164bn_cifar100': 'diaresnet164bn_cifar100',
    'diaresnet164bn_svhn': 'diaresnet164bn_svhn',
    'diaresnet1001_cifar10': 'diaresnet1001_cifar10',
    'diaresnet1001_cifar100': 'diaresnet1001_cifar100',
    'diaresnet1001_svhn': 'diaresnet1001_svhn',
    'diaresnet1202_cifar10': 'diaresnet1202_cifar10',
    'diaresnet1202_cifar100': 'diaresnet1202_cifar100',
    'diaresnet1202_svhn': 'diaresnet1202_svhn',

    'diapreresnet20_cifar10': 'diapreresnet20_cifar10',
    'diapreresnet20_cifar100': 'diapreresnet20_cifar100',
    'diapreresnet20_svhn': 'diapreresnet20_svhn',
    'diapreresnet56_cifar10': 'diapreresnet56_cifar10',
    'diapreresnet56_cifar100': 'diapreresnet56_cifar100',
    'diapreresnet56_svhn': 'diapreresnet56_svhn',
    'diapreresnet110_cifar10': 'diapreresnet110_cifar10',
    'diapreresnet110_cifar100': 'diapreresnet110_cifar100',
    'diapreresnet110_svhn': 'diapreresnet110_svhn',
    'diapreresnet164bn_cifar10': 'diapreresnet164bn_cifar10',
    'diapreresnet164bn_cifar100': 'diapreresnet164bn_cifar100',
    'diapreresnet164bn_svhn': 'diapreresnet164bn_svhn',
    'diapreresnet1001_cifar10': 'diapreresnet1001_cifar10',
    'diapreresnet1001_cifar100': 'diapreresnet1001_cifar100',
    'diapreresnet1001_svhn': 'diapreresnet1001_svhn',
    'diapreresnet1202_cifar10': 'diapreresnet1202_cifar10',
    'diapreresnet1202_cifar100': 'diapreresnet1202_cifar100',
    'diapreresnet1202_svhn': 'diapreresnet1202_svhn',

    'isqrtcovresnet18': 'isqrtcovresnet18',
    'isqrtcovresnet34': 'isqrtcovresnet34',
    'isqrtcovresnet50': 'isqrtcovresnet50',
    'isqrtcovresnet50b': 'isqrtcovresnet50b',
    'isqrtcovresnet101': 'isqrtcovresnet101',
    'isqrtcovresnet101b': 'isqrtcovresnet101b',

    'resnetd50b': 'resnetd50b',
    'resnetd101b': 'resnetd101b',
    'resnetd152b': 'resnetd152b',

    'octresnet10_ad2': 'octresnet10_ad2',
    'octresnet50b_ad2': 'octresnet50b_ad2',

    'resnet10_cub': 'resnet10_cub',
    'resnet12_cub': 'resnet12_cub',
    'resnet14_cub': 'resnet14_cub',
    'resnetbc14b_cub': 'resnetbc14b_cub',
    'resnet16_cub': 'resnet16_cub',
    'resnet18_cub': 'resnet18_cub',
    'resnet26_cub': 'resnet26_cub',
    'resnetbc26b_cub': 'resnetbc26b_cub',
    'resnet34_cub': 'resnet34_cub',
    'resnetbc38b_cub': 'resnetbc38b_cub',
    'resnet50_cub': 'resnet50_cub',
    'resnet50b_cub': 'resnet50b_cub',
    'resnet101_cub': 'resnet101_cub',
    'resnet101b_cub': 'resnet101b_cub',
    'resnet152_cub': 'resnet152_cub',
    'resnet152b_cub': 'resnet152b_cub',
    'resnet200_cub': 'resnet200_cub',
    'resnet200b_cub': 'resnet200b_cub',

    'seresnet10_cub': 'seresnet10_cub',
    'seresnet12_cub': 'seresnet12_cub',
    'seresnet14_cub': 'seresnet14_cub',
    'seresnetbc14b_cub': 'seresnetbc14b_cub',
    'seresnet16_cub': 'seresnet16_cub',
    'seresnet18_cub': 'seresnet18_cub',
    'seresnet26_cub': 'seresnet26_cub',
    'seresnetbc26b_cub': 'seresnetbc26b_cub',
    'seresnet34_cub': 'seresnet34_cub',
    'seresnetbc38b_cub': 'seresnetbc38b_cub',
    'seresnet50_cub': 'seresnet50_cub',
    'seresnet50b_cub': 'seresnet50b_cub',
    'seresnet101_cub': 'seresnet101_cub',
    'seresnet101b_cub': 'seresnet101b_cub',
    'seresnet152_cub': 'seresnet152_cub',
    'seresnet152b_cub': 'seresnet152b_cub',
    'seresnet200_cub': 'seresnet200_cub',
    'seresnet200b_cub': 'seresnet200b_cub',

    'mobilenet_w1_cub': 'mobilenet_w1_cub',
    'mobilenet_w3d4_cub': 'mobilenet_w3d4_cub',
    'mobilenet_wd2_cub': 'mobilenet_wd2_cub',
    'mobilenet_wd4_cub': 'mobilenet_wd4_cub',

    'fdmobilenet_w1_cub': 'fdmobilenet_w1_cub',
    'fdmobilenet_w3d4_cub': 'fdmobilenet_w3d4_cub',
    'fdmobilenet_wd2_cub': 'fdmobilenet_wd2_cub',
    'fdmobilenet_wd4_cub': 'fdmobilenet_wd4_cub',

    'proxylessnas_cpu_cub': 'proxylessnas_cpu_cub',
    'proxylessnas_gpu_cub': 'proxylessnas_gpu_cub',
    'proxylessnas_mobile_cub': 'proxylessnas_mobile_cub',
    'proxylessnas_mobile14_cub': 'proxylessnas_mobile14_cub',

    'ntsnet_cub': 'ntsnet_cub',

    'fcn8sd_resnetd50b_voc': 'fcn8sd_resnetd50b_voc',
    'fcn8sd_resnetd101b_voc': 'fcn8sd_resnetd101b_voc',
    'fcn8sd_resnetd50b_coco': 'fcn8sd_resnetd50b_coco',
    'fcn8sd_resnetd101b_coco': 'fcn8sd_resnetd101b_coco',
    'fcn8sd_resnetd50b_ade20k': 'fcn8sd_resnetd50b_ade20k',
    'fcn8sd_resnetd101b_ade20k': 'fcn8sd_resnetd101b_ade20k',
    'fcn8sd_resnetd50b_cityscapes': 'fcn8sd_resnetd50b_cityscapes',
    'fcn8sd_resnetd101b_cityscapes': 'fcn8sd_resnetd101b_cityscapes',

    'pspnet_resnetd50b_voc': 'pspnet_resnetd50b_voc',
    'pspnet_resnetd101b_voc': 'pspnet_resnetd101b_voc',
    'pspnet_resnetd50b_coco': 'pspnet_resnetd50b_coco',
    'pspnet_resnetd101b_coco': 'pspnet_resnetd101b_coco',
    'pspnet_resnetd50b_ade20k': 'pspnet_resnetd50b_ade20k',
    'pspnet_resnetd101b_ade20k': 'pspnet_resnetd101b_ade20k',
    'pspnet_resnetd50b_cityscapes': 'pspnet_resnetd50b_cityscapes',
    'pspnet_resnetd101b_cityscapes': 'pspnet_resnetd101b_cityscapes',

    'deeplabv3_resnetd50b_voc': 'deeplabv3_resnetd50b_voc',
    'deeplabv3_resnetd101b_voc': 'deeplabv3_resnetd101b_voc',
    'deeplabv3_resnetd152b_voc': 'deeplabv3_resnetd152b_voc',
    'deeplabv3_resnetd50b_coco': 'deeplabv3_resnetd50b_coco',
    'deeplabv3_resnetd101b_coco': 'deeplabv3_resnetd101b_coco',
    'deeplabv3_resnetd152b_coco': 'deeplabv3_resnetd152b_coco',
    'deeplabv3_resnetd50b_ade20k': 'deeplabv3_resnetd50b_ade20k',
    'deeplabv3_resnetd101b_ade20k': 'deeplabv3_resnetd101b_ade20k',
    'deeplabv3_resnetd50b_cityscapes': 'deeplabv3_resnetd50b_cityscapes',
    'deeplabv3_resnetd101b_cityscapes': 'deeplabv3_resnetd101b_cityscapes',

    'superpointnet': 'superpointnet',
    # 'oth_superpointnet': 'oth_superpointnet',
}

for key in _models:
    #root = os.path.join("./", "pre_models")
    print(key)
    print("\n")
    try:
        file_path = get_model_file(model_name=_models[key], local_model_store_dir_path = os.path.join("./", "pre_models"))
    except:
        continue

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值