模型压缩简答说就是将庞大的深度学习模型进行压缩,常见方法包括五大类,分别是剪枝、量化、正则化、知识蒸馏、条件计算。
量化是模型压缩常用方法之一,本文不完全包括了一些神经网络Fixed-Point Training(定点化训练)相关的方法进行了详细整理,拆分,并对优缺点进行了对比分析。
资源整理自网络,资源获取见源地址:https://github.com/A-suozhang/awesome-quantization-and-fixed-point-training
本文的最终目的是面向FPGA等嵌入式设备的NN 部署/训练,的一个软件仿真工具。为了Scalability,会尝试实现一些较为General的定点训练技巧现方式
以及诸如MobileNet, ShuffleNet 等轻量化网络设计
Quantization的两种主要方式
基于CodeBook的(Deep Compression) :实际参数还是高精度的,无法利用定点计算进行加速,仅能减少存储
基于定点数(Fixed Point表示),(IBM的FP8也可以归入此类) :可利用定点计算加速,故本文主要采取该方式