AI简报-重参数化RepVGG

AI论文简报2026年6月7日3

AI简报-重参数化RepVGG

本简报分享的是清华和旷视等2021年的一篇对于VGG-style CNN结构的一次优化,题目为:RepVGG: Making VGG-style ConvNets Great Again。

RepVGG指出当前的卷积CNN网络存在如下弊端:

  • 复杂的多分支网络设计,导致推理显存增加且耗时增加, 如Resnet的残差连接, Inception的多分支concat等
  • 另外一个轻量化的网络设计,如MobileNets的depthwise,以及ShuffleNets中channel shuffle,增加了内存使用,同时对于某些设备支持不好

就Resnet的残差连接而言,文中进行了分析:

可知,因为残差的存在,在残差操作之前,会多一个显存的使用。

如何设计一个结构简单,满足精度要求且推理性能优越的网络结构呢?

RepVGG采用了简单堆叠3x3卷积的方式设计了一个plain网络,同时在推理时进行参数合并。

RepVGG

RepVGG的思路:

  • 推理:只保留3x3卷积和RELU
  • 训练:多分支(1x1,identity)来增加特征学习
  • 训练的模型通过重参数化将多分支合并成一个3x3卷积

所以关键是怎么重参数化?重参数化的结果就是将3x3卷积、1x1卷积和identity以及BN层合并成一个3x3的卷积。

  • 3x3卷积和1x1卷积的合并

    所谓卷积操作,就是卷积核中权重与feature中的指定位置进行相乘后再汇总。而1x1卷积可以转化为中间值为1x1卷积核,其他权重为0的3x3卷积核。

    所以3x3卷积和1x1卷积的合并就是1x1卷积核与3x3卷积核中间位置的值相加。

  • 3x3卷积和identity合并

    所谓identity就是feature自身,可以理解为对角权重为1的1x1卷积核。其他同3x3卷积和1x1卷积的合并

  • 3x3卷积与BN合并

    3x3卷积与BN合并就是将BN转化为3x3卷积。BN层为归一化层

    而BN(conv)为:

    所以合并成的一个新的3x3卷积: