6 ResNeXt

1 前言

最近在b站发现了一个非常好的 计算机视觉 + pytorch 的教程,相见恨晚,能让初学者少走很多弯路。
因此决定按着up给的教程路线:图像分类→目标检测→…一步步学习用pytorch实现深度学习在cv上的应用,并做笔记整理和总结。

up主教程给出了pytorch和tensorflow两个版本的实现,我暂时只记录pytorch版本的笔记。

参考内容来自:

2 ResNeXt 详解

对比上一节的ResNet,只是修改了block

如下图,左侧就是我们上一节ResNet中的block,右侧是修改后的block

2.1 Group Convolution

Group Convolution

如上图左侧,分为两组卷积,每组的通道数为n/2。分别进行卷积后再合并通道数为n。

参数个数

上图中上面的普通卷积参数个数:$kkC_{in}*n$

下面使用Group Convolution时参数个数:$(kk{C_{in}\over g}{n\over g})g$

其中

n:输入特征的通道数

k:卷积核大小

g:分为g组卷积

因此原有的block就可以替换为下图

group设置为32是因为作者测试效果最好。

最后如果是原block层数小于3,那么是不需要转换block的。