code: def _fuse_func(layer_list):
      """choose the fuser method and fuse layers"""
      types = tuple(type(m) for m in layer_list)
      fusion_method = types_to_fusion_method.get(types, None)
      new_layers = [None] * len(layer_list)
      fused_layer = fusion_method(*layer_list)
      for handle_id, pre_hook_fn in layer_list[
          0
      ]._forward_pre_hooks.items():
          fused_layer.register_forward_pre_hook(pre_hook_fn)
          del layer_list[0]._forward_pre_hooks[handle_id]
      for handle_id, hook_fn in layer_list[
          -1
      ]._forward_post_hooks.items():
          fused_layer.register_forward_post_hook(hook_fn)
          del layer_list[-1]._forward_post_hooks[handle_id]
      new_layers[0] = fused_layer
      for i in range(1, len(layer_list)):
          identity = Identity()
          identity.training = layer_list[0].training
          new_layers[i] = identity
      return new_layers
  
file_path: PaddleDetection/ppdet/utils/fuse_utils.py
imports: import copy
  import paddle
  import paddle.nn
label_desc: Use image node_id 4 for calling a global function with example usage: _fuse_func(layer_list) and returns: new_layers