[论文解读] PENNI: Pruned Kernel Sharing for Efficient CNN Inference
PENNI 是一种硬件高效的卷积神经网络压缩框架,通过将卷积核分解为共享的基础核与稀疏系数矩阵,实现高模型紧凑性与推理加速。通过应用 l1-正则化与交替微调,其在 ResNet18/CIFAR10 上实现了 97% 的参数量减少与 92% 的 FLOP 减少,且准确率无损失,同时实现 53% 的延迟降低与 44% 的内存节省。
Although state-of-the-art (SOTA) CNNs achieve outstanding performance on various tasks, their high computation demand and massive number of parameters make it difficult to deploy these SOTA CNNs onto resource-constrained devices. Previous works on CNN acceleration utilize low-rank approximation of the original convolution layers to reduce computation cost. However, these methods are very difficult to conduct upon sparse models, which limits execution speedup since redundancies within the CNN model are not fully exploited. We argue that kernel granularity decomposition can be conducted with low-rank assumption while exploiting the redundancy within the remaining compact coefficients. Based on this observation, we propose PENNI, a CNN model compression framework that is able to achieve model compactness and hardware efficiency simultaneously by (1) implementing kernel sharing in convolution layers via a small number of basis kernels and (2) alternately adjusting bases and coefficients with sparse constraints. Experiments show that we can prune 97% parameters and 92% FLOPs on ResNet18 CIFAR10 with no accuracy loss, and achieve 44% reduction in run-time memory consumption and a 53% reduction in inference latency.
研究动机与目标
- 解决尽管剪枝后稀疏度高,但稀疏 CNN 模型在资源受限设备上仍效率低下的问题。
- 克服现有低秩近似方法无法有效利用稀疏模型中冗余性的局限。
- 通过基础核共享与系数稀疏性结构化模型稀疏性,实现硬件友好的推理。
- 在不修改推理算法或硬件的前提下,实现高精度压缩与加速。
- 通过结构化稀疏性与模型剪枝,同步优化模型紧凑性与硬件效率。
提出的方法
- 通过低秩近似将卷积核分解为一组少量共享的基础核及其对应的系数矩阵。
- 在微调过程中对系数矩阵应用 l1-正则化,以诱导结构化稀疏性。
- 采用交替微调策略,联合优化基础核与系数,提升稀疏性与准确率。
- 通过移除层中冗余通道实现模型剪枝,其依据为系数矩阵的稀疏性。
- 将卷积计算重新组织为两个阶段:基础核卷积与加权求和计算,以支持高效硬件执行。
- 将基础核运算与系数加权求和分离,以暴露并利用系数稀疏性,避免零值计算。
实验结果
研究问题
- RQ1通过基础核共享与稀疏系数,是否能在 CNN 中同时实现高模型压缩与硬件效率?
- RQ2对系数矩阵施加 l1-正则化在不降低准确率的前提下,是否能有效实现结构化稀疏性?
- RQ3模型剪枝在多大程度上能利用剪枝 CNN 中的结构冗余性,进一步减少 FLOPs 与内存?
- RQ4所提出的分解与计算重组织方法是否能在不修改推理算法或硬件的前提下实现推理加速?
- RQ5基础核数量在压缩、FLOPs 与准确率之间的权衡中起到何种作用?
主要发现
- 在 ResNet18/CIFAR10 上,PENNI 实现了 97% 的参数量减少与 92% 的 FLOP 减少,且准确率无损失。
- 在 CPU 上延迟降低 53%,在 GPU 上降低 2.2 倍,峰值内存消耗减少 44%。
- 在 VGG16/CIFAR10 上,PENNI 实现了 94.5% 的参数量减少与 76.9% 的 FLOP 减少,仅造成 0.2% 的准确率下降。
- 在 ImageNet 上,PENNI 实现了 87.3% 的参数量减少与 94.7% 的 FLOP 减少,Top-1 准确率损失为 2.4%。
- 该方法在 CPU 与 GPU 平台上实现了 1.5 倍至 2.2 倍的延迟降低,且无需修改推理软件或硬件。
- 在放宽正则化条件下,可实现 81.23% 的 FLOP 削减,仅造成 0.5% 的准确率损失,压缩效率优于通道剪枝方法。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。