code: def hourglass_arg_scope_tf(
      weight_decay=0.0001,
      batch_norm_decay=0.997,
      batch_norm_epsilon=1e-5,
      batch_norm_scale=True,
  ):
      """Defines the default ResNet arg scope.
      Args:
        is_training: Whether or not we are training the parameters in the batch
          normalization layers of the model.
        weight_decay: The weight decay to use for regularizing the model.
        batch_norm_decay: The moving average decay when estimating layer activation
          statistics in batch normalization.
        batch_norm_epsilon: Small constant to prevent division by zero when
          normalizing activations by their variance in batch normalization.
        batch_norm_scale: If True, uses an explicit `gamma` multiplier to scale the
          activations in the batch normalization layer.
      Returns:
        An `arg_scope` to use for the resnet models.
      """
      batch_norm_params = {
          "decay": batch_norm_decay,
          "epsilon": batch_norm_epsilon,
          "scale": batch_norm_scale,
          "updates_collections": tf.GraphKeys.UPDATE_OPS,
      }
  
      with slim.arg_scope(
          [slim.conv2d],
          weights_regularizer=slim.l2_regularizer(weight_decay),
          weights_initializer=slim.variance_scaling_initializer(),
          activation_fn=tf.nn.relu,
          normalizer_fn=slim.batch_norm,
          normalizer_params=batch_norm_params,
      ):
          with slim.arg_scope([slim.batch_norm], **batch_norm_params):
              with slim.arg_scope(
                  [slim.max_pool2d], padding="SAME"
              ) as arg_sc:
                  return arg_sc
  
file_path: insightface/reconstruction/ostec/external/landmark_detector/models.py
imports: import tensorflow
  import numpy
label_desc: Use image node_id 3 for calling a global function with example usage: hourglass_arg_scope_tf(weight_decay, batch_norm_decay, batch_norm_epsilon, batch_norm_scale) and returns: arg_sc