白色的\(1\times 1\)卷积层是用来降低通道数的,蓝色的卷积层是用来学习特征的
大致解释一下这些数字是怎么分配的。现在我们的通道数是\(192\),于是我们假设最后输出的通道数是\(256\);考虑这些通道如何分配:我们知道\(3\times 3\)的卷积层性质很好(参数不算太多,学习能力也比较强),所以分配一半的通道;剩下的通道的一半在分配给\(1\times 1\)卷积,也就是不看空间信息,只看像素信息;再剩下的通道数对半分即可。实际上这些参数都是调出来的
接下来仔细看一下各层的设计
可以看出,GoogleNet没有Alexnet这么狠,降低宽高的过程更缓慢。复习一下为什么要降低宽高增加通道数:降低宽高是为了降低复杂度,增加通道数是为了学习更多特征
可以看出,超参数之间是总结不出什么规律的。所以上面的设计思路是大概的,真正的参数都是调出来的
V3用的挺多的。中间两种修改的思想就是我先看行信息不看列信息,再看列信息不看行信息
左边是V3,右边是原始的
效果见下
提醒一下,圆的大小代表内存占用大小
注意这里上百层不是指深度,而是指块
GoogleNet的问题就是太复杂了