Inception块
GoogleNet中的基本卷积块,从4个路径从不同层面抽取信息,然后再输出通道维合并。
数据输入后共有四条路径:第一个路径为1x1的卷积层;第二个路径先用1x1的卷积层修改通道数,在输入到3x3的卷积层,填充为1,使输入与输出的宽高相同;第三个路径同样先用1x1的卷积层修改输出通道数,再输入至5x5的卷积层,填充为2,使输入输出宽高相等;第四个路径使用3x3的最大池化层,填充为一,再用1x1的卷积层修改通道。最后将每条线路的输出在通道维度上连结,并构成Inception块的输出。
Inception输入与输出高宽不变,只有通道发生变化。每个层的输出通道数为Inception块的超参数。
与单一的卷积层相比,Inception块有更少的参数个数和计算复杂度。
模型架构
GoogleNet由5段、9个Inception块组成。
段1、2
段3
段3使用2个Inception块,将通道数从192变为480。
段4、5
Incpetion后续得到多类发展
Inception-v2加入了batch normalization。
v3修改了Inception块
v4使用残差连接
GoogleNet总结
Incpetion块用4条不同超参数的卷积层和池化层来抽取不同的信息,具有模型参数少,计算复杂度低的特点。
GoogleNet用了9个Inception块,是第一个达到上百层的网络,并在后续得到改进。