[论文解读] Channel Pruning via Automatic Structure Search
本文提出ABCPruner,一种新颖的通道剪枝方法,利用人工蜂群(ABC)算法自动搜索最优剪枝网络结构——即每层的通道数——而非依赖启发式滤波重要性评分。通过将搜索空间限制在预定义的通道百分比(如10%、20%、...、70%)内,该方法大幅降低组合复杂度,并实现高效端到端微调,在显著减少训练轮次的情况下达到最先进精度。
Channel pruning is among the predominant approaches to compress deep neural networks. To this end, most existing pruning methods focus on selecting channels (filters) by importance/optimization or regularization based on rule-of-thumb designs, which defects in sub-optimal pruning. In this paper, we propose a new channel pruning method based on artificial bee colony algorithm (ABC), dubbed as ABCPruner, which aims to efficiently find optimal pruned structure, i.e., channel number in each layer, rather than selecting "important" channels as previous works did. To solve the intractably huge combinations of pruned structure for deep networks, we first propose to shrink the combinations where the preserved channels are limited to a specific space, thus the combinations of pruned structure can be significantly reduced. And then, we formulate the search of optimal pruned structure as an optimization problem and integrate the ABC algorithm to solve it in an automatic manner to lessen human interference. ABCPruner has been demonstrated to be more effective, which also enables the fine-tuning to be conducted efficiently in an end-to-end manner. The source codes can be available at https://github.com/lmbxmu/ABCPruner.
研究动机与目标
- 解决现有通道剪枝方法依赖规则或重要性驱动通道选择所导致的次优性能问题。
- 降低深度卷积神经网络中最优剪枝网络结构的不可行组合搜索空间。
- 通过基于优化的搜索框架,实现自动、端到端的通道剪枝,最大限度减少人工干预。
- 通过最小化微调所需轮次,提升训练效率。
提出的方法
- 通过将每层保留的通道限制在预定义百分比(如10%、20%、...、70%)来限制搜索空间,将总组合数从∏c_j减少至(10α)^L。
- 采用人工蜂群(ABC)算法,迭代搜索所有层的最优通道配置。
- 每个候选结构均从预训练完整模型中随机分配滤波器初始化,并训练固定轮次以评估适应度(精度)。
- ABC算法根据适应度评分更新结构种群,通过多轮迭代逐步优化候选解。
- 选择表现最佳的结构作为剪枝网络的初始化,并通过少量轮次的端到端微调进行优化。
- 搜索过程与微调解耦,可在模型适配前高效完成结构发现。
实验结果
研究问题
- RQ1通过ABC等元启发式方法进行自动结构搜索,是否能在准确率与效率上超越基于启发式或重要性驱动的通道剪枝?
- RQ2将搜索空间限制在离散通道百分比(如10%、20%、...、70%)是否能显著降低组合复杂度,同时不损失最优性?
- RQ3ABC算法能否在极少人工干预下,有效识别深层卷积神经网络中所有层的最优剪枝结构?
- RQ4ABCPruner的训练效率与现有剪枝方法相比如何,特别是在总训练轮次方面?
主要发现
- ABCPruner在ImageNet上仅用102个训练轮次(12轮用于搜索,90轮用于微调)即达到74.84%的top-1准确率,显著少于ThiNet(244轮)和MetaPruning(160轮)等方法。
- 对于通道剪枝率达50%的ResNet-50,ABCPruner将FLOPs从2.56G降低至1.30G,同时将准确率从71.01%提升至72.58%。
- 该方法在多个模型(包括ResNet-56、ResNet-50和VGGNet)上均实现最先进性能,准确率持续提升且FLOPs显著降低。
- α(设为70%)的影响表明,模型压缩与准确率之间存在权衡,α值越高,准确率越好,但压缩程度越低。
- ABCPruner在准确率与训练效率两方面均优于基于重要性的方法(如ThiNet、CP)和自动剪枝基线方法(如MetaPruning)。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。