class_docstr: ResNet shortcut, used to project the residual features to the correct size. If needed, it is also used to
  downsample the input using `stride=2`.
class_docstr_tok: ["ResNet","shortcut",",","used","to","project","the","residual","features","to","the","correct","size",".","If","needed",",","it","is","also","used","to","downsample","the","input","using","`","stride=2","`","."]
code: def build(self, input_shape=None):
      if self.built:
          return
      self.built = True
      if getattr(self, "convolution", None) is not None:
          with tf.name_scope(self.convolution.name):
              self.convolution.build(
                  [None, None, None, self.in_channels]
              )
      if getattr(self, "normalization", None) is not None:
          with tf.name_scope(self.normalization.name):
              self.normalization.build(
                  [None, None, None, self.out_channels]
              )
  
imports: from typing import Optional, Tuple, Union
  import tensorflow
  from ...activations_tf import ACT2FN
  from ...modeling_tf_outputs import TFBaseModelOutputWithNoAttention, TFBaseModelOutputWithPoolingAndNoAttention, TFImageClassifierOutputWithNoAttention
  from ...modeling_tf_utils import TFPreTrainedModel, TFSequenceClassificationLoss, keras_serializable, unpack_inputs
  from ...tf_utils import shape_list
  from ...utils import add_code_sample_docstrings, add_start_docstrings, add_start_docstrings_to_model_forward, logging
  from .configuration_resnet import ResNetConfig
label_desc: Use image node_id 3 for calling the TFResNetShortCut obj's underlying member method code with example usage: obj.build(input_shape) without return types