Skip to main content
QUICK REVIEW

[论文解读] DoReFa-Net: Training Low Bitwidth Convolutional Neural Networks with Low Bitwidth Gradients

Shuchang Zhou, Yuxin Wu|arXiv (Cornell University)|Jun 20, 2016
Advanced Neural Network Applications参考文献 26被引用 1,796
一句话总结

DoReFa-Net 通过对梯度进行随机量化来训练 CNN 的低位宽权重、激活和梯度,从而实现带有位比卷积加速的训练,在 SVHN 和 ImageNet 上具有与 32 位基线相近的精度。

ABSTRACT

We propose DoReFa-Net, a method to train convolutional neural networks that have low bitwidth weights and activations using low bitwidth parameter gradients. In particular, during backward pass, parameter gradients are stochastically quantized to low bitwidth numbers before being propagated to convolutional layers. As convolutions during forward/backward passes can now operate on low bitwidth weights and activations/gradients respectively, DoReFa-Net can use bit convolution kernels to accelerate both training and inference. Moreover, as bit convolutions can be efficiently implemented on CPU, FPGA, ASIC and GPU, DoReFa-Net opens the way to accelerate training of low bitwidth neural network on these hardware. Our experiments on SVHN and ImageNet datasets prove that DoReFa-Net can achieve comparable prediction accuracy as 32-bit counterparts. For example, a DoReFa-Net derived from AlexNet that has 1-bit weights, 2-bit activations, can be trained from scratch using 6-bit gradients to get 46.1\% top-1 accuracy on ImageNet validation set. The DoReFa-Net AlexNet model is released publicly.

研究动机与目标

  • 在 CNN 训练与推理中降低计算和内存成本的动机。
  • 提出将权重、激活和梯度量化到低位宽的办法。
  • 为前向和后向传播提供快速的位卷积核。
  • 证明在 SVHN 和 ImageNet 上,低位宽网络的精度可接近 32 位基线。

提出的方法

  • 提出 DoReFa-Net,其中前向和后向卷积在低位宽权重与激活/梯度下进行。
  • 使用定点位运卷积核高效计算点积(Eq. 3)。
  • 对权重、激活和梯度应用直通估计器(STE)进行量化(Eqs. 5–6,7–8,11–12)。
  • 对权重与激活进行确定性量化;对梯度使用带梯度感知尺度的随机量化并加入均匀噪声以降低偏差(Eq. 12)。
  • 给出一个算法(Algorithm 1),用于训练一个拥有 W 位权重、A 位激活、G 位梯度的 L 层 DoReFa-Net。
  • 研究对第一/最后几层的特殊处理以及融合非线性/舍入操作以减少内存占用。

实验结果

研究问题

  • RQ1CNN 是否能够在权重、激活和梯度都为低位宽的情况下端到端训练且不显著损失精度?
  • RQ2在挑战性数据集上,权重、激活和梯度的位宽配置如何才能保持预测性能?
  • RQ3第一层/最后一层的量化以及网络宽度如何影响 DoReFa-Net 的精度?
  • RQ4位卷积核在多大程度上能够加速低位宽网络的训练和推理?

主要发现

WAG训练复杂度推理复杂度存储相对大小AlexNet 准确率
1167110.395
1189110.395
1132-110.279 (BNN)
1132-110.442 (XNOR-Net)
1132-110.401
1132-110.436 (initialized)
1268210.461
12810210.463
1232-210.477
1232-210.498 (initialized)
1369310.471
1332-310.484
146-410.482
1432-410.503
1432-410.530 (initialized)
888--80.530
323232--320.559
  • DoReFa-Net 可以在权重和激活为低位宽、梯度也为低位宽的情况下训练 CNN,并在使用合适位宽时(例如 ImageNet 的 1 位权重、2 位激活、6 位梯度)达到接近 32 位基线的精度(SVHN 和 ImageNet)。
  • 梯度通常需要的位宽大于激活,激活又大于权重,以最小化精度下降。
  • 在 ImageNet 上,将激活位宽从 1 位提升到 2 位或 4 位显著提升精度,而 6 位梯度提供接近于 32 位梯度的训练曲线。
  • 将第一卷积层和最后全连接层量化为低位宽会造成明显的精度下降,尤其对较窄的模型;在实际中通常将这些层保留在更高精度。
  • 使用 1 位权重、2 位激活和 6 位梯度的 DoReFa-Net AlexNet 变体,在 ILSVRC12 验证集上从零开始训练时达到 46.1% 的 top-1 精度。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。