Motivation & Abstract
作者指出当前的CNN加速工作分为三种:
-
optimized implementation (直接优化?)
-
量化(这个还没接触过,不过以后一定会钻研)
-
structured simplification 结构简化
作者的方法就属于第三种结构简化,这种方法又可以细分为三种,如下图:
图c是张量分解,即将一个卷积层分解为若干个,但这种方法分解不了1*1的卷积,而且会增加计算量;图b是稀疏链接,即删除一些权重边,这种方法虽然可以达到很好的压缩比,但是剪枝后的网络很不规则,难以在硬件上实现。
图d是作者使用的通道剪枝,相当于给网络“瘦身”直接删除某些通道。
作者提出了如下图所示的压缩流程:
算法目标是删除特征图B中的某些通道,B一共有c个channel,同时要使B与卷积核c(size:nxcxkhxkw)的卷积结果与特征图C相差最小,删除B中的某些通道后,他后面的卷积核和前面卷积核的对应部分都将被删除,在对通道进行剪枝后,用剩下的通道重构输出。
Method
首先要做的是选择通道,作者指出,彻底搜索是NP难的,作者使用LASSO回归的方法近似找到最有代表性的通道。
LASSO回归:Lasso是基于惩罚方法对样本数据进行变量选择,通过对原本的系数进行压缩,将原本很小的系数直接压缩至0,从而将这部分系数所对应的变量视为非显著性变量,将不显著的变量直接舍弃。
这部分我自己看的迷迷糊糊,这位大神的博客讲的非常好,具体看他的:传送门
(因为自己是报着读论文的目的顺便写写阅读笔记,所以自己就偷个懒嘿嘿
然后作者使用线性最小二乘回归的方法重建特征图:
Experiment
具体见论文
Conclusion
主要方法那里看了很久,感觉数学功底还是需要的,继续加油。