RepVGG:结构重参数化的详细解释
RepVGG Detailed Explanation of Structural Re-parameterization
揭秘 RepVGG:揭示结构重参数化的奥秘
— 为什么在已经有几篇优秀的资料可用的情况下,我还要写这篇关于 RepVGG 的文章?
— 答案在于我提供的独特视角。
— 虽然其他文章可能会涉及类似的概念或展示代码的推理速度,但我关注的是在概念层面上提供全面的结构参数化理解。
我将深入探讨这些1×1卷积是如何进一步参数化为3×3卷积,以及恒等快捷方式是如何转化为1×1卷积。本文旨在提供一个深入的说明,填补现有解释中的空白。在我们修改原始的VGG架构时,我们引入了残差分支和1×1卷积分支。这些添加是为了使后续的结构重参数化成为一条路径。为了促进这个转变,我们仔细调整了这些分支的位置,而没有引入跨层连接。广义上说,在训练中使用的 RepVGG 模型包括三条路径:常规卷积(conv_3x3)、1×1卷积(conv_1x1)和一个恒等路径。这些路径中的每一个都伴随着批归一化(BN)层。在接下来的章节中,我们将详细解释这三条路径如何在推理过程中合并为一个统一的conv_3x3单元。
合并 conv_1x1 和 conv_3x3
首先让我们回顾一下 conv_3x3 的过程:
详细解释一下,假设输入特征图的大小为(1, 2, 3, 3),即批量大小为1,通道数为2,特征维度为3乘3。输出特征图的大小与输入特征图的大小相同,步长为…