常用的几种卷积神经网络介绍

常用的几种卷积神经网络介绍
标签(空格分隔): 深度学习

这是一篇基础理论的博客,基本手法是抄、删、改、查,毕竟介绍这几个基础网络的博文也挺多的,就算是自己的一个笔记吧,以后忘了多看看。主要是想介绍下常用的几种卷积神经网络。卷积神经网络最初为解决图像识别问题而提出,目前广泛应用于图像,视频,音频和文本数据,可以当做深度学习的代名词。目前图像分类中的ResNet, 目标检测领域占统治地位的Faster R-CNN,分割中最牛的Mask-RCNN, UNet和经典的FCN都是以下面几种常见网络为基础。

LeNet
网络背景

LeNet诞生于1994年,由深度学习三巨头之一的Yan LeCun提出,他也被称为卷积神经网络之父。LeNet主要用来进行手写字符的识别与分类,准确率达到了98%,并在美国的银行中投入了使用,被用于读取北美约10%的支票。LeNet奠定了现代卷积神经网络的基础。

网络结构 

上图为LeNet结构图,是一个6层网络结构:三个卷积层,两个下采样层和一个全连接层(图中C代表卷积层,S代表下采样层,F代表全连接层)。其中,C5层也可以看成是一个全连接层,因为C5层的卷积核大小和输入图像的大小一致,都是5*5(可参考LeNet详细介绍)。

网络特点

每个卷积层包括三部分:卷积、池化和非线性激活函数(sigmoid激活函数)
使用卷积提取空间特征
降采样层采用平均池化


AlexNet
网络背景

AlexNet由Hinton的学生Alex Krizhevsky于2012年提出,并在当年取得了Imagenet比赛冠军。AlexNet可以算是LeNet的一种更深更宽的版本,证明了卷积神经网络在复杂模型下的有效性,算是神经网络在低谷期的第一次发声,确立了深度学习,或者说卷积神经网络在计算机视觉中的统治地位。

网络结构 
 
AlexNet的结构及参数如上图所示,是8层网络结构(忽略激活,池化,LRN,和dropout层),有5个卷积层和3个全连接层,第一卷积层使用大的卷积核,大小为11*11,步长为4,第二卷积层使用5*5的卷积核大小,步长为1,剩余卷积层都是3*3的大小,步长为1。激活函数使用ReLu(虽然不是他发明,但是他将其发扬光大),池化层使用重叠的最大池化,大小为3*3,步长为2。在全连接层增加了dropout,第一次将其实用化。(参考:AlexNet详细解释)

网络特点

使用两块GPU并行加速训练,大大降低了训练时间
成功使用ReLu作为激活函数,解决了网络较深时的梯度弥散问题
使用数据增强、dropout和LRN层来防止网络过拟合,增强模型的泛化能力


VggNet
网络背景

VGGNet是牛津大学计算机视觉组和Google DeepMind公司一起研发的深度卷积神经网络,并取得了2014年Imagenet比赛定位项目第一名和分类项目第二名。该网络主要是泛化性能很好,容易迁移到其他的图像识别项目上,可以下载VGGNet训练好的参数进行很好的初始化权重操作,很多卷积神经网络都是以该网络为基础,比如FCN,UNet,SegNet等。vgg版本很多,常用的是VGG16,VGG19网络。

网络结构 

上图为VGG16的网络结构,共16层(不包括池化和softmax层),所有的卷积核都使用3*3的大小,池化都使用大小为2*2,步长为2的最大池化,卷积层深度依次为64 -> 128 -> 256 -> 512 ->512。

网络特点 
网络结构和AlexNet有点儿像,不同的地方在于:

主要的区别,一个字:深,两个字:更深。把网络层数加到了16-19层(不包括池化和softmax层),而AlexNet是8层结构。
将卷积层提升到卷积块的概念。卷积块有2~3个卷积层构成,使网络有更大感受野的同时能降低网络参数,同时多次使用ReLu激活函数有更多的线性变换,学习能力更强(详细介绍参考:TensorFlow实战P110页)。
在训练时和预测时使用Multi-Scale做数据增强。训练时将同一张图片缩放到不同的尺寸,在随机剪裁到224*224的大小,能够增加数据量。预测时将同一张图片缩放到不同尺寸做预测,最后取平均值。


ResNet
网络背景

ResNet(残差神经网络)由微软研究院的何凯明等4名华人于2015年提出,成功训练了152层超级深的卷积神经网络,效果非常突出,而且容易结合到其他网络结构中。在五个主要任务轨迹中都获得了第一名的成绩:

ImageNet分类任务:错误率3.57%
ImageNet检测任务:超过第二名16%
ImageNet定位任务:超过第二名27%
COCO检测任务:超过第二名11%
COCO分割任务:超过第二名12%
作为大神级人物,何凯明凭借Mask R-CNN论文获得ICCV2017最佳论文,也是他第三次斩获顶会最佳论文,另外,他参与的另一篇论文:Focal Loss for Dense Object Detection,也被大会评为最佳学生论文。

网络结构 


 
上图为残差神经网络的基本模块(专业术语叫残差学习单元),输入为x,输出为F(x)+x,F(x)代表网络中数据的一系列乘、加操作,假设神经网络最优的拟合结果输出为H(x)=F(x)+x,那么神经网络最优的F(x)即为H(x)与x的残差,通过拟合残差来提升网络效果。为什么转变为拟合残差就比传统卷积网络要好呢?因为训练的时候至少可以保证残差为0,保证增加残差学习单元不会降低网络性能,假设一个浅层网络达到了饱和的准确率,后面再加上这个残差学习单元,起码误差不会增加。(参考:ResNet详细解释) 
通过不断堆叠这个基本模块,就可以得到最终的ResNet模型,理论上可以无限堆叠而不改变网络的性能。下图为一个34层的ResNet网络。 


网络特点

使得训练超级深的神经网络成为可能,避免了不断加深神经网络,准确率达到饱和的现象(后来将层数增加到1000层)
输入可以直接连接到输出,使得整个网络只需要学习残差,简化学习目标和难度。
ResNet是一个推广性非常好的网络结构,容易和其他网络结合
论文地址: 
1. LeNet论文 
2. AlexNet论文 
3. VGGNet论文 
4. ResNet论文
--------------------- 
作者:feixian15 
来源:CSDN 
原文:https://blog.csdn.net/qq_34759239/article/details/79034849 
版权声明:本文为博主原创文章,转载请附上博文链接!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/458105.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深度学习案例

1. neural-style:利用卷积神经网络将一幅图像的内容与另一幅图像的风格相结合 https://github.com/jcjohnson/neural-style 2.Nerual Doodles:把 2 位的 Doodle 转成精良的艺术品 https://github.com/alexjc/neural-doodle 3. srez:通过深度…

深度学习图像标注工具汇总

对于监督学习算法而言,数据决定了任务的上限,而算法只是在不断逼近这个上限。世界上最遥远的距离就是我们用同一个模型,但是却有不同的任务。但是数据标注是个耗时耗力的工作,下面介绍几个图像标注工具: Labelme Labe…

UIBarbuttonItem

APPDelegate: - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds]; //创建主界面,导航栏的第一个页面 FirstViewContr…

深度残差网络ResNet解析

ResNet在2015年被提出,在ImageNet比赛classification任务上获得第一名,因为它“简单与实用”并存,之后很多方法都建立在ResNet50或者ResNet101的基础上完成的,检测,分割,识别等领域都纷纷使用ResNet&#x…

基于深度学习的目标检测技术演进:R-CNN、Fast R-CNN、Faster R-CNN

object detection我的理解,就是在给定的图片中精确找到物体所在位置,并标注出物体的类别。object detection要解决的问题就是物体在哪里,是什么这整个流程的问题。然而,这个问题可不是那么容易解决的,物体的尺寸变化范…

CNN的发展历史(LeNet,Alexnet,VGGNet,GoogleNet,ReSNet)

欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld。 关于卷积神经网络CNN,网络和文献中有非常多的资料,我在工作/研究中也用了好一段时间各种常见的model了,就想着简单整理一下,以备查阅之需…

如何在VMWare的Ubuntu虚拟机中设置共享文件夹

亲测有效:Ubuntu18.04 LTS、虚拟机VMware Workstation 14 Pro 14.1.3 build-9474260、Window7 自己的第一篇博文,由于时(shuǐ)间(png)原(yǒu)因(xin)&…

容器+AOP实现动态部署(四)

上篇咱们介绍了容器和AOP的结合,结合后怎样将对象增强服务并没有过多的说明,这里将详细说明怎样将对象 进行增强 ,达到一个一对多和多对多的增强方式 先从简单的方式说起 /** *JDK代理类,实现动态调用对象方法 */ public class JD…

深入理解卷积层,全连接层的作用意义

有部分内容是转载的知乎的,如有侵权,请告知,删除便是,但由于是总结的,所以不一一列出原作者是who。 再次感谢,也希望给其他小白受益。 首先说明:可以不用全连接层的。 理解1: 卷…

用ionic快速开发hybird App(已附源码,在下面+总结见解)

用ionic快速开发hybird App(已附源码,在下面总结见解) 1.ionic简介 ionic 是用于敏捷开发APP的解决方案。核心思路是:利用成熟的前端开发技术,来写UI和业务逻辑。也就是说,就是一个H5网站,这个区别于react-…

40 个重要的 HTML5 面试问题及答案

2019独角兽企业重金招聘Python工程师标准>>> 介绍 我是一个ASP.NET MVC开发人员。最近当我找工作的时候,我发现很多问题都是围绕HTML 5和它的新功能展开的。所以,下面我将列出40个有助于你提高相关HTML 5知识的重要问题。 这些问题并不能保证…

利用光学流跟踪关键点---30

原创博客:转载请标明出处:http://www.cnblogs.com/zxouxuewei/ 关键点:是多个方向上亮度变化强的区域。 opencv:版本是2.4. 光学流函数:calcOpticalFlowPyrLK()。(关键点侦测器使用goodFeaturesToTrack())二者结合。 相应的启动文…

register_globals(全局变量注册开关)

register_globals,是php.ini文件里面的一个配置选项,接下来,我们可以通过例程来分析一下,当register_globals on 与 register_globals off 的时候,对php语言的一些安全影响。测试源代码如下:index.html 源…

精述IBM的MQTT协议和MQTT-S协议

一.MQTT简介 MQTT (Message Queuing Telemetry Transport) 是由IBM研发的构建在TCP/IP之上的简单轻量的消息协议,目标使用场景为受限制环境,如低带宽、高延迟、不可靠网络,很适用于M2M和IoT中。它的竞争协议包括XMPP协议和IETF的C…

20150103--SQL连接查询+视图-02

20150103--SQL连接查询视图-02 子查询 一条查询语句出现在另外一条查询语句的内部,这条语句就被称之为子查询语句。 子查询分类 子查询可以根据子查询返回的结果以及子查询出现的位置两种方式进行分类 按结果分类: 标量子查询:子查询返回的结…

QtQuick controls和controls2 自定义样式

2019独角兽企业重金招聘Python工程师标准>>> controls import QtQuick 2.7 import QtQuick.Controls 1.4 import QtQuick.Controls.Styles 1.4Rectangle {color: "green"Button {id:buttontext: qsTr("Second page")anchors.centerIn: parentpr…

电脑开机3秒就重启循环_电脑修好后客户不愿支付上门费,行,那电脑开机60秒自动关机吧!...

上门维修电脑已经非常普及了,上门维修电脑费用要比送修(送到维修店)费用高,送修电脑只有一项维修费用,上门维修电脑比送修多了一项费用,这项费用就是上门费。有人说维修电脑收取上门费用不合理,其实这样的说法非常自私…

jQuery属性筛选选择器

2019独角兽企业重金招聘Python工程师标准>>> 代码一 <h2>属性筛选选择器</h2><h3>[attval]、[att]、[att|val]、[att~val]</h3><div class"left" testattr"true" ><div class"div" testattr"t…

java 代码优化

Java程序中的内存管理机制是通过GC完成的&#xff0c;“一个对象创建后被放置在JVM的堆内存中&#xff0c;当永远不在应用这个对象的时候将会被JVM在堆内存中回收。被创建的对象不能再生&#xff0c;同时也没有办法通过程序语句释放”&#xff08;这个是《Java的GC机制》中提到…