Residual Networks <2015 ICCV, ImageNet 图像分类Top1>
来源:互联网 发布:新浪唱聊mac版 编辑:程序博客网 时间:2024/04/29 08:15
本文介绍一下2015 ImageNet中分类任务的冠军——MSRA何凯明团队的Residual Networks。实际上,MSRA是今年Imagenet的大赢家,不单在分类任务,MSRA还用residual networks赢了 ImageNet的detection, localization, 以及COCO数据集上的detection和segmentation, 那本文就简单分析下Residual Networks。
目录
————————————
1. Motivation
2. 网络结构
3. 实验结果
4. 重要reference
1. Motivation
作者首先抛出了这个问题, 深度神经网络是不是越深越好。
照我们一般的经验,只要网络不训飞(也就是最早在LSTM中提出的vanishing/exploding problem),而且不过拟合, 那应该是越深越好。
但是有这么个情况,网络加深了, accuracy却下降了,称这种情况为degradation。如下图所示(详见[1]):
Cifar-10 上的training/testing error. 网络从20层加到56层,error却上升了。
按理说我们有一个shallow net,在不过拟合的情况下再往深加几层怎么说也不会比shallow的结果差,所以degradation说明不是所有网络都那么容易优化,这篇文章的motivation就是通过“deep residual network“解决degradation问题。
2. 网络结构
Shortcut Connections
其实本文想法和Highway networks(Jurgen Schmidhuber的文章)非常相似, 就连要解决的问题(degradation)都一样。Highway networks一文借用LSTM中gate的概念,除了正常的非线性映射H(x, Wh)外,还设置了一条从x直接到y的通路,以T(x, Wt)作为gate来把握两者之间的权重,如下公式所示:
shortcut原意指捷径,在这里就表示越层连接,就比如上面Highway networks里从x直接到y的连接。其实早在googleNet的inception层中就有这种表示:
Residual Networks一文中,作者将Highway network中的含参加权连接变为固定加权连接,即
Residual Learning
至此,我们一直没有提及residual networks中residual的含义。那这个“残差“指什么呢?我们想:
如果能用几层网络去逼近一个复杂的非线性映射H(x),那么同样可以用这几层网络去逼近它的residual function:
推荐读者们还是看一下本文最后列出的这篇reference paper,本文中作者说与Highway network相比的优势在于:
所以说这个比较还是比较牵强。。anyway,人家讲个故事也是不容易了。
34层 residual network
网络构建思路:基本保持各层complexity不变,也就是哪层down-sampling了,就把filter数*2, 网络太大,此处不贴了,大家看paper去吧, paper中画了一个34层全卷积网络, 没有了后面的几层fc,难怪说152层的网络比16-19层VGG的计算量还低。
这里再讲下文章中讲实现部分的 tricks:
- 图片resize:短边长random.randint(256,480)
- 裁剪:224*224随机采样,含水平翻转
- 减均值
- 标准颜色扩充[2]
- conv和activation间加batch normalization[3]
帮助解决vanishing/exploding问题 - minibatch-size:256
- learning-rate: 初始0.1, error平了lr就除以10
- weight decay:0.0001
- momentum:0.9
- 没用dropout[3]
其实看下来都是挺常规的方法。
3. 实验结果
34层与18层网络比较:训练过程中,
34层plain net(不带residual function)比18层plain net的error大
34层residual net(不带residual function)比18层residual net的error小,更比34层plain net小了3.5%(top1)
18层residual net比18层plain net收敛快Residual function的设置:
A)在H(x)与x维度不同时, 用0充填补足
B) 在H(x)与x维度不同时, 带WT
C)任何shortcut都带WT
loss效果: A>B>C
4. 重要reference
[1]. Highway Networks
[2]. ImageNet Classification with Deep Convolutional Neural Networks
[3]. Batch Normalization
[4]. VGG
- Residual Networks <2015 ICCV, ImageNet 图像分类Top1>
- Residual Networks
- Residual Networks
- Torch 框架下的 imagenet 图像分类
- 运用CNN对ImageNet进行图像分类
- 《ImageNet Classification with Deep Convolutional Neural Networks》ImageNet与深卷积神经网络分类
- ICCV 2013 图像检索分类方面的文章汇总
- deep-residual-networks
- Wide Residual Networks
- Dilated Residual Networks
- 论文阅读:《Visual Tracking with Fully Convolutional Networks》ICCV 2015
- ICCV 2015 揭开152层神经网络的面纱(Deep Residual Learning )
- 【caffe】用训练好的imagenet模型分类图像
- alexnet 通过深度卷积对ImageNet图像进行分类
- 图像超分辨EDSR:Enhanced Deep Residual Networks for Single Image Super-Resolution,论文笔记
- 论文笔记 | Wide Residual Networks
- Re-thinking Deep Residual Networks
- 语义分割--Dilated Residual Networks
- Python图形界面开发初步 2
- C# partial 说明
- 查询score中选学一门以上课程的同学中分数为非最高分成绩的记录
- 【iOS开发】XML解析--GData语法
- 两个小时搭建一个自己的人脸识别App
- Residual Networks <2015 ICCV, ImageNet 图像分类Top1>
- java--super_get_set_继承与拓展_调用由近到远(课堂)
- 文本节点和属性节点内容替换
- TableView
- linux的主机名以及修改主机名 以及 hostname命令小结
- 【iOS开发】值对象--NSValue,NSNumber
- Andorid 实现抢购倒计时能(天时分秒)
- 数据结构.字符串.模式匹配算法
- sed命令n,N,d,D,p,P,h,H,g,G,x解析