class_docstr: Block `BatchNormalization -> Add2 -> Non-Linear` pass is fused into one `FusedBatchNormalization`.
  
  If there is a block `BatchNormalization -> Add2 -> Non-Linear` pass,
  remove all the block functions and replace the whole block to `FusedBatchNormalization`.
  
  Examples:
  
  .. code-block:: python
  
     pred = Model(...)
  
     import nnabla.experimental.graph_converters as GC
  
     modifiers = [GC.FusedBatchNormalizationModifier()]
     gc = GC.GraphConverter(modifiers)
     pred = gc.convert(pred)
code: def _is_fused_bn_block(self, f, inputs):
      outputs = f.outputs[0]
  
      # Function is BN whose next function is Add2,
      # function after Add2 is not non-linear
      next_func = outputs.function_references[0]
  
      if len(next_func.outputs[0].function_references) == 0:
          return False
  
      nnext_func = next_func.outputs[0].function_references[0]
  
      if (
          f.info.type_name == "BatchNormalization"
          and next_func.info.type_name == "Add2"
          and nnext_func.info.type_name in self._fct_set
      ):
          return True
  
      return False
  
file_path: nnabla/python/src/nnabla/experimental/graph_converters/fused_batch_normalization.py
imports: import nnabla.parametric_functions
  from .graph_converter import FunctionModifier
label_desc: Use image node_id 3 for calling the FusedBatchNormalizationModifier obj's underlying member method code with example usage: obj._is_fused_bn_block(f, inputs) and returns: False, False, True