Group convolution and Channel Shuffle

Group convolution 分组卷积,最早在AlexNet中出现。
减少了参数量,输入80为,经过3x3,32filters的Convolution,推理参数计算量为80x 3x3 x 32,假设分为4个group,总的计算量为4 x(20x 3x3 x 8),推理计算量为原来的1/groups。
每个group输出的channels,最后经过concat。与不分组的不同之处在于,每组输出的channels之间没有相关性,只是concat。

那么问题来了:
假定卷积的组数完全一致,如果把网络的所有层都用分组卷积来实现,则会发现网络被拆分成多份,且每份之间没有信息交流,网络性能不如人意。为此,旷视研究院提出通道重排(Channel Shuffle)。https://www.cnblogs.com/hellcat/p/10318630.html

Xception:没有使用Channel Shuffle而是用了pointwise group。原因是Xception目的不在于模型压缩,而是提高性能
https://www.davex.pw/2018/02/05/breadcrumbs-about-inception-xception/#Pointwise-Conv

https://mp.weixin.qq.com/s?__biz=MzI4MjM1NzQ0OA==&mid=2247484089&idx=1&sn=5124de2aa8e4ecd532a8455001d4c409&chksm=eb9a791edcedf00813403bbc10fceb37309b11fb0d34417a9e80a7f055f5d86f408e46ab34eb&mpshare=1&scene=23&srcid=#rd

你可能感兴趣的:(Group convolution and Channel Shuffle)