CNN经典分类网络发展历程GoogLeNet、SqueezeNet、ResNet、ResNeXt、DenseNet
本篇博文主要介绍2015年之后出现的经典分类网络的发展历程,前期经典分类网络网上有很多解析,主要包括LeNet、AlexNet、VGG等。
本篇博文主要介绍GoogLeNet、SqueezeNet、ResNet、ResNeXt、DenseNet。
以PPT截图形式进行讲解
一、GoogLeNet
论文题目:Going Deeper with Convolutions
论文链接:https://arxiv.org/abs/1409.4842
参考博文:https://blog.csdn.net/GL3_24/article/details/90406591
核心:提出了Inception module
最原始的Inception module(a)的特点是一方面增加了网络的宽度,另一方面也增加了网络对尺度的适应性(通道相加),如果想要提取更高维度的特征,那么网络中的Inception模块会更多,这样就带来了一个很严重的问题-------->巨大的计算量,因为5* 5的卷积的计算量就很大,层数越多计算量就更大。那么就需要一种解决方案进行降维,这就产生了Inception module的升级版Inception module v1 进行降维的版本。降维方法是通过增加1*1卷积。
1*1卷积进行降维的思想来源于NIN
论文题目:Network In Network
论文链接:https://arxiv.org/abs/1312.4400
参考博文:https://blog.csdn.net/GL3_24/article/details/90400956
具体的降维指的是参数的减小,请看下图
由Inception 模型A 到Inception 模型B参数明显减少了。
二、ResNet
论文题目:Deep Residual Learning for Image Recogniton
论文链接:https://arxiv.org/abs/1512.03385
随着研究的不断深入,研究界出现了一种共识,那就可以通过增加网络的深度来提高网络的性能,原因很简单:越深的网络提取的特征越抽象,越具有语义信息。
但是,该文章的作者经过对比实验发现,50层的网络比30层的网络效果更差,这就引出了网络退化的问题。那么为了解决该问题,作者提出了一种building block,核心思想就是让层与层之间有了联系,并不是原来那种输入输出,层与层之间互相对立的关系。
三、ResNeXt
论文题目:Aggregated Residual Transformations for Deep Neural Networks
论文链接:https://arxiv.org/pdf/1611.05431.pdf
参考博文:https://blog.csdn.net/GL3_24/article/details/90643094
为了进一步提升网络宽度,提升分类结果,提出来了ResNeXt网络。它采用VGG / ResNets的重复层策略,同时以简单,可扩展的方式利用分裂变换合并策略。
上图中的两个block具有相同的复杂度。左边就是ResNet的一个block,右边是基数为32的ResNeXt一个block。
ResNeXt中的block结构是一个单元重复32次然后再相加的结果。每个单元是一个bottleneck结构:先把输入feature map 通过1x1卷积降维到4通道的特征图,然后经过3x3卷积,输出还是4通道(该部分的降维力度比较大,直接从256d到了4d,而ResNet的一个block是从256d降维到了64d),然后再通过1x1卷积进行升维。这个结构叫做32x4d的结构。其中32是ResNeXt引入的新的自由度,称为cardinality。ResNeXt的名字也源于此,X指的就是 neXt dimension。4d代表的是通过1x1卷积之后直接降维到了4通道的特征图。
理解bottleneck architecture
参考博文:https://blog.csdn.net/GL3_24/article/details/90640263
这个是针对于网络结构中输入/输出的维度(dimensions)来讲的。
这三层结构是1X1,3X3和1X1卷积,其中1X1层负责减小然后增加(恢复)尺寸,使3X3层成为具有较小输入/输出尺寸的瓶颈。
四、SqueezeNet
论文题目:SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5MB model size
论文链接:https://arxiv.org/abs/1602.07360
从论文题目可以看出来SqueezeNet有三个有点:
- AlexNet-level accuracy
- 50x fewer parameters
- <0.5MB model size
主要是减少了参数和生成了很小的模型文件,这样对计算机内存要求就降低了,训练起来也很快,很高效。
使用到的操作手法同样包含1*1卷积进行降维以及下采样。
五、DenseNet
论文题目:Densely Connected Convolutional Networks(CVPR 2017, Best Paper Award)
论文链接:https://arxiv.org/pdf/1608.06993.pdf
参考博文:https://blog.csdn.net/GL3_24/article/details/90478764 (DenseNet网络实践(caffe版))
该论文的核心是提出了dense block DenseNet,(有点借鉴ResNet的建立层与层之间联系的思想)核心思想在于建立了不同层之间的连接关系,充分利用了feature,进一步减轻了梯度消失问题,加深网络不是问题,而且训练效果非常好。另外,利用bottleneck layer,Translation layer以及较小的growth rate使得网络变窄,参数减少,有效抑制了过拟合,同时计算量也减少了。
作者:GL3_24
来源:CSDN
著作权归作者所有。转载请联系作者获得授权。
CNN经典分类网络发展历程GoogLeNet、SqueezeNet、ResNet、ResNeXt、DenseNet相关推荐
- 版本控制工具的必要性、作用、分类和发展历程
一.版本控制工具的作用和必要性 版本控制工具的作用:帮助我们记录和跟踪项目中各文件内容的修改变化. 记录文件修改的手工做法:复制文件以备份,在备份的文件名中添加上日期和时间. 需要版本控制工具的原因: ...
- 图像分类经典神经网络大总结(AlexNet、VGG 、GoogLeNet 、ResNet、 DenseNet、SENet、ResNeXt )
前言 在CNN网络结构的演化上,出现过许多优秀的CNN网络,CNN的经典结构始于1998年的LeNet,成于2012年历史性的AlexNet,从此盛于图像相关领域. 发展历史:Lenet --> ...
- 《动手学深度学习》(四) -- LeNet、AlexNet、VGG、NiN、GoogLeNet、ResNet、DenseNet 实现
上一小节学习了卷积神经网络的卷积层和池化层的实现,趁热打铁继续学习现代卷积神经网络的搭建,欢迎小伙伴们一起学习和交流~ 为了能够应⽤softmax回归和多层感知机,我们⾸先将每个⼤小为28×2828 ...
- CNN经典网络模型:LeNet,Alexnet,VGGNet,GoogleNet,ReSNet
关于卷积神经网络CNN,网络和文献中有非常多的资料,我在工作/研究中也用了好一段时间各种常见的model了,就想着简单整理一下,以备查阅之需.如果读者是初接触CNN,建议可以先看一看"Dee ...
- [人工智能-深度学习-33]:卷积神经网络CNN - 常见分类网络- LeNet网络结构分析与详解
作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客 本文网址:https://blog.csdn.net/HiWangWenBing/article/detai ...
- 经典卷积神经网络详解(AlexNet、VGG、NiN、GoogLeNet、ResNet、DenseNet、CSPNet、Darknet、EfficientNet、SqueezeNet..)
文章目录 经典网络 LeNet : 基础图像识别网络 (1998) AlexNet:深度卷积网络 (2012) ZFNet : 大型卷积网络 (2013) VGGNet:使用块的网络 (2014) N ...
- 2020年中国热交换器行业分类、发展历程、现状及主要生产厂商分析「图」
一.热交换器行业概况 热交换器又称为换热器,是指具有不同温度的流体之间传递热量的中介设备.热交换器是实现化工生产环节热量交换.传递和储能不可或缺的设备.纵观热交换器行业的发展,可分为以下几个阶段: 热 ...
- 电信通信网络发展历程
从小时候的电话筒(两个杯子中间用线连接起来)到电话到bb机到大哥大再到手机,交流越来越简单,越来月便捷.随着经济社会的发展和科学技术的进步,一直到如今的智能手机,它不再是单纯通信的设备,移动互联正逐渐 ...
- Java虚拟机(二)—主流Java虚拟机分类及发展历程
文章目录 Sun Classic VM Exact VM Hotspot VM JRockit VM IBM J9 VM KVM和CDC/CLDC Hotspot Azul VM .Liquid VM ...
最新文章
- Spring MVC 和 Spring 总结
- android bitmap oom 最新处理办法,【移动开发】Android中图片过大造成内存溢出,OOM(OutOfMemory)异常解决方法...
- .net 中的DllImport
- phoenix 根据条件更新_教您一步步升级Phoenix BIOS
- 关于ftp 服务器搭建的200错误与527错误
- 如何删除“无法删除文件,无法读取源文件或磁盘”文件
- ipv4和计算机地址是什么意思,ipv6是什么意思?我们怎么查看电脑iPv6地址
- layui上传文件请求接口异常_解决layui table表单提示数据接口请求异常的问题
- 《国富论》阅读笔记05
- 八. geotrellis使用 矢量数据栅格化
- python中函数的使用
- MarkDown学习随笔
- 基于SSM(Spring+SpringMVC+MyBatic)的停车场管理系统
- echarts旭日图
- 初识frameset
- 堡垒机如何传输文件_如何在linux下向堡垒机传文件
- [导入]微软.net精简框架常见问题及回答(中文版)
- Sora —— 高性能可编程无线电系统
- python 文件打开的六种方式
- python一次输入多个数
热门文章
- unwinding now org.apache.cxf.interceptor.Fault: Marshalling Error: null
- 【Kafka】kafka架构
- 组件,控件,用户控件
- Harry Potter Sorting Ceremony(分院帽)
- 无法运行rc.exe(已解决)
- java构造器为什么不能被继承
- 常用的sql语句,sql使用大全
- fedora mysql 开机启动服务_linux -- 启动时启动服务或者执行命令
- 6、RocketMQ 源码解析之 Broker 启动(上)
- OPENMV-STM32串口通信