code: def __init__(
      self,
      ctx,
      axes=[],
      decay_rate=0.9,
      eps=1e-05,
      batch_stat=True,
      no_scale=False,
      no_bias=False,
  ):
      super(BatchNormalizationBackward, self).__init__(ctx)
      self._func = _F.BatchNormalization(
          ctx, axes, decay_rate, eps, batch_stat, no_scale, no_bias
      )
      self.axes = axes
      self.decay_rate = decay_rate
      self.eps = eps
      self.batch_stat = batch_stat
      self.no_scale = no_scale
      self.no_bias = no_bias
  
      # Variable indices
      self.dy_idx = 0
      self.x0_idx = 1
      self.b0_idx = None
      self.g0_idx = None
      self.rm_idx = None
      self.rv_idx = None
      v_idx = 2
      if not no_bias:
          self.b0_idx = v_idx
          v_idx += 1
      if not no_scale:
          self.g0_idx = v_idx
          v_idx += 1
      self.rm_idx = v_idx
      self.rv_idx = self.rm_idx + 1
  
imports: from functools import partial
  import nnabla
  import nnabla.function
  import nnabla.functions
  import numpy
  from nnabla.function import PythonFunction
  from .utils import force_tuple
label_desc: Use image node_id 1 to create a new BatchNormalizationBackward object from inherited base classes: PythonFunction with example: obj = BatchNormalizationBackward(ctx, axes, decay_rate, eps, batch_stat, no_scale, no_bias)