[论文解读] No Multiplication? No Floating Point? No Problem! Training Networks for Efficient Inference
本文提出一种方法,通过将权重和激活值量化为一组离散值,实现在推理阶段无需浮点运算、无需乘法运算、也无需计算非线性函数,从而训练深度神经网络。在训练过程中使用周期性自适应聚类,该方法在分类和回归任务上实现了接近理想的表现,同时将模型大小减少至标准浮点网络的三分之一以下。
For successful deployment of deep neural networks on highly--resource-constrained devices (hearing aids, earbuds, wearables), we must simplify the types of operations and the memory/power resources used during inference. Completely avoiding inference-time floating-point operations is one of the simplest ways to design networks for these highly-constrained environments. By discretizing both our in-network non-linearities and our network weights, we can move to simple, compact networks without floating point operations, without multiplications, and avoid all non-linear function computations. Our approach allows us to explore the spectrum of possible networks, ranging from fully continuous versions down to networks with bi-level weights and activations. Our results show that discretization can be done without loss of performance and that we can train a network that will successfully operate without floating-point, without multiplication, and with less RAM on both regression tasks (auto encoding) and multi-class classification tasks (ImageNet). The memory needed to deploy our discretized networks is less than one third of the equivalent architecture that does use floating-point operations.
研究动机与目标
- 实现在如助听器和耳塞等高度资源受限设备上部署深度神经网络。
- 在推理阶段消除浮点运算和乘法运算,以降低功耗和内存使用。
- 即使在权重和激活值被极端量化的情况下,仍保持高模型性能。
- 通过将权重聚类为少量唯一值,探索网络容量与效率之间的权衡。
- 证明在相同架构和训练流程下,量化网络可达到或超越全精度模型的性能。
提出的方法
- 使用输出空间中的均匀量化,将网络激活值量化为一组预定义的离散层级(例如32个层级)。
- 在训练过程中周期性地应用自适应聚类,将所有网络权重聚类为少量唯一值(例如100–1000个),以减少内存占用。
- 通过反向传播未量化函数,对量化非线性函数(例如tanhD)使用可微分近似。
- 使用查找表(LUT)替代乘法运算,该表预先存储量化激活值与聚类权重的乘积。
- 确保所有乘法和累加步骤的输入均被限定且可预先确定,从而支持定点运算和高效的硬件映射。
- 使用浮点精度进行标准反向传播训练网络,但最终部署模型时仅使用整数运算和离散值。
实验结果
研究问题
- RQ1是否可以在推理阶段完全避免浮点运算、乘法运算或非线性函数计算,同时仍能训练和部署深度神经网络?
- RQ2周期性自适应聚类在保持模型准确率的同时,对大幅减少内存使用的效果如何?
- RQ3量化激活值和权重在回归与分类任务上能多大程度上保持性能?
- RQ4量化对泛化能力有何影响?在无Dropout的情况下,量化是否可起到正则化作用?
- RQ5聚类策略的选择(全局聚类 vs. 按层聚类)如何影响模型性能与内存效率?
主要发现
- 通过将权重聚类为少量唯一值,该方法将模型内存大小减少至等效浮点网络的三分之一以下。
- 量化网络在ImageNet分类和自动编码回归任务上的表现与全精度网络相当或更优。
- 周期性自适应聚类的使用使得即使在极端量化条件下也能实现稳定训练,且在多种架构上均保持高准确率。
- 该方法通过使用定点运算和查找表,消除了推理阶段对浮点运算和乘法运算的需求。
- 该方法表现出类似正则化的效应,无论是否结合Dropout等额外正则化手段,均观察到性能提升。
- 最终模型可部署于超低功耗设备(如可穿戴设备和耳塞),实现在设备端的推理而无需远程处理。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。