class_docstr: ResNet model.
class_docstr_tok: ["ResNet","model","."]
code: def __call__(self, inputs, is_training):
      net = inputs
      net = self._initial_conv(net)
      if not self._resnet_v2:
          net = self._initial_batchnorm(net, is_training=is_training)
          net = tf.nn.relu(net)
  
      net = tf.nn.max_pool2d(
          net,
          ksize=3,
          strides=2,
          padding="SAME",
          name="initial_max_pool",
      )
  
      for block_group in self._block_groups:
          net = block_group(net, is_training)
  
      if self._resnet_v2:
          net = self._final_batchnorm(net, is_training=is_training)
          net = tf.nn.relu(net)
      net = tf.reduce_mean(net, axis=[1, 2], name="final_avg_pool")
      return self._logits(net)
  
imports: from typing import Mapping, Optional, Sequence, Union
  from sonnet.src import base
  from sonnet.src import batch_norm
  from sonnet.src import conv
  from sonnet.src import initializers
  from sonnet.src import linear
  from sonnet.src import pad
  import tensorflow
label_desc: Use image node_id 2 for calling the ResNet obj's underlying member method code with example usage: obj.__call__(inputs, is_training) and returns: self