code: def _l2_norm_scale(self, input, init_scale=1.0, channel_shared=False):
      from paddle.fluid.layer_helper import LayerHelper
  
      helper = LayerHelper("Scale")
      l2_norm = fluid.layers.l2_normalize(
          input, axis=1
      )  # l2 norm along channel
      shape = [1] if channel_shared else [input.shape[1]]
      scale = helper.create_parameter(
          attr=helper.param_attr,
          shape=shape,
          dtype=input.dtype,
          default_initializer=Constant(init_scale),
      )
      out = fluid.layers.elementwise_mul(
          x=l2_norm, y=scale, axis=-1 if channel_shared else 1
      )
      return out
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import numpy
  import six
  import paddle.fluid
  from paddle.fluid.param_attr import ParamAttr
  from paddle.fluid.initializer import Xavier
  from paddle.fluid.initializer import Constant
  from paddle.fluid.initializer import Bilinear
  from paddle.fluid.regularizer import L2Decay
label_desc: Use image node_id 7 for calling the PyramidBox obj's underlying member method code with example usage: obj._l2_norm_scale(input, init_scale, channel_shared) and returns: out