论文笔记——ThiNet: A Filter Level Pruning Method for Deep Neural Network Compreesion
论文地址:https://arxiv.org/abs/1707.06342
主要思想
- 选择一个channel的子集,然后让通过样本以后得到的误差最小(最小二乘),将裁剪问题转换成了优化问题。
- 这篇论文题目说是对filter的裁剪,其实是对channel的裁剪,对channel裁剪以后,当然涉及filter的裁剪。
- 对channel裁剪以后当然可以实现压缩和加速。
实现细节
- 在i+1层中选择channel的子集,因为filter i+1层的个数没有变,所以layer i + 2层的尺寸大小也没有变。
- 选择子集以后,filter layer i层对应的filter就可以被裁减掉(输出个数裁剪),相应filter i+1层的filter也可以被裁减掉(输入个数裁剪)
- 因为选子集然后最小化误差是一个NP问题,因此本文采用了贪心算法,每次选择添加一个channel使得通过当前样本得到的误差最小。
- 本文对残差网络的处理是,因为最后要求和,求和的时候需要保持channel数目一样,因为只对前两个卷积进行了裁剪,最后一个没有裁剪。也就是它没有对identical feature map进行裁剪。