cs231n spring 2017 lecture9 CNN Architectures
参考《deeplearning.ai 卷积神经网络 Week 2 听课笔记》。
1. AlexNet(Krizhevsky et al. 2012),8层网络。
学会计算每一层的输出的shape:对于卷积层,输出的边长 =(输入的边长 - filter的边长)/ 步长 + 1,输出的通道数等于filter的数量。每个filter的通道数等于输入的通道数。卷积层的参数 = filter的长 * filter的宽 * 输入的通道数 * filter的数量。池化层没有需要学习的参数。
图中分成两个通道是为了在不同GPU上处理。
2013年的ZFNet延续了AlexNet的架构(也是8层网络),优化了参数,取得了更好的效果(错误率从16.4%降到11.7%)。
2. VGGNet(Simonyan and Zisserman, 2014),16~19层网络。
三个3*3的filter串联等价于一个7*7的filter,用更小的filter的好处是增加了网络的深度,增加了非线性程度,更少的参数。
3. GoogLeNet(Szegedy et al., 2014)
Inception module是同时用不同的filter(1*1,3*3,5*5,Pooling),并把结果堆叠起来。这样做的缺点是计算量变大。解决的办法是先用1*1的卷积压缩通道数量(参考《deeplearning.ai 卷积神经网络 Week 2 听课笔记》)。
4. ResNet(He et al., 2015),152层网络。
解决了很深的网络难优化的问题。
对于深度的网络(ResNet-50+),类似GoogLeNet用1*1的卷积层去压缩通道数以提高效率。
5. 复杂度的比较
6. 其他一些网络
Network in Network (NiN)(Lin et al., 2014):启发了GoogLeNet和ResNet的“bottleneck”层(1*1卷积层)。
Identity Mappings in Deep Residual Networks (He et al., 2016):ResNet的改进。
Wide Residual Networks (Zagoruyko et al., 2016):认为residuals是很重要的,而不是深度。增加宽度而不是深度,会计算更有效。50层的宽的ResNet比152层的原始的ResNet更好。
ResNeXt (Xie et al., 2016):也是增加宽度,和Inception module很类似的想法。
Deep Networks with Stochastic Depth (Huang et al., 2016):为了解决梯度消失的问题,随机地drop掉一些层。在测试阶段使用全部的网络,不drop任何层。
FractalNet (Larsson et al., 2017):认为residual不是必须的,重要的是浅层到深层的有效传递(transitioning),训练阶段也是随机drop掉一些层,测试阶段不drop任何层。
Densely Connected Convolutional Networks (Huang et al., 2017):为了解决梯度消失的问题,每一层与其他层更稠密的连接。
SqueezeNet (Landola et al., 2017):更少的参数,更好的准确度。
7. 总结
VGG、GoogLeNet、ResNet被广泛应用,现在已经是集成到各个现成框架。
ResNet是当今最佳,默认选项。
趋势是越来越深的网络。
很多研究集中在设计层与层之间的连接方式,为了改善梯度的传播。
最新的研究在争论深度和宽度,以及residual的必要性。
最新文章
- Solr环境搭建过程中遇到的问题
- 关于 DWZ 弹出框
- mac下使用Solarized配色方案
- UVALive 7279	Sheldon Numbers (暴力打表)
- php中error_report函数的含义及各参数含义
- iOS 沙盒路径操作:新建/删除文件和文件夹
- DOM中的NodeList与HTMLCollection
- bootstrap table笔记
- CentOS6.5 服务器+apache5.3绑定多个域名+SELinux设置
- JavaScript实用功能代码片段
- C++参数传递(01)
- ubuntu16+zabbix3.4+grafana环境搭建记录
- linux su失败:无法设置用户ID:资源暂时不可用
- ICE的异步方法调用
- C#在Winform程序中显示QQ在线状态
- 【java工具】AES CBC加密
- C语言作业03-函数
- 简单的Ajax实例
- HDU 2669 Romantic(裸的拓展欧几里得)
- Go语言开发中MongoDB数据库
热门文章
- PHP的一个小tips (关于=和==或者===的使用)
- ubuntu16.04 pcl安装教程
- 量化交易alpha、beta、shape等基本概念梳理
- 向mysql数据库中插入数据时显示“Duplicate entry '1′ for key ‘PRIMARY' ”错误
- Linux-异步IO
- [NOI2017]蚯蚓排队(链表+hash)
- mysql增删查改
- c# 异常处理 try --catch
- spark shc hbase 超时问题 hbase.client.scanner.timeout.period 配置
- Tooltips2