class_docstr: FPGM pruner prunes the blocks of the weight with the smallest geometric median.
  FPGM chooses the weight blocks with the most replaceable contribution.
  
  For more details, please refer to
  `Filter Pruning via Geometric Median for Deep Convolutional Neural Networks Acceleration <https://arxiv.org/abs/1811.00250>`__.
  
  Parameters
  ----------
  model
      Model to be pruned.
  config_list
      A list of dict, each dict configure which module need to be pruned, and how to prune.
      Please refer :doc:`Compression Config Specification </compression/config_list>` for more information.
  
  Examples
  --------
      Please refer to
      :githublink:`examples/compression/pruning/norm_pruning.py <examples/compression/pruning/norm_pruning.py>`.
class_docstr_tok: ["FPGM","pruner","prunes","the","blocks","of","the","weight","with","the","smallest","geometric","median",".","FPGM","chooses","the","weight","blocks","with","the","most","replaceable","contribution",".","For","more","details",",","please","refer","to","`","Filter","Pruning","via","Geometric","Median","for","Deep","Convolutional","Neural","Networks","Acceleration","<","https",":","\/\/arxiv.org\/abs\/1811.00250",">","`","__",".","Parameters","--","--","--","--","--","model","Model","to","be","pruned",".","config_list","A","list","of","dict",",","each","dict","configure","which","module","need","to","be","pruned",",","and","how","to","prune",".","Please","refer",":","doc",":","`","Compression","Config","Specification","<","\/compression\/config_list",">","`","for","more","information",".","Examples","--","--","--","--","Please","refer","to",":","githublink",":","`","examples\/compression\/pruning\/norm_pruning.py","<","examples\/compression\/pruning\/norm_pruning.py",">","`","."]
code: def _calculate_metrics(self, data: _DATA) -> _METRICS:
      return fpgm_metrics(
          p=self.p, data=data, target_spaces=self._target_spaces
      )
  
imports: from __future__ import annotations
  import logging
  from typing import Dict, List, Literal, Tuple, overload
  import torch
  from .tools import _DATA, _METRICS, _MASKS, active_sparse_targets_filter, norm_metrics, fpgm_metrics, generate_sparsity
  from ..base.compressor import Compressor, Pruner
  from ..base.target_space import PruningTargetSpace
  from ..base.wrapper import ModuleWrapper
  from ..utils.evaluator import Evaluator
label_desc: Use image node_id 1 for calling the FPGMPruner obj's underlying member method code with example usage: obj._calculate_metrics(data) and returns: fpgm_metrics