Training with Quantization Noise for Extreme Model Compression

https://arxiv.org/pdf/2004.07320.pdf
论文的核心思想如下:

在这里插入图片描述
针对上图进行实例分析:
如对卷积层weight为(64,64,3,3)进行量化

  • 设置centroids数目如(32,9)其中9表示3*3卷积核的flatten
  • 通过k-means进行选取centroids

之后进行编码(codebook),生成三个矩阵:

  • centroids=(32,9)
  • assignments=[4096]来源(64*64),其中里面的值对应centroids的index
  • counts=[32]
    其中centroids表示base字典,之后将根据assignments进行恢复原始到(64,64,3,3)权重
    counts矩阵中的所有值sum之后为4096,表示不同区间的分布状态。

如果仅仅进行此转换,这种转换是不可微的,且使用直通估计器(straight through estimator,STE)来逼近梯度。STE 在梯度中引入了一个偏置,该偏置取决于权重的量化级别,因此也取决于压缩率。
在每个前向传播过程中,随机选择这些块的子集,并添加一些失真;在反向传播过程中,使用 STE 逼近失真的权重,进而计算所有权重的梯度值。

===================下面开始分析论文中的证明过程

  • Quantizing Neural Networks
    在这里插入图片描述
    矩阵分解m*q个block子矩阵,

  • 正常标量的量化
    在这里插入图片描述

  • Product Quantization
    量化后的矩阵通过STE转化逼近原有矩阵
    在这里插入图片描述
    Iterative PQ,如何将loss更新codebook,见下面公式:
    在这里插入图片描述
    论文提出的内存计算公式:
    在这里插入图片描述

  • 训练网络是采用的 Training Networks with Quantization Noise

在这里插入图片描述

  • 主要实验结果
    在这里插入图片描述
Deep Learning Toolbox Model Quantization Library是一个用于模型量化的工具库,在MATLAB Deep Learning Toolbox中使用。要下载Deep Learning Toolbox Model Quantization Library,你需要完成以下步骤: 1. 首先,确保你已经安装了MATLAB及其Deep Learning Toolbox。这个工具库是Deep Learning Toolbox的一个插件,所以你需要有Deep Learning Toolbox的许可证才能使用。 2. 打开MATLAB并登录到你的MathWorks账户。如果你还没有账户,你可以在MathWorks的官方网站上注册一个免费账户。 3. 登录后,在MATLAB的主界面上,点击"Add-Ons"选项卡。 4. 在"Add-Ons"选项卡中,点击"Get Add-Ons"按钮。这将打开一个新窗口,展示了可用于下载和安装的各种插件和工具库。 5. 在新窗口中,使用搜索功能,输入"Deep Learning Toolbox Model Quantization Library"进行搜索。 6. 在搜索结果中,找到"Deep Learning Toolbox Model Quantization Library"并点击它。 7. 在弹出的对话框中,你将看到有关该工具库的详细信息和安装要求。请仔细阅读这些信息以确保你的MATLAB版本和系统符合要求。 8. 点击"Install"按钮开始下载和安装Deep Learning Toolbox Model Quantization Library。 9. 下载和安装过程可能需要一些时间,取决于你的网络速度和计算机性能。请耐心等待直到安装完成。 10. 安装完成后,你将能够在MATLAB的环境中使用Deep Learning Toolbox Model Quantization Library来进行模型量化的相关任务。 这就是下载Deep Learning Toolbox Model Quantization Library的步骤。记得在下载和安装前确认你的MATLAB版本和系统符合要求,以确保正常使用该工具库。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值