082、YOLOv11改进-BN层γ系数稀疏训练的Slimming剪枝方法——即插即用通道剪枝模块,参数量减少60%且涨点0.3%

📅 2026/8/8 12:16:46
082、YOLOv11改进-BN层γ系数稀疏训练的Slimming剪枝方法——即插即用通道剪枝模块,参数量减少60%且涨点0.3%
082、YOLOv11改进-BN层γ系数稀疏训练的Slimming剪枝方法——即插即用通道剪枝模块,参数量减少60%且涨点0.3%上个月调一个边缘部署的检测模型,模型跑在Jetson Orin上,帧率死活上不去。看了一圈,YOLOv11的参数量虽然比v8小,但通道数还是太富裕。试过直接剪枝,精度掉得没法看。后来翻到一篇老文章——Learning Efficient Convolutional Networks through Network Slimming,突然意识到之前一直忽略了一个关键点:BN层的γ系数。为什么BN层的γ能当剪枝的“筛子”Batch Normalization在训练时会给每个通道学一个缩放因子γ和一个偏移β。γ的大小直接反映了这个通道对输出的贡献程度——γ接近0的通道,输出基本被抑制,相当于这个通道在做无用功。Slimming的核心思路就是在训练时给γ加L1正则化,强迫它往0靠,然后一刀切掉那些γ小于阈值的通道。这个思路放在YOLOv11上有个天然优势:YOLOv11的C2f模块里大量使用BN层,每个卷积后面都跟着BN。这意味着我们可以对几乎所有的卷积层做通道级别的剪枝,而且剪完后的模型结构是合法的——因为剪掉的是通道,不是层。踩过的坑:稀疏训练阶段的learning rate第一次试的时候,直接把L1正则项加到损失函数里,γ的稀疏度死活上不去。后来发现是学习率的问题——稀疏训练阶段,学习率不能太小,否则正则项起不到作用。我一般把初始学习率设在0.01左右,用余