Problem in converting pre-trained mxnet to caffe

Objective:

Trying to convert the “i3d-resnet50-v1-kinetics400” pretrained mxnet model to caffe.

System used: Ubuntu 18.04, Python3

Problem:

While trying to load weights after converting the .json to caffe model, I saw that the names for layers in .json and .params files do not match. They can be viewed below.

Eg. First layer names in .json and .params are conv0_weight and first_stage.0.weight respectively.

I do not understand why this happened since the parameters and json are taken from same model.

Can anyone suggest how to handle this except checking all the layers names manually?

Steps followed:

  1. Loaded the model.
>>>from gluoncv.model_zoo import get_model
>>>from gluoncv.utils import export_block
>>>import mxnet
>>>import json

>>>model = get_model(name="i3d_resnet50_v1_kinetics400", nclass=400, pretrained=True, num_segments=1, num_crop=1)
  1. Converted the model to json.
>>>js = model.to_json()
>>>js
{
  "nodes": [
    {
      "op": "null", 
      "name": "data", 
      "inputs": []
    }, 
    {
      "op": "null", 
      "name": "conv0_weight", 
      "attrs": {
        "__dtype__": "0", 
        "__lr_mult__": "1.0", 
        "__shape__": "(64, 3, 5, 7, 7)", 
        "__storage_type__": "0", 
        "__wd_mult__": "1.0"
      }, 
      "inputs": []
    }, 
    {
      "op": "Convolution", 
      "name": "conv0_fwd", 
      "attrs": {
        "dilate": "(1, 1, 1)", 
        "kernel": "(5, 7, 7)", 
        "layout": "NCDHW", 
        "no_bias": "True", 
        "num_filter": "64", 
        "num_group": "1", 
        "pad": "(2, 3, 3)", 
        "stride": "(2, 2, 2)"
      }, 
      "inputs": [[0, 0, 0], [1, 0, 0]]
    }, 
    {
      "op": "null", 
      "name": "batchnorm0_gamma", 
      "attrs": {
        "__dtype__": "0", 
        "__init__": "ones", 
        "__lr_mult__": "1.0", 
        "__shape__": "(64,)", 
        "__storage_type__": "0", 
        "__wd_mult__": "1.0"
      }, 
      "inputs": []
    }, 
    {
      "op": "null", 
      "name": "batchnorm0_beta", 
      "attrs": {
        "__dtype__": "0", 
        "__init__": "zeros", 
        "__lr_mult__": "1.0", 
        "__shape__": "(64,)", 
        "__storage_type__": "0", 
        "__wd_mult__": "1.0"
      }, 
      "inputs": []
    }, 
    {
      "op": "null", 
      "name": "batchnorm0_running_mean", 
      "attrs": {
        "__dtype__": "0", 
        "__init__": "zeros", 
        "__lr_mult__": "1.0", 
        "__shape__": "(64,)", 
        "__storage_type__": "0", 
        "__wd_mult__": "1.0"
      }, 
      "inputs": []
    }, 
    {
      "op": "null", 
      "name": "batchnorm0_running_var", 
      "attrs": {
        "__dtype__": "0", 
        "__init__": "ones", 
        "__lr_mult__": "1.0", 
        "__shape__": "(64,)", 
        "__storage_type__": "0", 
        "__wd_mult__": "1.0"
      }, 
      "inputs": []
    }, 
    {
      "op": "BatchNorm", 
      "name": "batchnorm0_fwd", 
      "attrs": {
        "axis": "1", 
        "eps": "1e-05", 
        "fix_gamma": "False", 
        "momentum": "0.9", 
        "use_global_stats": "False"
      }, 
      "inputs": [[2, 0, 0], [3, 0, 0], [4, 0, 0], [5, 0, 1], [6, 0, 1]]
    }, 
    {
      "op": "Activation", 
      "name": "relu0_fwd", 
      "attrs": {"act_type": "relu"}, 
      "inputs": [[7, 0, 0]]
    }, 
    {
      "op": "Pooling", 
      "name": "pool0_fwd", 
      "attrs": {
        "global_pool": "False", 
        "kernel": "(1, 3, 3)", 
        "layout": "NCDHW", 
        "pad": "(0, 1, 1)", 
        "pool_type": "max", 
        "pooling_convention": "valid", 
        "stride": "(2, 2, 2)"
      }, 
      "inputs": [[8, 0, 0]]
    }, 
    {
      "op": "null", 
      "name": "layer1_0_conv0_weight", 
      "attrs": {
        "__dtype__": "0", 
        "__lr_mult__": "1.0", 
        "__shape__": "(64, 64, 3, 1, 1)", 
        "__storage_type__": "0", 
        "__wd_mult__": "1.0"
      }, 
      "inputs": []
    }, 
    {
      "op": "Convolution", 
      "name": "layer1_0_conv0_fwd", 
      "attrs": {
        "dilate": "(1, 1, 1)", 
        "kernel": "(3, 1, 1)", 
        "layout": "NCDHW", 
        "no_bias": "True", 
        "num_filter": "64", 
        "num_group": "1", 
        "pad": "(1, 0, 0)", 
        "stride": "(1, 1, 1)"
      }, 
      "inputs": [[9, 0, 0], [10, 0, 0]]
    }, 
    {
      "op": "null", 
      "name": "layer1_0_batchnorm0_gamma", 
      "attrs": {
        "__dtype__": "0", 
        "__init__": "ones", 
        "__lr_mult__": "1.0", 
        "__shape__": "(64,)", 
        "__storage_type__": "0", 
        "__wd_mult__": "1.0"
      }, 
      "inputs": []
    }, 
    {
      "op": "null", 
      "name": "layer1_0_batchnorm0_beta", 
      "attrs": {
        "__dtype__": "0", 
        "__init__": "zeros", 
        "__lr_mult__": "1.0", 
        "__shape__": "(64,)", 
        "__storage_type__": "0", 
        "__wd_mult__": "1.0"
      }, 
      "inputs": []
    }, 
    {
      "op": "null", 
      "name": "layer1_0_batchnorm0_running_mean", 
      "attrs": {
        "__dtype__": "0", 
        "__init__": "zeros", 
        "__lr_mult__": "1.0", 
        "__shape__": "(64,)", 
        "__storage_type__": "0", 
        "__wd_mult__": "1.0"
      }, 
      "inputs": []
    }, 
    {
      "op": "null", 
      "name": "layer1_0_batchnorm0_running_var", 
      "attrs": {
        "__dtype__": "0", 
        "__init__": "ones", 
        "__lr_mult__": "1.0", 
        "__shape__": "(64,)", 
        "__storage_type__": "0", 
        "__wd_mult__": "1.0"
        .
        .
        . Continued
  1. Saving weights of the model using save_parameters().
>>> model.save_parameters("params_file")
>>> import mxnet.ndarray as nd
>>> tmp = nd.load("params_file.params")
>>> tmp.keys()
dict_keys(['first_stage.0.weight', 'first_stage.1.gamma', 'first_stage.1.beta', 'first_stage.1.running_mean', 'first_stage.1.running_var', 'res_layers.0.0.bottleneck.0.weight', 'res_layers.0.0.bottleneck.1.gamma', 'res_layers.0.0.bottleneck.1.beta', 'res_layers.0.0.bottleneck.1.running_mean', 'res_layers.0.0.bottleneck.1.running_var', 'res_layers.0.0.bottleneck.3.weight', 'res_layers.0.0.bottleneck.4.gamma', 'res_layers.0.0.bottleneck.4.beta', 'res_layers.0.0.bottleneck.4.running_mean', 'res_layers.0.0.bottleneck.4.running_var', 'res_layers.0.0.bottleneck.6.weight', 'res_layers.0.0.bottleneck.7.gamma', 'res_layers.0.0.bottleneck.7.beta', 'res_layers.0.0.bottleneck.7.running_mean', 'res_layers.0.0.bottleneck.7.running_var', 'res_layers.0.0.conv1.weight', 'res_layers.0.0.conv2.weight', 'res_layers.0.0.bn1.gamma', 'res_layers.0.0.bn1.beta', 'res_layers.0.0.bn1.running_mean', 'res_layers.0.0.bn1.running_var', 'res_layers.0.0.bn2.gamma', 'res_layers.0.0.bn2.beta', 'res_layers.0.0.bn2.running_mean', 'res_layers.0.0.bn2.running_var', 'res_layers.0.0.conv3.weight', 'res_layers.0.0.bn3.gamma', 'res_layers.0.0.bn3.beta', 'res_layers.0.0.bn3.running_mean', 'res_layers.0.0.bn3.running_var', 'res_layers.0.0.downsample.0.weight', 'res_layers.0.0.downsample.1.gamma', 'res_layers.0.0.downsample.1.beta', 'res_layers.0.0.downsample.1.running_mean', 'res_layers.0.0.downsample.1.running_var', 'res_layers.0.1.bottleneck.0.weight', 'res_layers.0.1.bottleneck.1.gamma', 'res_layers.0.1.bottleneck.1.beta', 'res_layers.0.1.bottleneck.1.running_mean', 'res_layers.0.1.bottleneck.1.running_var', 'res_layers.0.1.bottleneck.3.weight', 'res_layers.0.1.bottleneck.4.gamma', 'res_layers.0.1.bottleneck.4.beta', 'res_layers.0.1.bottleneck.4.running_mean', 'res_layers.0.1.bottleneck.4.running_var', 'res_layers.0.1.bottleneck.6.weight', 'res_layers.0.1.bottleneck.7.gamma', 'res_layers.0.1.bottleneck.7.beta', 'res_layers.0.1.bottleneck.7.running_mean', 'res_layers.0.1.bottleneck.7.running_var', 'res_layers.0.1.conv1.weight', 'res_layers.0.1.conv2.weight', 'res_layers.0.1.bn1.gamma', 'res_layers.0.1.bn1.beta', 'res_layers.0.1.bn1.running_mean', 'res_layers.0.1.bn1.running_var', 'res_layers.0.1.bn2.gamma', 'res_layers.0.1.bn2.beta', 'res_layers.0.1.bn2.running_mean', 'res_layers.0.1.bn2.running_var', 'res_layers.0.1.conv3.weight', 'res_layers.0.1.bn3.gamma', 'res_layers.0.1.bn3.beta', 'res_layers.0.1.bn3.running_mean', 'res_layers.0.1.bn3.running_var', 'res_layers.0.2.bottleneck.0.weight', 'res_layers.0.2.bottleneck.1.gamma', 'res_layers.0.2.bottleneck.1.beta', 'res_layers.0.2.bottleneck.1.running_mean', 'res_layers.0.2.bottleneck.1.running_var', 'res_layers.0.2.bottleneck.3.weight', 'res_layers.0.2.bottleneck.4.gamma', 'res_layers.0.2.bottleneck.4.beta', 'res_layers.0.2.bottleneck.4.running_mean', 'res_layers.0.2.bottleneck.4.running_var', 'res_layers.0.2.bottleneck.6.weight', 'res_layers.0.2.bottleneck.7.gamma', 'res_layers.0.2.bottleneck.7.beta', 'res_layers.0.2.bottleneck.7.running_mean', 'res_layers.0.2.bottleneck.7.running_var', 'res_layers.0.2.conv1.weight', 'res_layers.0.2.conv2.weight', 'res_layers.0.2.bn1.gamma', 'res_layers.0.2.bn1.beta', 'res_layers.0.2.bn1.running_mean', 'res_layers.0.2.bn1.running_var', 'res_layers.0.2.bn2.gamma', 'res_layers.0.2.bn2.beta', 'res_layers.0.2.bn2.running_mean', 'res_layers.0.2.bn2.running_var', 'res_layers.0.2.conv3.weight', 'res_layers.0.2.bn3.gamma', 'res_layers.0.2.bn3.beta', 'res_layers.0.2.bn3.running_mean', 'res_layers.0.2.bn3.running_var', 'res_layers.1.0.bottleneck.0.weight', 'res_layers.1.0.bottleneck.1.gamma', 'res_layers.1.0.bottleneck.1.beta', 'res_layers.1.0.bottleneck.1.running_mean', 'res_layers.1.0.bottleneck.1.running_var', 'res_layers.1.0.bottleneck.3.weight', 'res_layers.1.0.bottleneck.4.gamma', 'res_layers.1.0.bottleneck.4.beta', 'res_layers.1.0.bottleneck.4.running_mean', 'res_layers.1.0.bottleneck.4.running_var', 'res_layers.1.0.bottleneck.6.weight', 'res_layers.1.0.bottleneck.7.gamma', 'res_layers.1.0.bottleneck.7.beta', 'res_layers.1.0.bottleneck.7.running_mean', 'res_layers.1.0.bottleneck.7.running_var', 'res_layers.1.0.conv1.weight', 'res_layers.1.0.conv2.weight', 'res_layers.1.0.bn1.gamma', 'res_layers.1.0.bn1.beta', 'res_layers.1.0.bn1.running_mean', 'res_layers.1.0.bn1.running_var', 'res_layers.1.0.bn2.gamma', 'res_layers.1.0.bn2.beta', 'res_layers.1.0.bn2.running_mean', 'res_layers.1.0.bn2.running_var', 'res_layers.1.0.conv3.weight', 'res_layers.1.0.bn3.gamma', 'res_layers.1.0.bn3.beta', 'res_layers.1.0.bn3.running_mean', 'res_layers.1.0.bn3.running_var', 'res_layers.1.0.downsample.0.weight', 'res_layers.1.0.downsample.1.gamma', 'res_layers.1.0.downsample.1.beta', 'res_layers.1.0.downsample.1.running_mean', 'res_layers.1.0.downsample.1.running_var', 'res_layers.1.1.bottleneck.0.weight', 'res_layers.1.1.bottleneck.1.gamma', 'res_layers.1.1.bottleneck.1.beta', 'res_layers.1.1.bottleneck.1.running_mean', 'res_layers.1.1.bottleneck.1.running_var', 'res_layers.1.1.bottleneck.3.weight', 'res_layers.1.1.bottleneck.4.gamma', 'res_layers.1.1.bottleneck.4.beta', 'res_layers.1.1.bottleneck.4.running_mean', 'res_layers.1.1.bottleneck.4.running_var', 'res_layers.1.1.bottleneck.6.weight', 'res_layers.1.1.bottleneck.7.gamma', 'res_layers.1.1.bottleneck.7.beta', 'res_layers.1.1.bottleneck.7.running_mean', 'res_layers.1.1.bottleneck.7.running_var', 'res_layers.1.1.conv1.weight', 'res_layers.1.1.conv2.weight', 'res_layers.1.1.bn1.gamma', 'res_layers.1.1.bn1.beta', 'res_layers.1.1.bn1.running_mean', 'res_layers.1.1.bn1.running_var', 'res_layers.1.1.bn2.gamma', 'res_layers.1.1.bn2.beta', 'res_layers.1.1.bn2.running_mean', 'res_layers.1.1.bn2.running_var', 'res_layers.1.1.conv3.weight', 'res_layers.1.1.bn3.gamma', 'res_layers.1.1.bn3.beta', 'res_layers.1.1.bn3.running_mean', 'res_layers.1.1.bn3.running_var', 'res_layers.1.2.bottleneck.0.weight', 'res_layers.1.2.bottleneck.1.gamma', 'res_layers.1.2.bottleneck.1.beta', 'res_layers.1.2.bottleneck.1.running_mean', 'res_layers.1.2.bottleneck.1.running_var', 'res_layers.1.2.bottleneck.3.weight', 'res_layers.1.2.bottleneck.4.gamma', 'res_layers.1.2.bottleneck.4.beta', 'res_layers.1.2.bottleneck.4.running_mean', 'res_layers.1.2.bottleneck.4.running_var', 'res_layers.1.2.bottleneck.6.weight', 'res_layers.1.2.bottleneck.7.gamma', 'res_layers.1.2.bottleneck.7.beta', 'res_layers.1.2.bottleneck.7.running_mean', 'res_layers.1.2.bottleneck.7.running_var', 'res_layers.1.2.conv1.weight', 'res_layers.1.2.conv2.weight', 'res_layers.1.2.bn1.gamma', 'res_layers.1.2.bn1.beta', 'res_layers.1.2.bn1.running_mean', 'res_layers.1.2.bn1.running_var', 'res_layers.1.2.bn2.gamma', 'res_layers.1.2.bn2.beta', 'res_layers.1.2.bn2.running_mean', 'res_layers.1.2.bn2.running_var', 'res_layers.1.2.conv3.weight', 'res_layers.1.2.bn3.gamma', 'res_layers.1.2.bn3.beta', 'res_layers.1.2.bn3.running_mean', 'res_layers.1.2.bn3.running_var', 'res_layers.1.3.bottleneck.0.weight', 'res_layers.1.3.bottleneck.1.gamma', 'res_layers.1.3.bottleneck.1.beta', 'res_layers.1.3.bottleneck.1.running_mean', 'res_layers.1.3.bottleneck.1.running_var', 'res_layers.1.3.bottleneck.3.weight', 'res_layers.1.3.bottleneck.4.gamma', 'res_layers.1.3.bottleneck.4.beta', 'res_layers.1.3.bottleneck.4.running_mean', 'res_layers.1.3.bottleneck.4.running_var', 'res_layers.1.3.bottleneck.6.weight', 'res_layers.1.3.bottleneck.7.gamma', 'res_layers.1.3.bottleneck.7.beta', 'res_layers.1.3.bottleneck.7.running_mean', 'res_layers.1.3.bottleneck.7.running_var', 'res_layers.1.3.conv1.weight', 'res_layers.1.3.conv2.weight', 'res_layers.1.3.bn1.gamma', 'res_layers.1.3.bn1.beta', 'res_layers.1.3.bn1.running_mean', 'res_layers.1.3.bn1.running_var', 'res_layers.1.3.bn2.gamma', 'res_layers.1.3.bn2.beta', 'res_layers.1.3.bn2.running_mean', 'res_layers.1.3.bn2.running_var', 'res_layers.1.3.conv3.weight', 'res_layers.1.3.bn3.gamma', 'res_layers.1.3.bn3.beta', 'res_layers.1.3.bn3.running_mean', 'res_layers.1.3.bn3.running_var', 'res_layers.2.0.bottleneck.0.weight', 'res_layers.2.0.bottleneck.1.gamma', 'res_layers.2.0.bottleneck.1.beta', 'res_layers.2.0.bottleneck.1.running_mean', 'res_layers.2.0.bottleneck.1.running_var', 'res_layers.2.0.bottleneck.3.weight', 'res_layers.2.0.bottleneck.4.gamma', 'res_layers.2.0.bottleneck.4.beta', 'res_layers.2.0.bottleneck.4.running_mean', 'res_layers.2.0.bottleneck.4.running_var', 'res_layers.2.0.bottleneck.6.weight', 'res_layers.2.0.bottleneck.7.gamma', 'res_layers.2.0.bottleneck.7.beta', 'res_layers.2.0.bottleneck.7.running_mean', 'res_layers.2.0.bottleneck.7.running_var', 'res_layers.2.0.conv1.weight', 'res_layers.2.0.conv2.weight', 'res_layers.2.0.bn1.gamma', 'res_layers.2.0.bn1.beta', 'res_layers.2.0.bn1.running_mean', 'res_layers.2.0.bn1.running_var', 'res_layers.2.0.bn2.gamma', 'res_layers.2.0.bn2.beta', 'res_layers.2.0.bn2.running_mean', 'res_layers.2.0.bn2.running_var', 'res_layers.2.0.conv3.weight', 'res_layers.2.0.bn3.gamma', 'res_layers.2.0.bn3.beta', 'res_layers.2.0.bn3.running_mean', 'res_layers.2.0.bn3.running_var', 'res_layers.2.0.downsample.0.weight', 'res_layers.2.0.downsample.1.gamma', 'res_layers.2.0.downsample.1.beta', 'res_layers.2.0.downsample.1.running_mean', 'res_layers.2.0.downsample.1.running_var', 'res_layers.2.1.bottleneck.0.weight', 'res_layers.2.1.bottleneck.1.gamma', 'res_layers.2.1.bottleneck.1.beta', 'res_layers.2.1.bottleneck.1.running_mean', 'res_layers.2.1.bottleneck.1.running_var', 'res_layers.2.1.bottleneck.3.weight', 'res_layers.2.1.bottleneck.4.gamma', 'res_layers.2.1.bottleneck.4.beta', 'res_layers.2.1.bottleneck.4.running_mean', 'res_layers.2.1.bottleneck.4.running_var', 'res_layers.2.1.bottleneck.6.weight', 'res_layers.2.1.bottleneck.7.gamma', 'res_layers.2.1.bottleneck.7.beta', 'res_layers.2.1.bottleneck.7.running_mean', 'res_layers.2.1.bottleneck.7.running_var', 'res_layers.2.1.conv1.weight', 'res_layers.2.1.conv2.weight', 'res_layers.2.1.bn1.gamma', 'res_layers.2.1.bn1.beta', 'res_layers.2.1.bn1.running_mean', 'res_layers.2.1.bn1.running_var', 'res_layers.2.1.bn2.gamma', 'res_layers.2.1.bn2.beta', 'res_layers.2.1.bn2.running_mean', 'res_layers.2.1.bn2.running_var', 'res_layers.2.1.conv3.weight', 'res_layers.2.1.bn3.gamma', 'res_layers.2.1.bn3.beta', 'res_layers.2.1.bn3.running_mean', 'res_layers.2.1.bn3.running_var', 'res_layers.2.2.bottleneck.0.weight', 'res_layers.2.2.bottleneck.1.gamma', 'res_layers.2.2.bottleneck.1.beta', 'res_layers.2.2.bottleneck.1.running_mean', 'res_layers.2.2.bottleneck.1.running_var', 'res_layers.2.2.bottleneck.3.weight', 'res_layers.2.2.bottleneck.4.gamma', 'res_layers.2.2.bottleneck.4.beta', 'res_layers.2.2.bottleneck.4.running_mean', 'res_layers.2.2.bottleneck.4.running_var', 'res_layers.2.2.bottleneck.6.weight', 'res_layers.2.2.bottleneck.7.gamma', 'res_layers.2.2.bottleneck.7.beta', 'res_layers.2.2.bottleneck.7.running_mean', 'res_layers.2.2.bottleneck.7.running_var', 'res_layers.2.2.conv1.weight', 'res_layers.2.2.conv2.weight', 'res_layers.2.2.bn1.gamma', 'res_layers.2.2.bn1.beta', 'res_layers.2.2.bn1.running_mean', 'res_layers.2.2.bn1.running_var', 'res_layers.2.2.bn2.gamma', 'res_layers.2.2.bn2.beta', 'res_layers.2.2.bn2.running_mean', 'res_layers.2.2.bn2.running_var', 'res_layers.2.2.conv3.weight', 'res_layers.2.2.bn3.gamma', 'res_layers.2.2.bn3.beta', 'res_layers.2.2.bn3.running_mean', 'res_layers.2.2.bn3.running_var', 'res_layers.2.3.bottleneck.0.weight', 'res_layers.2.3.bottleneck.1.gamma', 'res_layers.2.3.bottleneck.1.beta', 'res_layers.2.3.bottleneck.1.running_mean', 'res_layers.2.3.bottleneck.1.running_var', 'res_layers.2.3.bottleneck.3.weight', 'res_layers.2.3.bottleneck.4.gamma', 'res_layers.2.3.bottleneck.4.beta', 'res_layers.2.3.bottleneck.4.running_mean', 'res_layers.2.3.bottleneck.4.running_var', 'res_layers.2.3.bottleneck.6.weight', 'res_layers.2.3.bottleneck.7.gamma', 'res_layers.2.3.bottleneck.7.beta', 'res_layers.2.3.bottleneck.7.running_mean', 'res_layers.2.3.bottleneck.7.running_var', 'res_layers.2.3.conv1.weight', 'res_layers.2.3.conv2.weight', 'res_layers.2.3.bn1.gamma', 'res_layers.2.3.bn1.beta', 'res_layers.2.3.bn1.running_mean', 'res_layers.2.3.bn1.running_var', 'res_layers.2.3.bn2.gamma', 'res_layers.2.3.bn2.beta', 'res_layers.2.3.bn2.running_mean', 'res_layers.2.3.bn2.running_var', 'res_layers.2.3.conv3.weight', 'res_layers.2.3.bn3.gamma', 'res_layers.2.3.bn3.beta', 'res_layers.2.3.bn3.running_mean', 'res_layers.2.3.bn3.running_var', 'res_layers.2.4.bottleneck.0.weight', 'res_layers.2.4.bottleneck.1.gamma', 'res_layers.2.4.bottleneck.1.beta', 'res_layers.2.4.bottleneck.1.running_mean', 'res_layers.2.4.bottleneck.1.running_var', 'res_layers.2.4.bottleneck.3.weight', 'res_layers.2.4.bottleneck.4.gamma', 'res_layers.2.4.bottleneck.4.beta', 'res_layers.2.4.bottleneck.4.running_mean', 'res_layers.2.4.bottleneck.4.running_var', 'res_layers.2.4.bottleneck.6.weight', 'res_layers.2.4.bottleneck.7.gamma', 'res_layers.2.4.bottleneck.7.beta', 'res_layers.2.4.bottleneck.7.running_mean', 'res_layers.2.4.bottleneck.7.running_var', 'res_layers.2.4.conv1.weight', 'res_layers.2.4.conv2.weight', 'res_layers.2.4.bn1.gamma', 'res_layers.2.4.bn1.beta', 'res_layers.2.4.bn1.running_mean', 'res_layers.2.4.bn1.running_var', 'res_layers.2.4.bn2.gamma', 'res_layers.2.4.bn2.beta', 'res_layers.2.4.bn2.running_mean', 'res_layers.2.4.bn2.running_var', 'res_layers.2.4.conv3.weight', 'res_layers.2.4.bn3.gamma', 'res_layers.2.4.bn3.beta', 'res_layers.2.4.bn3.running_mean', 'res_layers.2.4.bn3.running_var', 'res_layers.2.5.bottleneck.0.weight', 'res_layers.2.5.bottleneck.1.gamma', 'res_layers.2.5.bottleneck.1.beta', 'res_layers.2.5.bottleneck.1.running_mean', 'res_layers.2.5.bottleneck.1.running_var', 'res_layers.2.5.bottleneck.3.weight', 'res_layers.2.5.bottleneck.4.gamma', 'res_layers.2.5.bottleneck.4.beta', 'res_layers.2.5.bottleneck.4.running_mean', 'res_layers.2.5.bottleneck.4.running_var', 'res_layers.2.5.bottleneck.6.weight', 'res_layers.2.5.bottleneck.7.gamma', 'res_layers.2.5.bottleneck.7.beta', 'res_layers.2.5.bottleneck.7.running_mean', 'res_layers.2.5.bottleneck.7.running_var', 'res_layers.2.5.conv1.weight', 'res_layers.2.5.conv2.weight', 'res_layers.2.5.bn1.gamma', 'res_layers.2.5.bn1.beta', 'res_layers.2.5.bn1.running_mean', 'res_layers.2.5.bn1.running_var', 'res_layers.2.5.bn2.gamma', 'res_layers.2.5.bn2.beta', 'res_layers.2.5.bn2.running_mean', 'res_layers.2.5.bn2.running_var', 'res_layers.2.5.conv3.weight', 'res_layers.2.5.bn3.gamma', 'res_layers.2.5.bn3.beta', 'res_layers.2.5.bn3.running_mean', 'res_layers.2.5.bn3.running_var', 'res_layers.3.0.bottleneck.0.weight', 'res_layers.3.0.bottleneck.1.gamma', 'res_layers.3.0.bottleneck.1.beta', 'res_layers.3.0.bottleneck.1.running_mean', 'res_layers.3.0.bottleneck.1.running_var', 'res_layers.3.0.bottleneck.3.weight', 'res_layers.3.0.bottleneck.4.gamma', 'res_layers.3.0.bottleneck.4.beta', 'res_layers.3.0.bottleneck.4.running_mean', 'res_layers.3.0.bottleneck.4.running_var', 'res_layers.3.0.bottleneck.6.weight', 'res_layers.3.0.bottleneck.7.gamma', 'res_layers.3.0.bottleneck.7.beta', 'res_layers.3.0.bottleneck.7.running_mean', 'res_layers.3.0.bottleneck.7.running_var', 'res_layers.3.0.conv1.weight', 'res_layers.3.0.conv2.weight', 'res_layers.3.0.bn1.gamma', 'res_layers.3.0.bn1.beta', 'res_layers.3.0.bn1.running_mean', 'res_layers.3.0.bn1.running_var', 'res_layers.3.0.bn2.gamma', 'res_layers.3.0.bn2.beta', 'res_layers.3.0.bn2.running_mean', 'res_layers.3.0.bn2.running_var', 'res_layers.3.0.conv3.weight', 'res_layers.3.0.bn3.gamma', 'res_layers.3.0.bn3.beta', 'res_layers.3.0.bn3.running_mean', 'res_layers.3.0.bn3.running_var', 'res_layers.3.0.downsample.0.weight', 'res_layers.3.0.downsample.1.gamma', 'res_layers.3.0.downsample.1.beta', 'res_layers.3.0.downsample.1.running_mean', 'res_layers.3.0.downsample.1.running_var', 'res_layers.3.1.bottleneck.0.weight', 'res_layers.3.1.bottleneck.1.gamma', 'res_layers.3.1.bottleneck.1.beta', 'res_layers.3.1.bottleneck.1.running_mean', 'res_layers.3.1.bottleneck.1.running_var', 'res_layers.3.1.bottleneck.3.weight', 'res_layers.3.1.bottleneck.4.gamma', 'res_layers.3.1.bottleneck.4.beta', 'res_layers.3.1.bottleneck.4.running_mean', 'res_layers.3.1.bottleneck.4.running_var', 'res_layers.3.1.bottleneck.6.weight', 'res_layers.3.1.bottleneck.7.gamma', 'res_layers.3.1.bottleneck.7.beta', 'res_layers.3.1.bottleneck.7.running_mean', 'res_layers.3.1.bottleneck.7.running_var', 'res_layers.3.1.conv1.weight', 'res_layers.3.1.conv2.weight', 'res_layers.3.1.bn1.gamma', 'res_layers.3.1.bn1.beta', 'res_layers.3.1.bn1.running_mean', 'res_layers.3.1.bn1.running_var', 'res_layers.3.1.bn2.gamma', 'res_layers.3.1.bn2.beta', 'res_layers.3.1.bn2.running_mean', 'res_layers.3.1.bn2.running_var', 'res_layers.3.1.conv3.weight', 'res_layers.3.1.bn3.gamma', 'res_layers.3.1.bn3.beta', 'res_layers.3.1.bn3.running_mean', 'res_layers.3.1.bn3.running_var', 'res_layers.3.2.bottleneck.0.weight', 'res_layers.3.2.bottleneck.1.gamma', 'res_layers.3.2.bottleneck.1.beta', 'res_layers.3.2.bottleneck.1.running_mean', 'res_layers.3.2.bottleneck.1.running_var', 'res_layers.3.2.bottleneck.3.weight', 'res_layers.3.2.bottleneck.4.gamma', 'res_layers.3.2.bottleneck.4.beta', 'res_layers.3.2.bottleneck.4.running_mean', 'res_layers.3.2.bottleneck.4.running_var', 'res_layers.3.2.bottleneck.6.weight', 'res_layers.3.2.bottleneck.7.gamma', 'res_layers.3.2.bottleneck.7.beta', 'res_layers.3.2.bottleneck.7.running_mean', 'res_layers.3.2.bottleneck.7.running_var', 'res_layers.3.2.conv1.weight', 'res_layers.3.2.conv2.weight', 'res_layers.3.2.bn1.gamma', 'res_layers.3.2.bn1.beta', 'res_layers.3.2.bn1.running_mean', 'res_layers.3.2.bn1.running_var', 'res_layers.3.2.bn2.gamma', 'res_layers.3.2.bn2.beta', 'res_layers.3.2.bn2.running_mean', 'res_layers.3.2.bn2.running_var', 'res_layers.3.2.conv3.weight', 'res_layers.3.2.bn3.gamma', 'res_layers.3.2.bn3.beta', 'res_layers.3.2.bn3.running_mean', 'res_layers.3.2.bn3.running_var', 'head.1.weight', 'head.1.bias', 'fc.weight', 'fc.bias'])
>>>