论文解读《Learning Efficient Convolutional Networks through Network Slimming》

《Learning Efficient Convolutional Networks through Network Slimming》
原文地址:(https://link.zhihu.com/?target=https://arxiv.org/abs/1708.06519)
参考代码:https://github.com/mengrang/Slimming-pytorch
论文主要思路:
利用BN层的权重来评估输入channel的重要程度,对重要程度进行排序,假设剪枝率为50%,那么对于权重最小的一半剪掉,达到压缩模型。如下图,将较小的channel去除。

论文解读《Learning Efficient Convolutional Networks through Network Slimming》_第1张图片
下面说说如何通过BN层的权重来评估重要程度,其实就是对BN层的缩放因子施加L1正则化,将其加入损失函数之后,形成新的损失函数。L1正则化将BN层的缩放因子不断调整,通过缩放因子不断趋于0来识别不重要的channel。额外添加的正则项对模型性能的影响微忽极微,它甚至可以帮助模型训练出更高的精度。修剪不重要的通道可能会暂时带来性能的损耗,但这种影响可以通过随后的finetune进行修正。

论文解读《Learning Efficient Convolutional Networks through Network Slimming》_第2张图片
对应代码当中:
论文解读《Learning Efficient Convolutional Networks through Network Slimming》_第3张图片

你可能感兴趣的:(人工智能,深度学习)