分组卷积 (Group Convolution)

1 分组卷积

Group Convolution 是对输入feature map进行分组,然后每组分别卷积。假设输入feature map的尺寸仍为 𝐶∗𝐻∗𝑊,输出feature map的数量为 𝑁个,如果设定要分成 𝐺 个groups,则每组的输入feature map数量为 \frac{𝐶}{𝐺},每组的输出feature map数量为 \frac{𝑁}{𝐺},每个卷积核的尺寸为 \frac{𝐶}{𝐺}∗𝐾∗𝐾,卷积核的总数仍为 𝑁 个,每组的卷积核数量为 \frac{𝑁}{𝐺},卷积核只与其同组的输入map进行卷积,卷积核的总参数量为 𝑁∗\frac{𝐶}{𝐺}∗𝐾∗𝐾,可见,总参数量减少为原来的 \frac{1}{𝐺},其连接方式如上图右所示。

2 分组卷积用途

分组卷积有以下一些特例:

2.1 Depthwise Convolution

分组卷积的主要作用是减少参数量,特别地,当 G=C=N,每个卷积核均为 1∗𝐾∗𝐾 时,Group Convolution 就变成了 Depthwise Convolution。可以最极值地减少参数。

2.2 Global Depthwise Convolution

特别地,当 G=C=N,每个卷积核尺寸 K=W=H 时,则 Group Convolution 变成 Global Depthwise Convolution。

参考文献

[1] https://www.cnblogs.com/shine-lee/p/10243114.html