针对CIFAR-10的ResNet为何Layer1输出通道为16的疑问
关于CIFAR-10 ResNet Layer1输出通道数的解释
这其实是教程里特征图尺寸与滤波器数量的对应规则导致的:
教程里明确说了,特征图尺寸的三个阶段
{32, 16, 8},是和滤波器数量{16, 32, 64}一一对应的:- 第一个阶段(对应Layer1)处理的是32x32尺寸的特征图,所以匹配第一个滤波器数量16,因此这个阶段里的所有卷积层都用16个滤波器,输出通道数自然是16。
- 当进入第二个阶段时,特征图尺寸下采样到16x16,就会切换到32个滤波器,输出通道变为32;第三个阶段下采样到8x8,对应64个滤波器,输出通道64。
再结合n=1的设置:每个特征图尺寸阶段包含2个卷积层,所以Layer1就是第一个阶段的这2个卷积,它们都使用16个滤波器,最终输出就是32x32x16。
另外补充一点:教程里说的“通过每层第一个卷积步长设为2实现下采样”,这里的“每层”指的是每个特征图尺寸阶段的第一个卷积——也就是第二个阶段的第一个卷积才会用步长2把32x32降到16x16,同时切换到32个滤波器;Layer1属于第一个阶段,不需要下采样,所以卷积步长都是1,特征图尺寸保持32x32,通道数由对应的16个滤波器决定。
内容的提问来源于stack exchange,提问作者Bobby Joe
相关产品推荐
相关产品推荐

