Accelerating Convolutional Neural Networks with Dominant Convvolutional Kernel and Knowledge Pre-regression:
文章地址:https://link.springer.com/chapter/10.1007/978-3-319-46484-8_32
这篇文章介绍了加速和压缩卷积神经网络的两种方法:
(1)Dominant Convolutional Kernel:作者说这是一种矩阵的低秩分解,大意是从每个卷积核中提取n个1x1的点,这n个点每个点单独构成一个和原来卷积核大小相同的矩阵M1~n,再用n个可训练的权值参数对M1~n重构形成一个新的卷积核。如下图:
这样大概能压缩:n/co+n/(kh×kw)倍参数。
(2)Knowledge Pre-regression training method: 知识被定义为非线性映射(将一个输入图像映射成一个目标概率分布)。这篇文章的loss函数借鉴了Hint的知识蒸馏,函数形式类似于FItnets。训练hint/guided层的匹配函数和学生网络loss如下:
网络结构如下:
实验结果表明进行特定的超参数探索和设定后其性能可以和教师网络媲美但网络参数大大降低。
总结:本文对传统方法的矩阵分解和loss函数的定义进行了改进,取得了不错的压缩和加速效果。缺点是需要手动设置的超参数多,调试过程漫长。