class_docstr: VGG architectures for 11, 13, 16 layers.
  
  Args:
      num_layers (int): Number of layers chosen from 11, 13, 16.
  
  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.
  * ``'lastfeature'``: Network up to one layer before ``'classifier'``, but without activation.
  
  References:
      * `Simonyan and Zisserman, Very Deep Convolutional Networks for Large-Scale Image Recognition.
        <https://arxiv.org/pdf/1409.1556>`_
class_docstr_tok: ["VGG","architectures","for","11",",","13",",","16","layers",".","Args",":","num_layers","(","int",")",":","Number","of","layers","chosen","from","11",",","13",",","16",".","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",".","*","``","'lastfeature","'","``",":","Network","up","to","one","layer","before","``","'classifier","'","``",",","but","without","activation",".","References",":","*","`","Simonyan","and","Zisserman",",","Very","Deep","Convolutional","Networks","for","Large-Scale","Image","Recognition",".","<","https",":","\/\/arxiv.org\/pdf\/1409.1556",">","`","_"]
code: def __call__(
      self,
      input_var=None,
      use_from=None,
      use_up_to="classifier",
      training=False,
      force_global_pooling=False,
      check_global_pooling=True,
      returns_net=False,
      verbose=0,
  ):
      assert (
          use_from is None
      ), "This should not be set because it is for forward compatibility."
      input_var = self.get_input_var(input_var)
  
      callback = NnpNetworkPass(verbose)
      callback.remove_and_rewire("ImageAugmentationX")
      callback.set_variable("TrainingInput", input_var)
      callback.set_batch_normalization_batch_stat_all(training)
      self.use_up_to(use_up_to, callback)
      if not training:
          callback.remove_and_rewire(
              "VGG{}/Dropout_1".format(self.num_layers)
          )
          callback.remove_and_rewire(
              "VGG{}/Dropout_2".format(self.num_layers)
          )
          callback.fix_parameters()
      batch_size = input_var.shape[0]
      net = self.nnp.get_network(
          "Training", batch_size=batch_size, callback=callback
      )
      if returns_net:
          return net
      return list(net.outputs.values())[0]
  
file_path: nnabla/python/src/nnabla/models/imagenet/vgg.py
imports: from __future__ import absolute_import
  from nnabla.utils.nnp_graph import NnpNetworkPass
  from .base import ImageNetBase
label_desc: Use image node_id 3 for calling the VGG obj's underlying member method code with example usage: obj.__call__(input_var, use_from, use_up_to, training, force_global_pooling, check_global_pooling, returns_net, verbose) and returns: list, net