GoogLeNet Inception1 模块理解,欢迎讨论

我们先来看看较早的AlexNet
AlexNet 中卷积的形式为
    1卷积的对象为:上一层输出特征。
    2卷积的方法为:对上一层每个特征做同样大小视觉窗口的卷积(如3*3),然后同一个卷积核操作的结果做线性合并。

GoogLeNet
Inception1 中卷积的形式为

    1卷积的对象为: 上一层的输出特征。
    2卷积的方法为:
          第一步: 
                      对上一层每个特征都是用1*1的窗口做卷积,然后同一个卷积操作的结果做线性合并。
                      对上一层每个特征都是用3*3的窗口做卷积,然后同一个卷积操作的结果做线性合并。
                      对上一层每个特征都是用5*5的窗口做卷积,然后同一个卷积操作的结果做线性合并。
          第二步:
                      对11, 3*3, 5*5,卷积出来的结果做线性合并
          关于第二步我的理解是:

                       5*5卷积出来的特征是5*5范围信息的特征,
                       3*3卷积出来的特征是3*3范围信息的特征,
                       1*1卷积出来的特征是1*1范围信息的特征。
         当我们将这三个视觉范围内的特征相结合,那合并出来结果就代表了视觉范围从1*1 一直扩展到 5*5的各个视觉范围内的总的特征信息。就类似我们将局部特征和大一点的局部特征,然后再大一点的局部特征,和到一起来当做这个范围内的特征了。
        举例来说:我一次视觉记录下来了你的个头(大的范围),脸长什么样(局部范围),眼睛漂不漂亮(更小的局部范围),这种分层次的特征被一起记录了下来。
        而这种不同视域范围(宽度)上的关联会通过多个Inception1模块普通的级联(pool),最终遍布到整个图像的视域中。

相比而言AlexNet中少了这种关联性,它的每一次的下一级的特征都是同样视域里特征的组合,而GoogLeNet inception1 中的下一次特征包含了相同视域 和 不同视域里特征组合,所能描述的特征更有空间渗透感。

        至于作者为什么把原始的特征也池化一次(就是inception里面的那个maxpooling)传递下来,我的理解是,上层特征直接跳跃到输出能让每一次的结果里也包含了上层的信息,这种传递到后面也能够产生跨层特征的组合。

        inception后的结果其实就类似是由 原始x 和 卷积值 f1(x), f2(x), f3(x) 组合影响得到的。 

其实个人感觉有点类似RNN里那种操作了,类似文字处理时要把那种上下文关系用运算表示出来,并且能够训练调节。

inception中把那种空间上下文,也关系到一起产生影响,来进行调节。

以上只为个人的一些前期理解,如有错误,欢迎指出,不胜感激,欢迎讨论。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值