一篇讲网络加速的论文,来自2017CVPR。
文章链接: 《More is Less: A More Complicated Network with Less Inference Complexitv》
Introduction
目前做神经网络加速的主要有这几个方面: 低秩分解,定点运算、矢量量化、稀疏表示、特殊的轻量级网络结构。
再介绍本文方法之前,需要了解一下常见的卷积是怎样实现的。以caffe中的卷积为例,首先通过im2col将输入展开重排成一个大矩阵,然后执行矩阵乘法。具体可参考知乎上的一个高票回答,图示很清楚,
https://www.zhihu.com/question/28385679?sort=created。
下面用公式说明一下:
假设输入 \(X\in R^{H\times W\times C}\), 一共有 \(T\)个 \(k\times k \times C\)大小的卷积核,再假设卷积stride=1且存在padding,即保证输出 \(V\) 的大小与输入一致。
首先,通过im2col将输入展开重排成一个大矩阵 \(\hat X\in R^{HW\times kkC}\), 卷积核也被整理成了一个矩阵 \(W \in R^{kkC\times T}\), 于是输出 \(V\in