引言
经典的卷积神经网络(ConvNet)VGG [31]在图像识别中取得了巨大的成功,其简单的架构由conv、ReLU和池化的堆栈组成。随着Inception [33,34,32,19]、ResNet [12]和DenseNet [17]的出现,许多研究兴趣转向了设计良好的架构,使得模型越来越复杂。一些最近的架构基于自动[44,29,23]或手动[28]架构搜索,或搜索的复合缩放策略[35]。
尽管许多复杂的ConvNet比简单的ConvNet具有更高的精度,但缺点也很明显
- 复杂的多分支设计(例如,ResNet中的跳跃连接和Inception中的分支级联)使得模型难以实现和定制,减慢了推理速度,降低了内存利用率
- 一些组件(例如,Xception [3]和MobileNets [16,30]中的深度卷积和ShuffleNet [24,41]中的通道重排)增加了存储器访问成本,并且缺乏对各种设备的支持。由于影响推理速度的因素太多,浮点运算(FLOPs)的数量并不能精确地反映实际速度。
由于多分支结构的优点都是用于训练,而缺点是不希望用于推理,因此我们提出通过结构重新参数化来解耦训练时多分支结构和推理时普通结构,即通过变换其参数将结构从一种转换到另一种.具体而言,网络结构与一组参数相耦合,Conv层由4阶核张量表示。如果某个结构的参数可以转换成另一个结构耦合的另一组参数,我们就可以用后者等价地替换前者,从而