[论文解读] DPRed: Making Typical Activation and Weight Values Matter In Deep Learning Computing
DPRed 通过将权重和激活分组并为每组应用定制化精度,提出了一种用于深度神经网络的动态精度压缩方法,可将片外内存流量减少高达 65%,并提升性能与能效。该方法使硬件能够根据每组激活动态调整精度,无需对网络进行微调或修改模型架构,即可在 8 位网络中实现 1.82 倍至 2.81 倍的加速。
We show that selecting a single data type (precision) for all values in Deep Neural Networks, even if that data type is different per layer, amounts to worst case design. Much shorter data types can be used if we target the common case by adjusting the precision at a much finer granularity. We propose Dynamic Precision Reduction (DPRed), where we group weights and activations and encode them using a precision specific to each group. The per group precisions are selected statically for the weights and dynamically by hardware for the activations. We exploit these precisions to reduce: 1) off-chip storage and off- and on-chip communication, and 2) execution time. DPRed compression reduces off-chip traffic to nearly 35% and 33% on average compared to no compression respectively for 16b and 8b models. This makes it possible to sustain higher performance for a given off-chip memory interface while also boosting energy efficiency. We also demonstrate designs where the time required to process each group of activations and/or weights scales proportionally to the precision they use for convolutional and fully-connected layers. This improves execution time and energy efficiency for both dense and sparse networks. We show the techniques work with 8-bit networks, where 1.82x and 2.81x speedups are achieved for two different hardware variants that take advantage of dynamic precision variability.
研究动机与目标
- 为解决深度学习加速器中固定精度设计的低效问题,避免为罕见的高幅值数值过度配置资源。
- 利用大多数激活值和权重接近零的事实,实现比按层分析更细粒度的精度自适应。
- 通过使用每组特定的精度对数据进行压缩,减少片外内存带宽和片上通信。
- 通过允许处理单元根据每组数据的精度动态调整性能,从而缩短执行时间并提升能效。
- 实现无需模型微调或架构变更的硬件加速,使精度能根据输入自适应调整。
提出的方法
- DPRed 将权重和激活划分为小簇,并为每组分配基于其数值分布的定制精度。
- 对于权重,精度通过静态分析确定,并在模型预处理阶段应用。
- 对于激活,精度在运行时根据输入动态确定,并由硬件选择。
- 系统使用压缩/解压缩模块,利用每组特定的精度存储和检索数据,从而减少片外流量。
- DStripes 加速器设计通过允许处理单元根据每组数据的精度按比例调整操作时间,集成 DPRed。
- 该方法支持密集和稀疏网络,并与现有的量化和剪枝技术兼容。
实验结果
研究问题
- RQ1与固定按层精度相比,动态的、按组的精度自适应是否能更有效地减少片外内存流量?
- RQ2在比层级别更细粒度的粒度下自适应精度,能带来多大的性能和能效提升?
- RQ3动态精度压缩是否可应用于权重和激活,而无需模型微调或架构变更?
- RQ4输入相关的激活精度对硬件性能和通信效率有何影响?
- RQ5与现有压缩和量化技术相比,DPRed 在带宽减少和加速方面表现如何?
主要发现
- 与固定按层精度的 50% 相比,DPRed 将 16 位和 8 位模型的片外流量分别减少至基线的 35% 和 33%。
- 该压缩方案将片外流量减少至基线的 38%,优于固定精度方法。
- DStripes 通过根据每组动态精度自适应调整,在两种硬件变体的 8 位网络中分别实现了 1.82 倍和 2.81 倍的加速。
- 该方法实现了执行时间与精度成比例的缩放,显著提升了密集和稀疏网络的能效。
- DPRed 即使在 8 位量化网络中也保持高效,证明其对现有量化技术具有强鲁棒性。
- 该方法与剪枝和量化正交,可与 EIE、TRT 和 Bit-Fusion 结合,进一步提升性能。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。