题目:Accurate Image Super-Resolution Using Very Deep Convolutional Networks(2016CVPR)

摘要:文中提出了一种高精度处理单幅超分辨(HR)图像的方法。用了很深的卷积网络inspired by 用于处理ImageNet 分类的VGG-net。发现提高网络深度可大幅提高精度。但是,网络越深,收敛速度成了问题。文中给出了提高训练效率的方法:仅学习residuals使用非常高的学习速率(比SRCNN高10e4倍)。并且比现有方法变现更优异。

关键词:residual image、residual learninggradient clipping、SRCNN、receptive field感受野(information used for reconstruction)

1.介绍

1)文中解决了给定一幅LR(低分辨)图像用来生成HR(高分辨)图像的问题,通常指的是single image super-resolution(SISR)。SISR在CV中使用广泛,都是些需要细节的图像处理。早期的方法包括interpolation(插值法):bicubic interpolation、Lanczos resampling,更多有力的方法利用statistical image priors或者internal patch recurrence。2)

2)目前,许多学习方法应用于建立从LR到HR的映射模型。

具体方法:Neighbor embedding:interpolate the patch subspace。

Sparse coding:use a learned compact dictionary based on sparse signal representation

Random forest and CNN:提高精度

之前论文有方法:SRCNN就是用来学习从LR到HR的mapping in a end-to-end manner。SRCNN特点是不需要任何engineered features。虽然SRCNN成功将深度学习技术引入到SR问题,但是局限有三:依赖于context of small image regions、训练收敛太慢、网络仅仅适于single scale。

3)我们提出一种加速收敛方法:residual-learning CNN,高学习速率。因为LR和HR图像share the same information to a large extent,那么model the residual image是有好处的,因为这个residual就是HR和LR的不同之处。我们提出的网络结构适于输入输出高度相关!并且我们的学习速率比SRCNN快10e4倍,这得益于residual-learninggradient clipping

2.相关工作

1)SRCNN代表了深度学习处理SR方法的当前水平。先分析对比这种方法。SRCNN文章:Image super-resolution using deep convolutional networks(TPAMI,2015)

2)在1)中的论文中,某些情况下深度模型表现更差,1)论文作者认为深度模型不给力。但是本文作者程加强深度可提高表现。并成功提高深度到20weight layers、receptive field 更大(41*41)。

3)Training比较:SRCNN直接在HR图像建模。一幅HR可分解为低频信息(对应于LR图像)和高频信息(residual image 或 image details)。输入输出图像享有相同的低频信息。这表明SRCNN有两个目的:将输入送至最后一层并重建residuals。carry the input to the end类似于auto-encoder(自动编码器)做的事情。大量的时间用于训练自动编码器,所以学习其他部分(image detail)的收敛速率大幅下降。相比而言,我们的网络直接在residual image建模,更快更精确

4)Scale比较:和其它SR处理方法一样,SRCNN针对single scale factor训练,即特定的scale。因此再来一个新的scale就得训练一个新模型,这是繁琐低效的。我们提出来的网络有效处理各种scale的SR问题,表现还不错。此外,我们的输入输出size一样,这通过pad zeros every layer during traing。而SRCNN输出size比输入小。最后,我们的所有网络层训练速率一样,而SRCNN不同层速率不同为的是实现稳定的收敛。

3.提及的方法

1)采用d层网络,除去第一层(输入图像)和最后一层(图像重建),其它层类型都一样:64filter:3*3*64,filter操作3*3区域大小通过64通道。网络接收interpolated LR图像为输入来预测图像细节。对图像细节建模常用来处理SR问题。本文论证了对image detail(residuals)建模的好处。可问题是非常深的网络特征映射的size会在每次卷积操作后变小。例如:(n+1)*(n+1)的输入,感受野为(n*n)时,输出为1*1.许多SR方法都用邻居像素来推断中心像素,中心-邻居关系在邻居像素提供许多constraints时有效,对于许多处在图像边缘的像素,这种关系并不一定成立。此外,需要邻居区域很大时此法也无效。我们的解决方法:在卷积之前补零(pad zeros)使得feature maps(特征映射)尺寸一样。事实证明这还挺有效,边缘像素也被正确预测了。

2)Residual-Learning

在SRCNN中,网络必须保留所有输入细节,输出由所有学到的特征生成,因为有许多weight layers,形成了许多首尾相接的关系,并且需长期的存储记忆,这会导致vanishing/exploding gradients(梯度消失/爆炸)问题。所以提出解决方案:residual learning。以为输入输出图像很相似,我们定义residual image r=y-x.损失函数为1/2||r-f(x)||2。其中f(x)为网络预测。损失层由三个输入:residual estimate、network input(ILR image)、ground truth(HR image)。训练:利用基于反向传播的mini批梯度方法来优化回归目标函数。训练由权重衰减来正则化。

3)High Learning Rates for Very Deep Networks

训练深度网络可能在有限时间内无法收敛。SRCNN没有成功实现大于三层weight layers时的良好表现,原因很多,可能是它们在收敛之前停止了训练过程。很显然,增加学习速率可以加速训练,但是仅仅提高速率可能导致梯度消失/爆炸。所以我们提出可调节的梯度抑制来控制最大化学习速率。即下文4)。

4)Adjustable Gradient Clipping

Gradient Clippiing是一项常用在recurrent neural networks(周期神经网络?)的技术。但是,貌似它只能限于训练CNNs。

5)Multi-Scale

      因为非常深度的网络可以提高性能,更多的参数需要用于定义一个网络,典型的,一个网络如果可以应用于任意scale,那么存储和恢复一个网络很方便。所以我们也训练一个multi-scale网络。

DL论文的更多相关文章

  1. 获取Avrix上Computer Vision and Pattern Recognition的论文,进一步进行统计分析。

    此文主要记录我在18年寒假期间,收集Avrix论文的总结 寒假生活题外   在寒假期间,爸妈每天让我每天跟着他们6点起床,一起吃早点收拾,每天7点也就都收拾差不多.   早晨的时光是人最清醒的时刻,而 ...

  2. (zhuan) 126 篇殿堂级深度学习论文分类整理 从入门到应用

    126 篇殿堂级深度学习论文分类整理 从入门到应用 | 干货 雷锋网 作者: 三川 2017-03-02 18:40:00 查看源网址 阅读数:66 如果你有非常大的决心从事深度学习,又不想在这一行打 ...

  3. ML博客链接

    http://blog.csdn.net/yingwei13mei/article/category/6602238 各种都有(系统教程):http://www.easemob.com/news/76 ...

  4. 计算机电子书 2017 BiliDrive 备份

    下载方式 根据你的操作系统下载不同的 BiliDrive 二进制. 执行: bilidrive download <link> 链接 文档 链接 斯坦福 cs224d 深度学习与自然语言处 ...

  5. 微软亚洲实验室一篇超过人类识别率的论文:Delving Deep into Rectifiers: Surpassing Human-Level Performance on ImageNet Classification ImageNet Classification

    在该文章的两大创新点:一个是PReLU,一个是权值初始化的方法.下面我们分别一一来看. PReLU(paramter ReLU) 所谓的PRelu,即在 ReLU激活函数的基础上加入了一个参数,看一个 ...

  6. cv 论文(CNN相关)

    最近发现很多以前看的论文都忘了,所以想写点东西来整理下之前的paper,paper主要是cv(computer vision)方向的. 第一篇:Gradient-based learning appl ...

  7. 快速理解Parquet的DL和RL

    关于Parquet的详细介绍,请参考: 新一代列式存储格式Parquet,此文中对Parquet做了详细的介绍,这里不做重复介绍,但其中关于Definition Level(DL)和Repeated ...

  8. 论文翻译:Ternary Weight Networks

    目录 Abstract 1 Introduction 1.1 Binary weight networks and model compression 2 Ternary weight network ...

  9. 论文翻译:BinaryConnect: Training Deep Neural Networks with binary weights during propagations

    目录 摘要 1.引言 2.BinaryConnect 2.1 +1 or -1 2.2确定性与随机性二值化 2.3 Propagations vs updates 2.4 Clipping 2.5 A ...

随机推荐

  1. 【IT】公司FTP服务器使用说明

    FTP服务器的作用:----------------------------------------------1.员工个人或者部门资料临时备份(而不是永久归档): 2.部门或员工间交换巨大资料: 3 ...

  2. [日常训练]string

    Description 给定一个长度为$n$的字符串,串中的字符保证是前$k$个小写字母.你可以在字符串后再添加$m$个字符,使得新字符串所包含的不同的子序列数量尽量多.当然,前提是只能添加前$k$个 ...

  3. Javascript格式化json返回的时间(/Date(1482747413000)/)

    //时间处理,类似/Date(1482747413000)/的形式,得到xxx年xx月xx日 11:11:11 function ChangeDateFormat(jsondate) { jsonda ...

  4. Linux 下 ---ThinkPHP 图片上传提示:上传根目录不存在!请尝试手动创建

    2016年11月15日11:15:47 Windows下如果碰到如此问题,要看文件保存根路径里的rootpath,比如ThinkPHP框架里config.php文件里的的参数配置: //文件上传相关配 ...

  5. java 在循环中删除数组元素

    在写代码中经常会遇到需要在数组循环中删除数组元素的情况,但删除会导致数组长度变化. package com.fortunedr.thirdReport; import java.util.ArrayL ...

  6. opencv_判断两张图片是否相同

    QQ:231469242 pip install opencv 如果找不到版本,去非官方下载opencv第三方包http://www.lfd.uci.edu/~gohlke/pythonlibs/ 下 ...

  7. emulator control无法使用问题

    请使用Google 自带的控制器:

  8. centos7安装svn1.8.16

    svn下载地址:http://subversion.apache.org/download/ svn要依赖一些包,可以提前装好 yum -y install apr-util apr-util-dev ...

  9. VBA学习

    1. Range / Cells / Columns / Rows 2. 绝对引用 $F$13 / 相对引用 F13 公式所在单元格的被复制到其他位置时,绝对引用不变 3. VLookup / NLo ...

  10. 神经网络模型及R代码实现

    神经网络基本原理 一.神经元模型 图中x1~xn是从其他神经元传来的输入信号,wij表示表示从神经元j到神经元i的连接权值,θ表示一个阈值 ( threshold ),或称为偏置( bias ).则神 ...