class_docstr: Normalize input tensor ``x`` by ``mean`` and ``variance``, and optionally apply a
  scale ``gamma`` and an offset ``beta``:
  
  .. math::
     y_i = \gamma_i \dfrac{ (x_i - mean_i)}{\sqrt{variance_i + epsilon}} + beta_i \;,\;i=1,....,C
  
  The ``mean``, ``variance``, ``gamma``, and ``beta``
  must be 1-D tensors whose lengths are equal to the second axis (the "depth"
  or "channel" dimension) of ``x``.
  
  Parameters
  ----------
  x: tensor<[n,C,*D], T> (Required)
      * ``3 <= rank <= 5``.
      * ``*D`` refers to the spatial dimensions, ``1 <= rank(*D) <= 3``.
      * ``n`` is the batch dimension.
  mean: const tensor<[C], T> (Required)
  variance: const tensor<[C], T> (Required)
  gamma: const tensor<[C], T> (Optional)
      * Optional scale applied to normalized tensor.
      * Default is all ones.
  beta: const tensor<[C], T> (Optional)
      * Optional offset applied to normalized tensor.
      * Default is all zeros.
  epsilon: const T (Optional)
      * Default is ``1e-5``.
  
  Returns
  -------
  tensor<[n,C,*D], T>
      * Output tensor has the same shape and type as the input ``x``.
  
  Attributes
  ----------
  T: fp16, fp32
class_docstr_tok: ["Normalize","input","tensor","``","x","``","by","``","mean","``","and","``","variance","``",",","and","optionally","apply","a","scale","``","gamma","``","and","an","offset","``","beta","``",":","..","math",":",":","y_i","=","\\gamma_i","\\dfrac","{","(","x_i","-","mean_i",")","}","{","\\sqrt","{","variance_i","+","epsilon","}","}","+","beta_i","\\",";",",","\\",";","i=1",",","....",",","C","The","``","mean","``",",","``","variance","``",",","``","gamma","``",",","and","``","beta","``","must","be","1-D","tensors","whose","lengths","are","equal","to","the","second","axis","(","the","``","depth","''","or","``","channel","''","dimension",")","of","``","x","``",".","Parameters","--","--","--","--","--","x",":","tensor","<","[","n",",","C",",","*","D","]",",","T",">","(","Required",")","*","``","3","<","=","rank","<","=","5","``",".","*","``","*","D","``","refers","to","the","spatial","dimensions",",","``","1","<","=","rank","(","*","D",")","<","=","3","``",".","*","``","n","``","is","the","batch","dimension",".","mean",":","const","tensor","<","[","C","]",",","T",">","(","Required",")","variance",":","const","tensor","<","[","C","]",",","T",">","(","Required",")","gamma",":","const","tensor","<","[","C","]",",","T",">","(","Optional",")","*","Optional","scale","applied","to","normalized","tensor",".","*","Default","is","all","ones",".","beta",":","const","tensor","<","[","C","]",",","T",">","(","Optional",")","*","Optional","offset","applied","to","normalized","tensor",".","*","Default","is","all","zeros",".","epsilon",":","const","T","(","Optional",")","*","Default","is","``","1e-5","``",".","Returns","--","--","--","-","tensor","<","[","n",",","C",",","*","D","]",",","T",">","*","Output","tensor","has","the","same","shape","and","type","as","the","input","``","x","``",".","Attributes","--","--","--","--","--","T",":","fp16",",","fp32"]
code: def default_inputs(self):
      return DefaultInputs(
          gamma=None,
          beta=None,
          epsilon=1e-5,
      )
  
imports: import numpy
  from coremltools.converters.mil.mil import DefaultInputs, InputSpec, Operation, TensorInputType, precondition, types
  from coremltools.converters.mil.mil.operation import VALUE
  from coremltools.converters.mil.mil.ops.defs._op_reqs import register_op
  from coremltools.converters.mil.mil.types.symbolic import any_symbolic
label_desc: Use image node_id 1 for calling the batch_norm obj's underlying member method code with example usage: obj.default_inputs() and returns: DefaultInputs