class_docstr: ResNet architectures for 18, 34, 50, 101, and 152 of number of layers.
  
  Args:
      num_layers (int): Number of layers chosen from 18, 34, 50, 101, and 152.
  
  The following is a list of string that can be specified to ``use_up_to`` option in ``__call__`` method;
  
  * ``'classifier'`` (default): The output of the final affine layer for classification.
  * ``'pool'``: The output of the final global average pooling.
  * ``'lastconv'``: The input of the final global average pooling without ReLU activation.
  * ``'lastconv+relu'``: Network up to ``'lastconv'`` followed by ReLU activation.
  
  References:
      * `He et al, Deep Residual Learning for Image Recognition.
        <https://arxiv.org/abs/1512.03385>`_
code: def __init__(self, num_layers=18):
      # Check validity of num_layers
      set_num_layers = set((18, 34, 50, 101, 152))
      assert (
          num_layers in set_num_layers
      ), "num_layers must be chosen from {}".format(set_num_layers)
      self.num_layers = num_layers
  
      # Load nnp
      self._load_nnp(
          "Resnet-{}.nnp".format(num_layers),
          "Resnet-{0}/Resnet-{0}.nnp".format(num_layers),
      )
  
imports: from __future__ import absolute_import
  from nnabla.utils.nnp_graph import NnpNetworkPass
  from .base import ImageNetBase
label_desc: Use image node_id 1 to create a new ResNet object from inherited base classes: ImageNetBase with example: obj = ResNet(num_layers)