docstr: Prunes 1/3 of the weight output channels, so resulting module has 33.3% pruning
docstr_tok: ["Prunes","1\/3","of","the","weight","output","channels",",","so","resulting","module","has","33.3","%","pruning"]
code: def update_mask(self, module, tensor_name, **kwargs):
      """Prunes 1/3 of the weight output channels, so resulting module has 33.3% pruning"""
      num_rows = len(module.parametrizations[tensor_name][0].mask)
      prune = random.sample(list(range(num_rows)), num_rows // 3)
      module.parametrizations[tensor_name][0].mask[prune] = False
  
imports: import copy
  import logging
  import random
  import torch
  from torch import nn
  from torch.ao.pruning._experimental.pruner import SaliencyPruner, LSTMSaliencyPruner, BaseStructuredSparsifier, FakeStructuredSparsity, FPGMPruner
  from torch.nn.utils import parametrize
  from torch.testing._internal.common_utils import TestCase, skipIfTorchDynamo
  from torch.testing._internal.common_pruning import SimpleLinear, LinearBias, LinearActivation, LinearActivationFunctional, SimpleConv2d, Conv2dBias, Conv2dActivation, Conv2dPadBias, Conv2dPool, Conv2dPoolFlatten, Conv2dPoolFlattenFunctional, LSTMLinearModel, LSTMLayerNormLinearModel, rows_are_subset
label_desc: Use image node_id 1 for calling the ImplementedPruner obj's underlying member method code with example usage: obj.update_mask(module, tensor_name) without return types