《表4 VGG16和ResNet18的剪枝结果》
在对VGG16网络进行剪枝前,先对其13个卷积层的卷积核L1范数分布进行了分析,结果如图5(a)所示。可以看出,含有256个卷积核的C6,C7层的范数分布高度相似,含有512个卷积核的C8,C9,C10,C11,C12,C13层的范数分布相似度也很高。因此,尝试着只保留一个具有相似分布的卷积层,即删除C7,C9,C10,C11,C12,C13六个卷积层,然后重新训练网络,结果发现准确率几乎无损失。由此可以猜测,具有相似L1范数分布的卷积层极有可能为冗余层,训练后的范数分布如图5(b)所示。精简后的VGG16还剩下7个卷积层,其L1范数分布依然不均,需要进行进一步剪枝。前文中已经提到,针对规模较大的网络不易采用遍历组合的方式,而是在全部组合中进行随机抽样,选取相对较优的组合进行迭代。在实验的过程中发现,如果某个卷积层一次性剪枝较多则严重影响最终的准确率,所以为了提高随机组合的质量,对每个卷积层每次剪枝的上限进行设定。经过多次实验发现,每次随机选取10个组合,每次每层最多裁剪该层10%的卷积核个数较为适宜。在保证准确率相当的情况下,经过18轮迭代后剪枝完成,各卷积层的卷积核L1范数分布如图5(c)所示,可以看出,范数分布均匀。实验结果如表4所示,剪枝后的Number of parameters和FLOPS分别为剪枝前的54.2%和18.6%,准确率仅下降0.12%。
图表编号 | XD00188287100 严禁用于非法目的 |
---|---|
绘制时间 | 2020.08.25 |
作者 | 夏国强、尚振宏 |
绘制单位 | 昆明理工大学信息工程与自动化学院、昆明理工大学信息工程与自动化学院 |
更多格式 | 高清、无水印(增值服务) |