mobilenet压缩

来源:互联网 发布:移动数据开着不能上网 编辑:程序博客网 时间:2024/06/04 18:25

在可视化训练好的mobilenet 的weights时发现有挺多的卷积核的值很小,几乎为0,这些卷积核对整个model没有贡献,所以我们通过减枝压缩技术去去除这些卷积核。以绝对值为0.0001作为阀值,减枝后(没有finetune)直接valid发现精度跟mobilenet本身的精度一模一样,说明这些滤波器对mobilenet的模型一点点的影响都没有.

上图是mobilenet的valid 精度

上图是以阀值0.0001剪枝后的精度,发现一模一样。

以0.0001阀值剪枝后的结构图如下所示:


接着我同样的方法以0.08的阀值剪枝,没有finetune,精度损失了3%,模型大小减小为13.9M。

结构图


如果finetune的话,精度应该会上升的,这里我没作实验了,我后面直接剪枝了一个0.1阀值的,模型减少到10M多点,目前在finetune中,如果精度恢复的还不错,我就上传到github上。

mobilenet跟SSD结合精度还可以,所以这些压缩后的模型对于MobilenetSSD来说应该会提升点速度,特别我后面finetune的那个10M的模型,精度也不怎么损失的话,速度上来说应该会提升一小倍。但是mobilenet本身跟yolo的结合精度效果不大好,所以我后面去研究新的model了。

压缩后的cfg和weights文件链接地址:https://github.com/zunzhumu/darknet-mobilenet

更新:压缩后10M大小的mobilenet已经finetune到top-1:0.697,top-5:0.897,目前是top1掉了1.5%,top5掉了0.6%。