deep-learning - 修剪模型后删除 Pytorch 中的 weight_orig
问题描述
在 Pytorch 中修剪模型后,保存的模型包含修剪后的权重和 weight_orig。这会导致修剪后的模型大小大于未修剪的模型。有没有办法删除 weight_orig 并减小修剪后的模型大小?
解决方案
如官方文档中所述,您可以将torch.nn.utils.prune.remove()
其用于此目的。删除根据和
remove()
的重新参数化,并删除. 你会这样使用它:weight_orig
weight_mask
forward_pre_hook
for module in model.modules():
if isinstance(module, torch.nn.Conv2d):
prune.remove(module,'weight')
# etc...
推荐阅读
- mysql - 续集将数据放在错误的列中?
- vba - 使用 VTable hacking 使用标准模块中的方法重载 COM 类方法
- python - 使用 python-telegram-bot 发送视频时出错,包括通过 python 的缩略图
- python - 找到具有 O(n+k) 时间复杂度的三元组
- google-apps-script - 如何使 Google Apps 脚本作为访问它的用户执行而不会出现 CORS 错误
- r - mraplot 中的函数 text.default() 出错
- python - 对变量使用特殊字符
- python - django不在模板中显示表单
- python - 在窗口上导入 matplotlib 时出现运行时错误
- python - 如何制作正确的静音命令,在取消静音时静音并在静音时取消静音