本文简要介绍python语言中 torch.nn.utils.prune.random_structured
的用法。
用法:
torch.nn.utils.prune.random_structured(module, name, amount, dim)
module(torch.nn.Module) -包含要修剪的张量的模块
name(str) -
module
中的参数名称,将对其进行修剪。amount(int或者float) -要修剪的参数数量。如果
float
,应介于 0.0 和 1.0 之间,表示要修剪的参数比例。如果int
,它表示要修剪的参数的绝对数量。dim(int) -dim 的索引,我们沿着该索引定义要修剪的通道。
输入模块的修改(即修剪)版本
模块(nn.Module)
通过沿随机选择的指定
dim
删除指定的amount
通道(当前未修剪),修剪与module
中名为name
的参数相对应的张量。通过以下方式修改模块(并返回修改后的模块):添加一个名为
name+'_mask'
的命名缓冲区,该缓冲区对应于通过修剪方法应用于参数name
的二进制掩码。将参数
name
替换为其修剪版本,而原始(未修剪)参数存储在名为name+'_orig'
的新参数中。
例子
>>> m = prune.random_structured( nn.Linear(5, 3), 'weight', amount=3, dim=1 ) >>> columns_pruned = int(sum(torch.sum(m.weight, dim=0) == 0)) >>> print(columns_pruned) 3
参数:
返回:
返回类型:
相关用法
- Python PyTorch random_split用法及代码示例
- Python PyTorch random_unstructured用法及代码示例
- Python PyTorch rand_split_train_val用法及代码示例
- Python PyTorch randn用法及代码示例
- Python PyTorch rand用法及代码示例
- Python PyTorch randperm用法及代码示例
- Python PyTorch randint用法及代码示例
- Python PyTorch range用法及代码示例
- Python PyTorch rad2deg用法及代码示例
- Python PyTorch ravel用法及代码示例
- Python PyTorch renorm用法及代码示例
- Python PyTorch rpc_sync用法及代码示例
- Python PyTorch reshape用法及代码示例
- Python PyTorch real用法及代码示例
- Python PyTorch rsqrt用法及代码示例
- Python PyTorch rfftn用法及代码示例
- Python PyTorch rpc_async用法及代码示例
- Python PyTorch repeat_interleave用法及代码示例
- Python PyTorch remove用法及代码示例
- Python PyTorch read_vec_flt_ark用法及代码示例
- Python PyTorch rfft用法及代码示例
- Python PyTorch register_kl用法及代码示例
- Python PyTorch read_vec_int_ark用法及代码示例
- Python PyTorch round用法及代码示例
- Python PyTorch resolve_neg用法及代码示例
注:本文由纯净天空筛选整理自pytorch.org大神的英文原创作品 torch.nn.utils.prune.random_structured。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。