Inception系列详解

2023-12-15 03:36:17

1.Inception结构

咱们知道当做卷积的时候,是选择1*1的卷积、3*3、5*5、MaxPooling还是Multiple1*1,到底用哪个比较好,对于Inception块来说,这几个卷积都选择了 ,要兼容并蓄,设计了不同的通道,使用不同窗口大小的卷积层,将4个路径从不同层面抽取信息,然后在输出通道维度合并。

其主要的思想是设计了一个inception模块,并通过不断复制这些inception模块来提高网络的深度和宽度,不过GooLeNet主要还是在深度上扩展这些inception模块。


 

左图(a)为Inception模块的初始版本,之前学过的网络架构都是卷积层串行的结构,但是Inception结构是并行结构,也就是说将我们的输入同时输入到四个分支中进行处理,处理后再将我们所得到的特征矩阵按深度进行拼接,得到我们的输出特征矩阵。即每一个inception模块中有四个并行通道,并在通道结束时进行concat。


1x1 conv在文章中主要是用来进行维度的降低以避免计算瓶颈。
其还在前面的网络层一些分支上加入了额外的softmax loss以避免梯度消失问题

通过四个分支可以得到不同尺度的特征矩阵。而且,我们每个分支所得到的特征矩阵的高和宽必须相同,否则就无法按深度进行拼接。

然后我们再看图(b),相对比加了三个1*1的卷积,意思是加了一个降维的功能。

四个并行通道:

    1x1的conv:首先输入先经过1*1的卷积层;通道数是64;主要是用来融合多通道特征。借鉴了【Network in Network】,可以进行输入feature map的降维升维而不会太过损失输入的空间信息;
   1x1conv followed by 3x3 conv:然后第二条路,首先通过1*1的卷积层对通道数做变换,降低通道数来控制模型的复杂度,然后再通过3*3的卷积层,pad=1,使得输入和输出的高宽一样;3x3 conv增大feature map的感受野。
    1x1 conv followed by 5x5 conv

文章来源:https://blog.csdn.net/weixin_45622568/article/details/132733580
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。