class_docstr: Use `PruningModifier` to prune the small weight value to 0.
  The pruning is channel-wise. Using the channel-wise L2 norm to represent the degree of sparsity.
  If the L2 norm less than the threshold provided, all the value of this channel will be set to 0.
  
  Supported pruning functions: `Convolution`, `Deconvolution`, `DepthwiseConvolution`, 'DepthwiseDeconvolution', 'Affine'
  
  Examples:
  
  .. code-block:: python
  
     pred = Model(...)
  
     import nnabla.experimental.graph_converters as GC
  
     modifiers = [GC.PruningModifier(pruning_threshold=0.1)]
     gc = GC.GraphConverter(modifiers)
     pred = gc.convert(pred)
docstr: Args:
    pruning_threshold (float): Threshold of the L2 norm.
    functions_to_prune (list): Functions to pruning.
    channel_last (bool): If True, the data formnat of network is considered to be NHWC.
docstr_tok: ["Args",":","pruning_threshold","(","float",")",":","Threshold","of","the","L2","norm",".","functions_to_prune","(","list",")",":","Functions","to","pruning",".","channel_last","(","bool",")",":","If","True",",","the","data","formnat","of","network","is","considered","to","be","NHWC","."]
code: def __init__(
      self,
      pruning_threshold,
      functions_to_prune=(
          "Convolution",
          "Deconvolution",
          "DepthwiseConvolution",
          "DepthwiseDeconvolution",
          "Affine",
      ),
      channel_last=False,
  ):
      """
      Args:
        pruning_threshold (float): Threshold of the L2 norm.
        functions_to_prune (list): Functions to pruning.
        channel_last (bool): If True, the data formnat of network is considered to be NHWC.
  
      """
      super(PruningModifier, self).__init__()
      self._channle_last = channel_last
      self._pruning_threshold = pruning_threshold
  
      self._default_fct_set = {
          "Affine": F.affine,
          "Convolution": F.convolution,
          "Deconvolution": F.deconvolution,
          "DepthwiseConvolution": F.depthwise_convolution,
          "DepthwiseDeconvolution": F.depthwise_deconvolution,
      }
  
      self._fct_set = {}
      for function in functions_to_prune:
          if function in self._default_fct_set:
              self._fct_set[function] = self._default_fct_set[function]
  
      self.output_channel_axis = {
          "Affine": 1,
          "Convolution": 0,
          "Deconvolution": {True: -1, False: 1},
          "DepthwiseConvolution": 0,
          "DepthwiseDeconvolution": 0,
      }
  
file_path: nnabla/python/src/nnabla/experimental/graph_converters/prune.py
imports: import nnabla.functions
  import nnabla
  from nnabla.parameter import get_parameter_or_create
  from .graph_converter import FunctionModifier
  import numpy
label_desc: Use image node_id 1 to create a new PruningModifier object from inherited base classes: FunctionModifier with example: obj = PruningModifier(pruning_threshold, functions_to_prune, channel_last)