这篇文章介绍的网络有Inception V1、Inception V2、Inception V3、Inception V4与Inception-ResNet-V2。

1、Inception V1

  主要贡献:

  (1)提出inception architecture并对其优化

  (2)取消全连层(因为FC网络输入要固定、参数过多、容易过拟合)

  (3)运用auxiliary classifiers加速网络converge,简称AC

  

  其中1×1的卷积层可以控制kernels的数量,还增加了网络的非线性程度。多个卷层后将卷积直接concate一下。

  网络中间层加入了两个AC,这两个AC在训练的时候也跟着学习,同时把自己学习到的梯度反馈给网络,算上网络最后一层的梯度反馈,GoogLeNet一共有3个“梯度提供商”,先不说这么做有没有问题,它确实提高了网络收敛的速度,因为梯度大了嘛。另外,GoogLeNet在做inference的时候AC是要被摘掉的。

2、Inception V2

  该团队又提出了inception v2的结构,基于上面提到的一些原则,在V1的基础之上主要做了以下改进:

  (1)使用BN层,将每一层的输出都规范化到一个N(0,1)的正态分布,这将有助于训练,因为下一层不必学习输入数据中的偏移,并且可以专注与如何更好地组合特征(也因为在v2里有较好的效果,BN层几乎是成了深度网络的必备)。这也是最大贡献Batch Normalization(BN)。BN层放在每个隐藏层激活函数前,即 wx+b 之后,之后再加激活函数。总的来讲,加入BN层的反向传播没有发生根本的改变,只是多了一个反向计算过程(batchnorm_backward函数)而已。

  (2)使用两个小的3*3卷积核代替一个5*5的大卷积核,好处是:相同的感受野、更少的参数、更深的网络提取特征。

  (3)尝试更小的卷积:1*3 + 3*1 替换3*3 卷积。

3、Inception V3

  论文做出的贡献主要有4个:

  • 1、分解大filters,使其小型化、多层化,其中有个“非对称卷积”很新颖
  • 2、优化inception v1的auxiliary classifiers
  • 3、提出一种缩小特征图大小的方法,说白了就是一种新的、更复杂的pooling层
  • 4、Label smooth,“标签平滑”,很难用中文说清楚的一种方法

4、Inception V4

  各种改网络结构,各种复杂,也是醉了。

  将原来卷积、池化的顺次连接(网络的前几层)替换为stem模块,来获得更深的网络结构。

5、Inception-ResNet-v2

  ResNet 的结构既可以加速训练,还可以提升性能(防止梯度弥散);Inception模块可以在同一层上获得稀疏或非稀疏的特征,作者尝试将两者结合起来。(inception-resnet有v1和v2两个版本,v2表现更好且更复杂,这里只介绍了v2)。
  • 1、在Inception v3的基础上发明了Inception v4,v4比v3更加复杂,复杂到不可思议
  • 2、结合ResNet与GoogLeNet,发明了Inception-ResNet-v1、Inception-ResNet-v2,其中Inception-ResNet-v2效果非常好,但相比ResNet,Inception-ResNet-v2的复杂度非常惊人,跟Inception v4差不多
  • 3、加入了Residual Connections以后,网络的训练速度加快了
  • 4、在网络复杂度相近的情况下,Inception-ResNet-v2略优于Inception-v4
  • 5、Residual Connections貌似只能加速网络收敛,真正提高网络精度的是“更大的网络规模
 

6、总结

  inception  网络系列是从GoogLeNet开始的,一步步将网络设计的更复杂,最后直接结合残差网络,复杂度进一步上升,残差网络负责加快收敛,重要的还是模型的规模。Inception-ResNet v2、ResNet152和Inception v4模型规模差不多,v4略小,Inception v3和ResNet50模型规模相当。

  依我个人理解,网络的负责是为了充分挖掘训练数据图像的特征,减少卷积过程中特征的损失,从而提高分类准确度。但在现实应用中,还需要在模型复杂度,计算量和任务需求上进行权衡选择。如果相对简单的网络能满足要求,就不必须选择复杂的网络。

参考:https://zhuanlan.zhihu.com/p/30756181
   https://www.jianshu.com/p/a2ad00eddbd5
 

目标检测 — Inception-ResNet-v2的更多相关文章

  1. 目标检测之YOLO V2 V3

    YOLO V2 YOLO V2是在YOLO的基础上,融合了其他一些网络结构的特性(比如:Faster R-CNN的Anchor,GooLeNet的\(1\times1\)卷积核等),进行的升级.其目的 ...

  2. 目标检测 - Tensorflow Object Detection API

    一. 找到最好的工具 "工欲善其事,必先利其器",如果你想找一个深度学习框架来解决深度学习问题,TensorFlow 就是你的不二之选,究其原因,也不必过多解释,看过其优雅的代码架 ...

  3. 目标检测算法之YOLOv1与v2

    YOLO:You Only Look Once(只需看一眼) 基于深度学习方法的一个特点就是实现端到端的检测,相对于其他目标检测与识别方法(如Fast R-CNN)将目标识别任务分成目标区域预测和类别 ...

  4. 目标检测网络之 YOLOv2

    YOLOv1基本思想 YOLO将输入图像分成SxS个格子,若某个物体 Ground truth 的中心位置的坐标落入到某个格子,那么这个格子就负责检测出这个物体. 每个格子预测B个bounding b ...

  5. AI佳作解读系列(二)——目标检测AI算法集杂谈:R-CNN,faster R-CNN,yolo,SSD,yoloV2,yoloV3

    1 引言 深度学习目前已经应用到了各个领域,应用场景大体分为三类:物体识别,目标检测,自然语言处理.本文着重与分析目标检测领域的深度学习方法,对其中的经典模型框架进行深入分析. 目标检测可以理解为是物 ...

  6. 目标检测网络之 YOLOv3

    本文逐步介绍YOLO v1~v3的设计历程. YOLOv1基本思想 YOLO将输入图像分成SxS个格子,若某个物体 Ground truth 的中心位置的坐标落入到某个格子,那么这个格子就负责检测出这 ...

  7. 【转】目标检测之YOLO系列详解

    本文逐步介绍YOLO v1~v3的设计历程. YOLOv1基本思想 YOLO将输入图像分成SxS个格子,若某个物体 Ground truth 的中心位置的坐标落入到某个格子,那么这个格子就负责检测出这 ...

  8. 【目标检测】YOLO:

    PPT 可以说是讲得相当之清楚了... deepsystems.io 中文翻译: https://zhuanlan.zhihu.com/p/24916786 图解YOLO YOLO核心思想:从R-CN ...

  9. 目标检测之RefineDet

    RefineDet 一.相关背景 中科院自动化所最新成果,CVPR 2018 <Single-Shot Refinement Neural Network for Object Detectio ...

  10. One Stage目标检测

    在计算机视觉中,目标检测是一个难题.在大型项目中,首先需要先进行目标检测,得到对应类别和坐标后,才进行之后的各种分析.如人脸识别,通常是首先人脸检测,得到人脸的目标框,再对此目标框进行人脸识别.如果该 ...

随机推荐

  1. 10 Memcached 一致性哈希分布式算法原理与实现[PHP实现]

    <?php header("Content-type:text/html;charset=utf-8"); interface hash{ public function _ ...

  2. Javascript获取各种浏览器可见窗口大小

    function getInfo() { var s = ""; s += " 网页可见区域宽:"+ document.body.clientWidth; s ...

  3. Android 适配(一)

    一.Android适配基础参数 1.常见分辨率(px)      oppx 2340x1080      oppR15 2280x1080      oppor11sp 2160*1080       ...

  4. 1、Codevs 必做:2833、1002、1003、2627、2599

    2833 奇怪的梦境  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题解       题目描述 Description Aiden陷入了一个奇怪的梦境:他被困 ...

  5. 【python】-- RabbitMQ Publish\Subscribe(消息发布\订阅)

    RabbitMQ RabbitMQ Publish\Subscribe(消息发布\订阅) 1对1的消息发送和接收,即消息只能发送到指定的queue里,但这样使用有些局限性,有些时候你想让你的消息被所有 ...

  6. Meeting-in-the-Middle (LA 2965)

    Meeting-in-the-Middle,又称“中途相遇法”.准确地说,它只是一种策略. 顺便说一下,这个算法真的很冷门! 结合这道题来讨论一下吧:LA 2965.ε(┬┬﹏┬┬)3 因为博主的英文 ...

  7. inux c编程:记录锁

    记录锁的功能:当一个进程正在读或修改文件的某个部分是,它可以阻止其他进程修改同一文件区.对于这个功能阐述我认为有三点要解释的: 记录锁不仅仅可以用来同步不同进程对同一文件的操作,还可以通过对同一文件加 ...

  8. 关于python2中的unicode和str以及python3中的str和bytes

    python3有两种表示字符序列的类型:bytes和str.前者的实例包含原始的8位值:后者的实例包含Unicode字符. python2中也有两种表示字符序列的类型,分别叫做str和unicode. ...

  9. Shiro:学习笔记(2)——授权

    Shiro:学习笔记(2)——授权 Shiro的三种授权方式 编程式: Subject subject = SecurityUtils.getSubject(); if(subject.hasRole ...

  10. iOS UIImage 图片局部拉伸的一些学习要点

    之前 做纯色局部拉伸 通过 top  bottom left  right 相交的阴影拉伸 屡试不爽 实施方法: imageView.image = [[UIImage imageNamed: @&q ...