20220419 模型量化、裁剪、压缩

量化:

我们的目的是把原来的float 32bit 的卷积操作(乘加指令)转换为int8的卷积操作,这样计算就变为原来的1/4,但是访存并没有变少哈,因为我们是在kernel里面才把float32变为int8进行计算的。

PyTorch的量化 - 知乎 (zhihu.com)

  • Post Training Dynamic Quantization,模型训练完毕后的动态量化;
  • Post Training Static Quantization,模型训练完毕后的静态量化;
  • QAT(Quantization Aware Training),模型训练中开启量化。

 


剪枝: 

即移除对结果作用较小的组件,移除一些层和连接参数

(164条消息) PyTorch--模型剪枝案例_前尘昨夜此刻的博客-CSDN博客_pytorch模型剪枝

 

蒸馏:

知识蒸馏是指使用教师模型(teacher model)去指导学生模型(student model)学习特定任务,保证小模型在参数量不变的情况下,得到比较大的性能提升。

(159条消息) 模型蒸馏(Distillation)_喜欢打酱油的老鸟的博客-CSDN博客_模型蒸馏

(164条消息) 【Pytorch】使用Pytorch进行知识蒸馏_码猿小菜鸡的博客-CSDN博客_知识蒸馏pytorch

pytorch知识蒸馏&模型压缩总结 - 知乎 (zhihu.com)

你可能感兴趣的:(python)