Residual Networks <2015 ICCV, ImageNet 图像分类Top1>
本文介绍一下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说明不是全部网络都那么easy优化。这篇文章的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来把握两者之间的权重。例如以下公式所看到的:
y=H(x,WH)⋅T(x,WT)+x⋅(1−T(x,WT))
shortcut原意指捷径。在这里就表示越层连接,就比方上面Highway networks里从x直接到y的连接。
事实上早在googleNet的inception层中就有这样的表示:
Residual Networks一文中,作者将Highway network中的含參加权连接变为固定加权连接。即
y=H(x,WH)⋅WT+x
Residual Learning
至此。我们一直没有提及residual networks中residual的含义。
那这个“残差“指什么呢?我们想:
假设能用几层网络去逼近一个复杂的非线性映射H(x),那么相同能够用这几层网络去逼近它的residual function:F(x)=H(x)−x,但我们“猜想“优化residual mapping要比直接优化H(x)简单。
推荐读者们还是看一下本文最后列出的这篇reference paper。本文中作者说与Highway network相比的优势在于:
| x | Highway Network | Residual Network | 评论 |
|---|---|---|---|
| gate參数 | 有參数变量WT | 没參数,定死的, 方便和没有residual的网络比較 | 算不上优势,參数少又data-independent。结果肯定不会是最优的,文章实验部分也对照了效果,确实是带參数的error更小,可是WT这个变量与解决degradation问题无关 |
| 关门? | 有可能关门(T(x,WT)=0) | 不会关门 | T(x,WT)∈[0,1], 但一般不会为0 |
所以说这个比較还是比較牵强。。anyway。人家讲个故事也是不easy了。
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 <2015 ICCV, ImageNet 图像分类Top1>
本文介绍一下2015 ImageNet中分类任务的冠军——MSRA何凯明团队的Residual Networks.实际上,MSRA是今年Imagenet的大赢家,不单在分类任务,MSRA还用resid ...
- 课程四(Convolutional Neural Networks),第二 周(Deep convolutional models: case studies) ——3.Programming assignments : Residual Networks
Residual Networks Welcome to the second assignment of this week! You will learn how to build very de ...
- Re-thinking Deep Residual Networks
本文是对ImageNet 2015的冠军ResNet(Deep Residual Networks)以及目前围绕ResNet这个工作研究者后续所发论文的总结,主要涉及到下面5篇论文. 1. Link: ...
- 残差网络(Residual Networks, ResNets)
1. 什么是残差(residual)? “残差在数理统计中是指实际观察值与估计值(拟合值)之间的差.”“如果回归模型正确的话, 我们可以将残差看作误差的观测值.” 更准确地,假设我们想要找一个 $x$ ...
- Residual Networks
Andrew Ng deeplearning courese-4:Convolutional Neural Network Convolutional Neural Networks: Step by ...
- 深度残差网(deep residual networks)的训练过程
这里介绍一种深度残差网(deep residual networks)的训练过程: 1.通过下面的地址下载基于python的训练代码: https://github.com/dnlcrl/deep-r ...
- 深度学习论文笔记:Deep Residual Networks with Dynamically Weighted Wavelet Coefficients for Fault Diagnosis of Planetary Gearboxes
这篇文章将深度学习算法应用于机械故障诊断,采用了“小波包分解+深度残差网络(ResNet)”的思路,将机械振动信号按照故障类型进行分类. 文章的核心创新点:复杂旋转机械系统的振动信号包含着很多不同频率 ...
- 解析Wide Residual Networks
Wide Residual Networks (WRNs)是2016年被提出的基于扩展通道数学习机制的卷积神经网络.对深度卷积神经网络有了解的应该知道随着网络越深性能越好,但是训练深度卷积神经网络存在 ...
- Convolutional Neural Network-week2编程题2(Residual Networks)
1. Residual Networks(残差网络) 残差网络 就是为了解决深网络的难以训练的问题的. In this assignment, you will: Implement the basi ...
随机推荐
- 【java项目实战】代理模式(Proxy Pattern),静态代理 VS 动态代理
这篇博文,我们主要以类图和代码的形式来对照学习一下静态代理和动态代理.重点解析各自的优缺点. 定义 代理模式(Proxy Pattern)是对象的结构型模式,代理模式给某一个对象提供了一个代理对象,并 ...
- 存储概念解析:NAS与SAN的区别
目前存储网络技术领域中的两个主旋律是SAN(存储区域网络)和NAS(网络连接区域存储),两者都宣称是解决现代企业高容量数据存储需求的最佳选择. 正如在餐厅就餐时大厨不会为您传菜,跑堂不会为您烹制鲜橙烩 ...
- NEU 1006 Intermediary
1006: Intermediary 时间限制: 1 Sec 内存限制: 128 MB提交: 261 解决: 25[提交][状态][讨论版] 题目描述 It is widely known tha ...
- myeclipse打开jsp页面慢或者卡死
不知道你们有没有这种经历,反正无论是公司电脑还是自己电脑,myeclipse打开jsp页面卡的不行不行的,又是甚至会出现卡死的现象,几经周折,找到了解决办法,亲测有效 打开window-prefere ...
- checkbox的使用总结
1 checkbox如何选中时显示内容,不被选中时隐藏内容 <!DOCTYPE html> <html> <head> <meta name="vi ...
- 7个好用的在线YouTube视频下载工具
title: 7个好用的在线YouTube视频下载工具 toc: false date: 2018-10-10 15:11:00 categories: methods tags: youtube C ...
- Python—使用xml.sax解析xml文件
什么是sax? SAX是一种基于事件驱动的API. 利用SAX解析XML文档牵涉到两个部分:解析器和事件处理器. 解析器负责读取XML文档,并向事件处理器发送事件,如元素开始跟元素结束事件; 而事件处 ...
- Creative Cloud 无法连接问题
防火墙允许 PDApp.exe Windows:Program Files\Common Files\Adobe\OOBE\PDApp\core Mac OS:应用程序 > 实用工具 > ...
- Android7.0打开sdacrd图片问题
1.点击item,通过intent打开指定路径的图片. 2.测试6.0,5.0正常运行代码: File file=new File(item.address): Intent intent = new ...
- 21_HTML&CSS
今日内容: 1. HTML标签:表单标签2. CSS: HTML标签:表单标签 * 表单: * 概念:用于采集用户输入的数据的.用于和服务器进行交互. * form:用于定义表单的.可以定义一个范围 ...