class_docstr: _StructuredFilterPruner has two ways to calculate the masks
  for conv layers. In the normal way, the _StructuredFilterPruner
  will calculate the mask of each layer separately. For example, each
  conv layer determine which filters should be pruned according to its L1
  norm. In constrast, in the dependency-aware way, the layers that in a
  dependency group will be pruned jointly and these layers will be forced
  to prune the same channels.
class_docstr_tok: ["_StructuredFilterPruner","has","two","ways","to","calculate","the","masks","for","conv","layers",".","In","the","normal","way",",","the","_StructuredFilterPruner","will","calculate","the","mask","of","each","layer","separately",".","For","example",",","each","conv","layer","determine","which","filters","should","be","pruned","according","to","its","L1","norm",".","In","constrast",",","in","the","dependency-aware","way",",","the","layers","that","in","a","dependency","group","will","be","pruned","jointly","and","these","layers","will","be","forced","to","prune","the","same","channels","."]
code: def validate_config(self, model, config_list):
      schema = CompressorSchema(
          [
              {
                  Optional("sparsity"): And(float, lambda n: 0 < n < 1),
                  Optional("op_types"): ["Conv2d"],
                  Optional("op_names"): [str],
                  Optional("exclude"): bool,
              }
          ],
          model,
          logger,
      )
  
      schema.validate(config_list)
      for config in config_list:
          if "exclude" not in config and "sparsity" not in config:
              raise SchemaError(
                  "Either sparisty or exclude must be specified!"
              )
  
imports: import logging
  from schema import And, Optional, SchemaError
  from .._graph_utils import TorchModuleGraph
  from ..utils.shape_dependency import ChannelDependency, GroupDependency
  from .constants import MASKER_DICT
  from ..utils.config_validation import CompressorSchema
  from ..compressor import Pruner
label_desc: Use image node_id 3 for calling the _StructuredFilterPruner obj's underlying member method code with example usage: obj.validate_config(model, config_list) without return types