[论文解读] Deep Model Compression via Deep Reinforcement Learning.
该论文提出了一种基于深度强化学习(DRL)的两阶段模型压缩框架,用于卷积神经网络(CNNs),结合逐层通道剪枝与核级变分剪枝以减少浮点运算次数(FLOPs)和模型大小,随后通过DRL优化的量化技术最小化每层的位宽。该方法在CIFAR-10上实现了VGGNet 9倍的压缩,准确率提升0.2%,在ImageNet上实现了VGG-16 33倍的压缩,且准确率无损失。
Besides accuracy, the storage of convolutional neural networks (CNN) models is another important factor considering limited hardware resources in practical applications. For example, autonomous driving requires the design of accurate yet fast CNN for low latency in object detection and classification. To fulfill the need, we aim at obtaining CNN models with both high testing accuracy and small size/storage to address resource constraints in many embedded systems. In particular, this paper focuses on proposing a generic reinforcement learning based model compression approach in a two-stage compression pipeline: pruning and quantization. The first stage of compression, i.e., pruning, is achieved via exploiting deep reinforcement learning (DRL) to co-learn the accuracy of CNN models updated after layer-wise channel pruning on a testing dataset and the FLOPs, number of floating point operations in each layer, updated after kernel-wise variational pruning using information dropout. Layer-wise channel pruning is to remove unimportant kernels from the input channel dimension while kernel-wise variational pruning is to remove unimportant kernels from the 2D-kernel dimensions, namely, height and width. The second stage, i.e., quantization, is achieved via a similar DRL approach but focuses on obtaining the optimal weight bits for individual layers. We further conduct experimental results on CIFAR-10 and ImageNet datasets. For the CIFAR-10 dataset, the proposed method can reduce the size of VGGNet by 9x from 20.04MB to 2.2MB with 0.2% accuracy increase. For the ImageNet dataset, the proposed method can reduce the size of VGG-16 by 33x from 138MB to 4.14MB with no accuracy loss.
研究动机与目标
- 解决在自动驾驶等资源受限嵌入式系统中部署高精度且紧凑的CNN模型的挑战。
- 在不牺牲测试准确率的前提下减少模型大小和FLOPs,以满足低延迟和存储需求。
- 开发一种通用的、端到端的压缩流水线,利用深度强化学习实现剪枝和量化两个阶段的优化。
- 通过强化学习实现剪枝与位宽选择的自动、逐层优化。
- 在标准基准测试上实现高倍率压缩,同时保持或轻微提升模型准确率。
提出的方法
- 利用深度强化学习在逐层通道剪枝过程中协同学习模型准确率与FLOPs,通过移除输入通道维度上不重要的卷积核来实现。
- 采用基于信息丢弃的核级变分剪枝,从2D卷积核的高和宽维度上移除冗余滤波器。
- 使用独立的DRL智能体确定每层量化时的最优位宽,以最小化位宽同时保持准确率。
- 在验证集上训练DRL智能体,以在剪枝和量化两个阶段之间平衡准确率保持与模型压缩效果。
- 设计两阶段流水线:首先通过通道与核级移除进行剪枝,然后通过位宽优化实现量化,均由DRL引导。
- 设计一个结合准确率与FLOPs(或模型大小)的奖励函数,引导DRL智能体实现高效、高性能的模型压缩。
实验结果
研究问题
- RQ1深度强化学习能否在CNN层的结构化剪枝过程中有效协同优化模型准确率与FLOPs?
- RQ2基于DRL的剪枝策略在减少模型大小与计算成本的同时,能否有效保持或提升准确率?
- RQ3DRL能否用于自动确定量化过程中每层的最优位宽,实现压缩与准确率之间的平衡?
- RQ4在CIFAR-10和ImageNet等标准基准上,可实现的压缩率与准确率权衡如何?
- RQ5所提出的两阶段DRL压缩流水线在模型大小与准确率方面是否优于传统的手工设计或启发式压缩方法?
主要发现
- 在CIFAR-10数据集上,该方法将VGGNet的模型大小从20.04MB压缩至2.2MB,实现了9倍压缩率,且准确率提升了0.2%。
- 在ImageNet数据集上,该方法将VGG-16从138MB压缩至4.14MB,实现了33倍压缩率,且准确率无损失。
- 基于DRL的剪枝策略有效识别并移除了通道与核维度上的不重要滤波器,显著降低了FLOPs,且未损害性能。
- 基于DRL的量化过程成功确定了每层的最优位宽,显著减小了模型大小,同时保持了高准确率。
- 该两阶段压缩流水线在不同网络架构与数据集上均表现出良好的泛化能力。
- 该方法实现了最先进的压缩效率,显著优于传统压缩技术在模型大小缩减与准确率保持方面的表现。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。