[论文解读] Iterative Low-Rank Approximation for CNN Compression
本文提出一种用于压缩卷积神经网络(CNN)的迭代低秩逼近方法,通过重复进行秩削弱、高阶奇异值分解(HOSVD/SVD)和微调,逐步降低秩。与单次方法相比,该方法在AlexNet、VGG-16、YOLOv2和Tiny YOLO上实现了更高的压缩率,且准确率损失显著减少,表现出更优的性能。
Deep convolutional neural networks contain tens of millions of parameters, making them impossible to work efficiently on embedded devices. We propose iterative approach of applying low-rank approximation to compress deep convolutional neural networks. Since classification and object detection are the most favored tasks for embedded devices, we demonstrate the effectiveness of our approach by compressing AlexNet, VGG-16, YOLOv2 and Tiny YOLO networks. Our results show the superiority of the proposed method compared to non-repetitive ones. We demonstrate higher compression ratio providing less accuracy loss.
研究动机与目标
- 解决在资源受限的嵌入式和移动设备上部署大型、参数密集型CNN的挑战。
- 通过引入迭代压缩过程,克服单次低秩逼近方法常见的准确率下降问题。
- 实现与任何深度学习框架的无缝集成,无需进行框架级别的修改。
- 通过迭代分解和微调逐步减少噪声,实现更高的压缩率,同时最小化准确率损失。
- 利用变分贝叶斯矩阵分解(VBMF)自动选择秩,通过迭代削弱极端秩来避免过度压缩。
提出的方法
- 采用四步迭代低秩逼近流程:通过VBMF实现极端秩的自动选择,秩削弱,对卷积层使用HOSVD、全连接层使用SVD的张量分解,以及模型微调。
- 使用高阶奇异值分解(HOSVD)将4D卷积核张量分解为核心张量和因子矩阵,从而减少参数量。
- 利用变分贝叶斯矩阵分解(VBMF)自动确定初始秩边界,将其视为压缩的上限。
- 通过将VBMF估计的秩降低0.5至0.7的倍数来实现秩削弱,防止单步过度压缩。
- 执行迭代压缩循环,每次迭代均应用分解与微调,直至准确率下降低于1%。
- 通过分别对卷积层应用HOSVD、全连接层应用SVD,支持卷积层与全连接层的处理;对如批归一化层等不可压缩层可选预处理。
实验结果
研究问题
- RQ1与单次分解相比,迭代低秩逼近是否能减少CNN压缩过程中的准确率损失?
- RQ2在分解前逐步削弱秩,是否能在不牺牲模型性能的前提下实现更高的压缩率?
- RQ3基于VBMF的秩估计与迭代微调相结合,在多种CNN架构中保持准确率的有效性如何?
- RQ4与非重复性低秩逼近相比,该迭代方法在压缩率和推理加速方面优势有多大?
- RQ5该方法是否可普遍应用于不同深度学习框架,而无需进行框架级别的修改?
主要发现
- 在AlexNet上,该迭代方法实现了4.90×的压缩率,仅造成0.81%的top-5准确率损失,而单次压缩仅实现2.30×压缩率和4.2%的准确率损失。
- 对于VGG-16,迭代方法实现了1.51×的压缩率,准确率损失仅为0.15%,优于单次压缩的1.2×压缩率和2.8%的损失。
- YOLOv2在迭代方法下实现2.13×压缩率,mAP损失为0.19%,而单次压缩仅实现1.7×压缩率和3.1%的mAP损失。
- Tiny YOLOv2通过迭代方法实现2.30×压缩率,mAP损失为0.10%,显著优于非重复基线的2.11×压缩率和2.7%的损失。
- 该迭代方法在CPU上实现了更高的加速比(AlexNet最高达×4.76),并在不同CPU和GPU平台上保持了稳定的性能表现。
- 每次迭代后进行微调可恢复分解过程中损失的准确率,收敛通常需要每轮5–15个周期。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。