Inception模块分为V1、V2、V3和V4。

  1. V1(GoogLeNet)的介绍

论文:Going deeper with convolutions

论文链接:https://arxiv.org/pdf/1409.4842v1.pdf

主要问题:

  1. 每张图中主体所占区域大小差别很大。由于主体信息位置的巨大差异,那选择合适的卷积核相对来说就比较困难。信息分布更全局性的图像适合选用较大的卷积核,信息分布较局部的图像适合较小的卷积核。
  2. 非常深的网络更容易过拟合。将梯度更新传输到整个网络是很困难的。
  3. 简单地堆叠较大的卷积层非常消耗计算资源。

解决方法:

作者在神经网络设计上不是增加深度而是增加网络宽度,并且为了降低算力成本,作者在3*3和5*5卷积层之前添加额外的1*1卷积层,来限制输入信道的数量。

  2.V2介绍

论文:Rethinking the Inception Architecture for Computer Vision

论文地址:https://arxiv.org/pdf/1512.00567v3.pdf

主要问题:

  1. 减少特征的表征性瓶颈。直观来说,当卷积不会大幅度改变输入维度时,神经网络可能会执行地更好。过多地减少维度可能会造成信息的损失,也成为[特征性瓶颈]。
  2. 使用更优秀的因子分解方法,卷积才能在计算复杂度上更加高效。

解决方法:

最左侧一排将5*5分解成两个3*3,实际上一个5*5卷积的计算成本是一个3*3卷积的2.78倍。所以叠加会提升性能。如下图:

推论出,若有n*n卷积核,那么我们可以分解为1*n和n*1两个卷积。如下图,若n为3,则和上图一致:

但是,为了解决表征性瓶颈,我们若拓宽模型而不是加深模型,那么会避免信息损失,如下图:

   3.V3介绍

论文:Rethinking the Inception Architecture for Computer Vision

论文地址:https://arxiv.org/pdf/1512.00567v3.pdf

主要问题:

  1. 作者注意到辅助分类器直到训练过程快结束时才有较多的贡献,那时准确率接近饱和。作者认为辅助分类器的功能是正则化,尤其是它们具备BN和dropout时。
  2. 是否能够改进V2而无需大幅更改模块仍需要研究。

解决方法:

  1. RMSProp优化器;
  2. Factorized7*7卷积;
  3. 辅助分类器使用了BN;
  4. 标签平滑(添加到巡视公式的一种正则化项,旨在组织网络对某一类别过分自信,即阻止过拟合)。

  4.V4介绍

论文:Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning

论文地址:https://arxiv.org/pdf/1602.07261.pdf

主要问题:

使模块更加一致。作者还注意到某些模块有不必要的复杂性。这允许我们通过添加更多一致的模块来提高性能。

解决方法:

图1左侧是V4的整体结构,图1右侧是V4的stem部分,用于对于进入Inception模块钱的数据进行预处理,减小对图像压缩的精度损失。stem部分就是多次卷积+2次池化,池化采用了V3论文里面提到的卷积+pooling并行的结构,来防止bottleneck问题。stem后用了3种Inception模块。直接的Reduction模块起到了pooling作用,同样使用了并行的结构来防止bottleneck问题。

图1:Inception-V4结构

图2:从左到右分别为Inception-V4中的InceptionA\B\C模块

图3所示,V4中引入了专用的reduction block,它被用于改变网络的宽度和高度。

图3:Inception-V4中的Reduction模块

小总结:

  1. 降维:比如,一张500*500且厚度depth为100的图片在20个filter上做1*1的卷积,那么结果的大小为500*500*20.
  2. 加入非线性。卷积层之后经过激励层,1*1的卷积在前一层的学习表示上添加了非线性激励,提升网络的表达能力;可以在保持特征面尺度不变的(即不损失分辨率)的前提下大幅度增加非线性特性(利用后接的非线性激活函数),把网络坐的很深。

Inception V1、V2、V3和V4的更多相关文章

  1. GoogLeNet 之 Inception v1 v2 v3 v4

    论文地址 Inception V1 :Going Deeper with Convolutions Inception-v2 :Batch Normalization: Accelerating De ...

  2. 从Inception v1,v2,v3,v4,RexNeXt到Xception再到MobileNets,ShuffleNet,MobileNetV2

    from:https://blog.csdn.net/qq_14845119/article/details/73648100 Inception v1的网络,主要提出了Inceptionmodule ...

  3. android google map v1 v2 v3 参考

    V1,V2已经不被推荐使用,谷歌强烈推荐使用V3. 本人在选择时着实纠结了良久,现在总结如下: 对于V1,现在已经申请不到API KEY了,所以不要使用这个版本.这个是网址:https://devel ...

  4. 51nod Bash游戏(V1,V2,V3,V4(斐波那契博弈))

    Bash游戏V1 有一堆石子共同拥有N个. A B两个人轮流拿.A先拿.每次最少拿1颗.最多拿K颗.拿到最后1颗石子的人获胜.如果A B都很聪明,拿石子的过程中不会出现失误.给出N和K,问最后谁能赢得 ...

  5. react-router 从 v2/v3 to v4 迁移(翻译)

    react-router v4 是完全重写的,所以没有简单的迁移方式,这份指南将为您提供一些步骤,以帮助您了解如何升级应用程序. 注意: 这份迁移指南适用于react-router v2和v3,但为简 ...

  6. 51Nod 最大M子段和系列 V1 V2 V3

    前言 \(HE\)沾\(BJ\)的光成功滚回家里了...这堆最大子段和的题抠了半天,然而各位\(dalao\)们都已经去做概率了...先%为敬. 引流之主:老姚的博客 最大M子段和 V1 思路 最简单 ...

  7. 51Nod 最大公约数之和V1,V2,V3;最小公倍数之和V1,V2,V3

    1040 最大公约数之和 给出一个n,求1-n这n个数,同n的最大公约数的和.比如:n = 6 1,2,3,4,5,6 同6的最大公约数分别为1,2,3,2,1,6,加在一起 = 15 输入 1个数N ...

  8. Feature Extractor[inception v2 v3]

    0 - 背景 在经过了inception v1的基础上,google的人员还是觉得有维度约间的空间,在<Rethinking the Inception Architecture for Com ...

  9. 论文阅读笔记四十二:Going deeper with convolutions (Inception V1 CVPR2014 )

    论文原址:https://arxiv.org/pdf/1409.4842.pdf 代码连接:https://github.com/titu1994/Inception-v4(包含v1,v2,v4)   ...

随机推荐

  1. Python--day29--configparser模块(配置)(不熟,以后要找时间重学)

  2. js基础——变量、作用域、内存

    1.new关键字创建的是引用类型: eg. var box = new Object();      box.name = "Linda";//引用类型添加属性没问题     al ...

  3. MySQL视图操作命令详解

    内容目录 创建视图 删除视图 修改视图 查看视图 §创建视图 在MySQL中,创建视图的完整语法如下: CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | ME ...

  4. 打地鼠游戏(2)之定义地鼠函数及函数原型 prototype

    在JavaScript中,prototype对象是实现面向对象的一个重要机制. 每个函数就是一个对象(Function),函数对象都有一个子对象 prototype对象,类是以函数的形式来定义的.pr ...

  5. 【21.58%】【codeforces 746D】Green and Black Tea

    time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard ou ...

  6. springBoot中“MockMvc”的进行Controller进行单元测试:application/octet-stream' not supported问题小结

    解决方案:这个问题其实是Content-type的问题,只需要在相关的代码加入相关Content-type中就可以了,代码如下: mockMvc.perform(post("/user&qu ...

  7. 用es5实现模板字符串

    废话不多说,主要是利用正则表达式replace+eval动态取值(纯属娱乐) String.prototype.myReplace = function(){ return this.replace( ...

  8. Windows 服务安装与卸载 (通过 Sc.exe)

    1. 安装 新建文本文件,重命名为 ServiceInstall.bat,将 ServiceInstall.bat 的内容替换为: sc create "Verity Platform De ...

  9. Team Foundation Server 2015使用教程【9】:tfs用户账号切换

  10. centos7靶机获取不到ip

    尝试了好多方法都获取不到靶机ip: 1.首先检查网络链接是否正常 2.重启网卡  /etc/init.d/network restart 3.修改网卡ONBOOT=yes vi /etc/syscon ...