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

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

这是一篇基础理论的博客,基本手法是抄、删、改、查,毕竟介绍这几个基础网络的博文也挺多的,就算是自己的一个笔记吧,以后忘了多看看。主要是想介绍下常用的几种卷积神经网络。卷积神经网络最初为解决图像识别问题而提出,目前广泛应用于图像,视频,音频和文本数据,可以当做深度学习的代名词。目前图像分类中的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,一经查实,立即删除!

相关文章

计算客 (人人都有极客精神)爆力

人人公司是一家极为鼓舞极客精神的公司,当有重要的项目须要上线但又时间太紧。甚至须要当天上线的时候。往往会挂起海盗旗开启电子日期显示。让大家能够在对时间有更明白的感知的情况下,同心协力搞定重要的项目。海盗旗下方的电子屏显示的日期形式为 YYY…

深度学习案例

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…

Oracle-一个中文汉字占几个字节?

Oracle 一个中文汉字占用几个字节 Oracle 一个中文汉字 占用几个字节,要根据Oracle中字符集编码决定!!! 1. 如果定义为VARCHAR2(32 CHAR),那么该列最多就可以存储32个汉字,如果定义字段为VARCHAR2(32) 或VARCHAR2(32 B…

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

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

iPhone屏幕尺寸/launch尺寸/icon尺寸

屏幕尺寸 6p/6sp 414 X 7366/6s 375 X 6675/5s 320 X 568 4/4s 320 X 480launch尺寸 6p/6sp 1242 X 2208 3x6/6s 750 X 1334 2x5/5s 640 X 1136 2x4/4s 640 X 960 2x仔细观察会发现l…

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

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

读取csv格式的数据

1.直接上代码&#xff0c;关键是会用 2.代码如下&#xff1a; <?php #添加推荐到英文站 $file fopen(code.csv,r); while ($data fgetcsv($file)) { //每次读取CSV里面的一行内容 //print_r($data); //此为一个数组&#xff0c;要获得每一个数据&#xff0c;访问数组下…

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

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

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

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

caffe专题五——回归中——检测框架

https://blog.csdn.net/runner668/article/details/80436850

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

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

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

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

为什么要使用工厂模式

工厂的作用相当于帮助我们完成实例化的操作。 优势1&#xff1a;一般在代码中&#xff0c;实例化一个类A是直接new A&#xff08;&#xff09;&#xff0c;假如类A是一个完全独立的类&#xff0c;没有相似类&#xff0c;则没有必要使用工厂模式&#xff0c;直接new A&#xff…

css各兼容应该注意的问题

1.div布局在ie浏览器和chrome浏览器&#xff0c;firefox浏览器不同&#xff0c;不如在div里面嵌套3个div&#xff0c;分别左中右&#xff0c;左边div的pading和margin在ie8以上都是几乎相同&#xff0c;ie8以下做内边距x2&#xff0c;在中间的div在chrome和fierfox中默认在左边…

转 C++宏定义详解

来自&#xff1a;传送门 C宏定义详解 一、#define的基本用法 #define是C语言中提供的宏定义命令&#xff0c;其主要目的是为程序员在编程时提供一定的方便&#xff0c;并能在一定程度上提高程序的运行效率&#xff0c;但学生在学习时往往不能 理解该命令的本质&#xff0c;总是…

acm之vim的基本配置

http://www.kuangbin.net/archives/vim-acmicpc 转载于:https://www.cnblogs.com/akrusher/articles/5402426.html

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

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