[论文解读] 2PFPCE: Two-Phase Filter Pruning Based on Conditional Entropy
提出一个两阶段滤波裁剪框架(全局然后逐层),使用条件熵来选择滤波器,在 VGG-16 和 CIFAR-10 上实现显著的 FLOPs 降低,同时损失较小的准确率,与此前准则相比具有更好的压缩效果。
Deep Convolutional Neural Networks~(CNNs) offer remarkable performance of classifications and regressions in many high-dimensional problems and have been widely utilized in real-word cognitive applications. However, high computational cost of CNNs greatly hinder their deployment in resource-constrained applications, real-time systems and edge computing platforms. To overcome this challenge, we propose a novel filter-pruning framework, two-phase filter pruning based on conditional entropy, namely extit{2PFPCE}, to compress the CNN models and reduce the inference time with marginal performance degradation. In our proposed method, we formulate filter pruning process as an optimization problem and propose a novel filter selection criteria measured by conditional entropy. Based on the assumption that the representation of neurons shall be evenly distributed, we also develop a maximum-entropy filter freeze technique that can reduce over fitting. Two filter pruning strategies -- global and layer-wise strategies, are compared. Our experiment result shows that combining these two strategies can achieve a higher neural network compression ratio than applying only one of them under the same accuracy drop threshold. Two-phase pruning, that is, combining both global and layer-wise strategies, achieves 10 X FLOPs reduction and 46% inference time reduction on VGG-16, with 2% accuracy drop.
研究动机与目标
- 在资源受限部署中,推动在保持准确性的前提下降低 CNN 推理成本。
- 引入基于条件熵的滤波裁剪准则,以量化每个滤波器对准确性的贡献。
- 开发将全局与逐层策略相结合的两阶段裁剪框架,以实现更高的压缩。
- 提出最大熵权重冻结技术以在微调阶段缓解过拟合。
- 在如 CIFAR-10 的 VGG-16 等 CNN 上证明有效性,测量 FLOPs、数据量和实际推理时间。
提出的方法
- 在卷积层内定义滤波器的条件熵作为裁剪的准则。
- 阶段 I:通过移除具有最小条件熵的滤波器进行全局裁剪,然后进行带有准确率下降阈值的迭代微调。
- 阶段 II:使用条件熵进行逐层贪婪裁剪,在微调时由准确率损失阈值进行约束。
- 强制最大熵冻结机制,在反向传播时保持具有最大熵的神经元对应的权重不变,以降低过拟合。
- 基于最大条件熵滤波器的激活来更新偏置项,以在裁剪后保留信息。
- 比较全局与逐层策略,证明两阶段的组合在相同准确度约束下能获得更高的压缩。
- 提供计算 con_ent 的算法细节,该值通过对损失条件下的逐层熵进行聚合并选择裁剪的前若干滤波器。
实验结果
研究问题
- RQ1条件熵是否能作为有效准则,识别在移除后对模型准确性影响最小的滤波器?
- RQ2在固定的准确率下降阈值下,结合全局和逐层裁剪策略是否比单独使用任一策略获得更高的压缩?
- RQ3最大熵基础权重冻结对裁剪与微调过程中过拟合及最终准确率的影响?
- RQ42PFPCE 的裁剪决策如何转化为实际的 FLOPs、模型大小和在标准 CNN 上的真实推理时间?
- RQ5所提出的裁剪方法在体系结构(如 VGG-16、ResNet-18)和数据集(如 CIFAR-10)上是否鲁棒?
主要发现
- 2PFPCE 在准确率损失较小的情况下实现显著裁剪(例如在某些设置下,VGG-16 训练 CIFAR-10 时约损失 2%)。
- 全局裁剪后再进行逐层裁剪(两阶段)比任一阶段单独执行获得更高的压缩。
- 阶段 I 的裁剪加上基于最大熵的冻结有助于缓解微调过程中的过拟合。
- 阶段 II 的逐层裁剪结合条件熵在保持给定阈值的前提下进一步减少滤波器。
- 实验证据显示数据量和真实推理时间显著下降,FLOPs 也有显著降低(例如在所报道情景中,VGG-16 的 FLOPs 约下降 10 倍,推理时间降幅约 46%)。
- 基于条件熵的准则在逐层裁剪实验中优于 L1-范数、APoZ 及激活熵等准则。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。