[
  {
    "name": "nn.Linear",
    "schema": {
      "category": "Layer"
    }
  },
  {
    "name": "nn.LinearNoBias",
    "schema": {
      "category": "Layer"
    }
  },
  {
    "name": "nn.SpatialConvolution",
    "schema": {
      "category": "Layer",
      "attributes": [
        { "name": "benchmarked", "visible": false },
        { "name": "input_offset", "visible": false },
        { "name": "output_offset", "visible": false },
        { "name": "weight_offset", "visible": false },
        { "name": "groups", "default": 1 },
        { "name": "d", "default": [ 1, 1 ] },
        { "name": "pad", "default": [ 0, 0 ] },
        { "name": "padding", "default": 0 },
        { "name": "nInputPlane", "visible": false },
        { "name": "nOutputPlane", "visible": false },
        { "name": "convDescData", "visible": false },
        { "name": "autotunerHash", "visible": false },
        { "name": "fmode", "visible": false },
        { "name": "bwmode", "visible": false },
        { "name": "bdmode", "visible": false }
      ]
    }
  },
  {
    "name": "cudnn.SpatialConvolution",
    "schema": {
      "category": "Layer",
      "attributes": [
        { "name": "benchmarked", "visible": false },
        { "name": "input_offset", "visible": false },
        { "name": "output_offset", "visible": false },
        { "name": "weight_offset", "visible": false },
        { "name": "groups", "default": 1 },
        { "name": "d", "default": [ 1, 1 ] },
        { "name": "pad", "default": [ 0, 0 ] },
        { "name": "padding", "default": 0 },
        { "name": "nInputPlane", "visible": false },
        { "name": "nOutputPlane", "visible": false },
        { "name": "convDescData", "visible": false },
        { "name": "autotunerHash", "visible": false },
        { "name": "fmode", "visible": false },
        { "name": "bwmode", "visible": false },
        { "name": "bdmode", "visible": false }
      ]
    }
  },
  {
    "name": "nn.VolumetricConvolution",
    "schema": {
      "category": "Layer"
    }
  },
  {
    "name": "nn.SpatialConvolutionMM",
    "schema": {
      "category": "Layer",
      "attributes": [
        { "name": "groups", "default": 1 },
        { "name": "d", "default": [ 1, 1 ] },
        { "name": "pad", "default": [ 0, 0 ] },
        { "name": "padding", "default": 0 },
        { "name": "nInputPlane", "visible": false },
        { "name": "nOutputPlane", "visible": false }
      ]
    }
  },
  {
    "name": "nn.SpatialFullConvolution",
    "schema": {
      "category": "Layer",
      "attributes": [
        { "name": "groups", "default": 1 },
        { "name": "d", "default": [ 1, 1 ] },
        { "name": "dilation", "default": [ 1, 1 ] },
        { "name": "pad", "default": [ 0, 0 ] },
        { "name": "convDescData", "visible": false },
        { "name": "autotunerHash", "visible": false },
        { "name": "nInputPlane", "visible": false },
        { "name": "nOutputPlane", "visible": false },
        { "name": "input_offset", "visible": false },
        { "name": "output_offset", "visible": false },
        { "name": "weight_offset", "visible": false }
      ]
    }
  },
  {
    "name": "cudnn.SpatialFullConvolution",
    "schema": {
      "category": "Layer",
      "attributes": [
        { "name": "groups", "default": 1 },
        { "name": "d", "default": [ 1, 1 ] },
        { "name": "dilation", "default": [ 1, 1 ] },
        { "name": "pad", "default": [ 0, 0 ] },
        { "name": "convDescData", "visible": false },
        { "name": "autotunerHash", "visible": false },
        { "name": "nInputPlane", "visible": false },
        { "name": "nOutputPlane", "visible": false },
        { "name": "input_offset", "visible": false },
        { "name": "output_offset", "visible": false },
        { "name": "weight_offset", "visible": false }
      ]
    }
  },
  {
    "name": "nn.SpatialDilatedConvolution",
    "schema": {
      "category": "Layer",
      "attributes": [
        { "name": "d", "default": [ 1, 1 ] },
        { "name": "dilation", "default": [ 1, 1 ] },
        { "name": "pad", "default": [ 0, 0 ] },
        { "name": "nInputPlane", "visible": false },
        { "name": "nOutputPlane", "visible": false }
      ]
    }
  },
  {
    "name": "nn.SpatialSubtractiveNormalization",
    "schema": {
      "category": "Normalization"
    }
  },
  {
    "name": "nn.InstanceNormalization",
    "schema": {
      "category": "Normalization",
      "attributes": [
        { "name": "affine", "default": true },
        { "name": "nOutput", "visible": false },
        { "name": "prev_batch_size", "visible": false },
        { "name": "eps", "default": 0.00001 },
        { "name": "momentum", "default": 0.1 }
      ]
    }
  },
  {
    "name": "nn.BatchNormalization",
    "schema": {
      "category": "Normalization",
      "attributes": [
        { "name": "affine", "default": true },
        { "name": "momentum", "default": 0.1 },
        { "name": "eps", "default": 0.00001 }
      ]
    }
  },
  {
    "name": "cudnn.BatchNormalization",
    "schema": {
      "category": "Normalization",
      "attributes": [
        { "name": "affine", "default": true },
        { "name": "momentum", "default": 0.1 },
        { "name": "eps", "default": 0.00001 }
      ]
    }
  },
  {
    "name": "nn.SpatialBatchNormalization",
    "schema": {
      "category": "Normalization",
      "attributes": [
        { "name": "affine", "default": true },
        { "name": "momentum", "default": 0.1 },
        { "name": "eps", "default": 0.00001 },
        { "name": "mode", "default": "CUDNN_BATCHNORM_SPATIAL" },
        { "name": "nDim", "default": 4 },
        { "name": "__shareGradInputKey", "visible": false }
      ]
    }
  },
  {
    "name": "cudnn.SpatialBatchNormalization",
    "schema": {
      "category": "Normalization",
      "attributes": [
        { "name": "affine", "default": true },
        { "name": "momentum", "default": 0.1 },
        { "name": "eps", "default": 0.00001 },
        { "name": "mode", "default": "CUDNN_BATCHNORM_SPATIAL" },
        { "name": "nDim", "default": 4 },
        { "name": "__shareGradInputKey", "visible": false }
      ]
    }
  },
  {
    "name": "nn.VolumetricBatchNormalization",
    "schema": {
      "category": "Normalization",
      "attributes": [
        { "name": "affine", "default": true },
        { "name": "momentum", "default": 0.1 },
        { "name": "eps", "default": 0.00001 }
      ]
    }
  },
  {
    "name": "nn.SpatialAveragePooling",
    "schema": {
      "category": "Pool",
      "attributes": [ 
        { "name": "ceil_mode", "default": false },
        { "name": "mode", "default": "CUDNN_POOLING_AVERAGE_COUNT_INCLUDE_PADDING" },
        { "name": "d", "default": [ 1, 1 ] },
        { "name": "pad", "default": [ 0, 0 ] },
        { "name": "count_include_pad", "visible": false }
      ]
    }
  },
  {
    "name": "cudnn.SpatialAveragePooling",
    "schema": {
      "category": "Pool",
      "attributes": [ 
        { "name": "ceil_mode", "default": false },
        { "name": "mode", "default": "CUDNN_POOLING_AVERAGE_COUNT_INCLUDE_PADDING" },
        { "name": "d", "default": [ 1, 1 ] },
        { "name": "pad", "default": [ 0, 0 ] },
        { "name": "count_include_pad", "visible": false }
      ]
    }
  },
  {
    "name": "nn.VolumetricAveragePooling",
    "schema": {
      "category": "Pool"
    }
  },
  {
    "name": "nn.SpatialMaxPooling",
    "schema": {
      "category": "Pool",
      "attributes": [ 
        { "name": "ceil_mode", "default": false },
        { "name": "mode", "default": "CUDNN_POOLING_MAX" },
        { "name": "pad", "default": [ 0, 0 ] },
        { "name": "iheight", "visible": false },
        { "name": "iwidth", "visible": false }
      ]
    }
  },
  {
    "name": "cudnn.SpatialMaxPooling",
    "schema": {
      "category": "Pool",
      "attributes": [ 
        { "name": "ceil_mode", "default": false },
        { "name": "mode", "default": "CUDNN_POOLING_MAX" },
        { "name": "pad", "default": [ 0, 0 ] },
        { "name": "iheight", "visible": false },
        { "name": "iwidth", "visible": false }
      ]
    }
  },
  {
    "name": "inn.SpatialMaxPooling",
    "schema": {
      "category": "Pool",
      "attributes": [ 
        { "name": "ceil_mode", "default": false },
        { "name": "mode", "default": "CUDNN_POOLING_MAX" },
        { "name": "pad", "default": [ 0, 0 ] },
        { "name": "iheight", "visible": false },
        { "name": "iwidth", "visible": false }
      ]
    }
  },
  {
    "name": "nn.VolumetricMaxPooling",
    "schema": {
      "category": "Pool",
      "attributes": [ 
        { "name": "ceil_mode", "default": false }
      ]
    }
  },
  {
    "name": "nn.SpatialFractionalMaxPooling",
    "schema": {
      "category": "Pool"
    }
  },
  {
    "name": "nn.SpatialZeroPadding",
    "schema": {
      "category": "Tensor",
      "attributes": [ 
      ]
    }
  },
  {
    "name": "nn.SpatialReflectionPadding",
    "schema": {
      "category": "Tensor",
      "attributes": [ 
      ]
    }
  },
  {
    "name": "nn.SpatialReplicationPadding",
    "schema": {
      "category": "Tensor",
      "attributes": [ 
      ]
    }
  },
  {
    "name": "nn.Concat",
    "schema": {
      "category": "Tensor",
      "attributes": [
        { "name": "outputSize", "visible": false }
      ]
    }
  },
  {
    "name": "nn.PReLU",
    "schema": {
      "category": "Activation"
    }
  },
  {
    "name": "nn.ReLU",
    "schema": {
      "category": "Activation",
      "attributes": [
        { "name": "threshold", "default": 0 },
        { "name": "val", "default": 0 },
        { "name": "inplace", "default": false, "visible": false },
        { "name": "mode", "default": "CUDNN_ACTIVATION_RELU" },
        { "name": "nElem", "visible": false }
      ]
    }
  },
  {
    "name": "cudnn.ReLU",
    "schema": {
      "category": "Activation",
      "attributes": [
        { "name": "threshold", "default": 0 },
        { "name": "val", "default": 0 },
        { "name": "inplace", "default": false, "visible": false },
        { "name": "mode", "default": "CUDNN_ACTIVATION_RELU" },
        { "name": "nElem", "visible": false }
      ]
    }
  },
  {
    "name": "nn.SoftMax",
    "schema": {
      "category": "Activation"
    }
  },
  {
    "name": "nn.LogSoftMax",
    "schema": {
      "category": "Activation"
    }
  },
  {
    "name": "cudnn.LogSoftMax",
    "schema": {
      "category": "Activation"
    }
  },
  {
    "name": "nn.Tanh",
    "schema": {
      "category": "Activation",
      "attributes": [
        { "name": "mode", "default": "CUDNN_ACTIVATION_TANH" },
        { "name": "nElem", "visible": false }
      ]
    }
  },
  {
    "name": "nn.LeakyReLU",
    "schema": {
      "category": "Activation",
      "attributes": [
        { "name": "negval", "default": 0.01, "visible": false },
        { "name": "inplace", "default": false, "visible": false }
      ]
    }
  },
  {
    "name": "nn.Sigmoid",
    "schema": {
      "category": "Activation",
      "attributes": [
        { "name": "mode", "default": "CUDNN_ACTIVATION_SIGMOID" },
        { "name": "nElem", "visible": false }
      ]
    }
  },
  {
    "name": "nn.Reshape",
    "schema": {
      "category": "Shape",
      "attributes": [
        { "name": "nelement", "visible": false }
      ]
    }
  },
  {
    "name": "nn.Dropout",
    "schema": {
      "category": "Dropout",
      "attributes": [
        { "name": "v2", "visible": false }
      ]
    }
  },
  {
    "name": "nn.SpatialDropout",
    "schema": {
      "category": "Dropout"
    }
  },
  {
    "name": "nn.Normalize",
    "schema": {
      "category": "Normalization",
      "attributes": [
      ]
    }
  },
  {
    "name": "nn.Normalize2",
    "schema": {
      "category": "Normalization",
      "attributes": [
      ]
    }
  },
  {
    "name": "nn.SpatialCrossMapLRN",
    "schema": {
      "category": "Normalization",
      "attributes": [
      ]
    }
  },
  {
    "name": "nn.Mean",
    "schema": {
      "attributes": [
        { "name": "squeeze", "default": true },
        { "name": "sizeAverage", "default": false },
        { "name": "dimension", "default": 1 },
        { "name": "nInputDims", "visible": false }
      ]
    }
  },
  {
    "name": "nn.MulConstant",
    "schema": {
      "attributes": [
        { "name": "inplace", "default": false, "visible": false }
      ]
    }
  },
  {
    "name": "nn.Identity",
    "schema": {
    }
  },
  {
    "name": "nn.ConcatTable",
    "schema": {
    }
  },
  {
    "name": "nn.CAddTable",
    "schema": {
    }
  },
  {
    "name": "nn.ScaleTable",
    "schema": {
    }
  },
  {
    "name": "nn.SelectTable",
    "schema": {
    }
  },
  {
    "name": "w2nn.ScaleTable",
    "schema": {
    }
  },
  {
    "name": "nn.SplitTable",
    "schema": {
    }
  },
  {
    "name": "nn.FlattenTable",
    "schema": {
    }
  },
  {
    "name": "nn.View",
    "schema": {
    }
  },
  {
    "name": "nn.Sequencer",
    "schema": {
    }
  },
  {
    "name": "nn.TotalVariation",
    "schema": {
    }
  },
  {
    "name": "nn.ShaveImage",
    "schema": {
    }
  },
  {
    "name": "nn.Contiguous",
    "schema": {
    }
  },
  {
    "name": "nn.Squeeze",
    "schema": {
      "category": "Transform"
    }
  },
  {
    "name": "nn.MM",
    "schema": {
    }
  }
]