知乎同名账号同步发表
一、架构
论文全称:Image Restoration Using Very Deep Convolutional Encoder-Decoder Networks with Symmetric Skip Connections
其实就是conv和deconv,外加对称的skip connection。作者表示每两层就会有一个skip connection。
作者的意思是说,conv的作用就是进行feature extraction,保留图中对象的主要组件,同时消除corruption。deconv的作用就是recover the details of image contents。
所有的层后面都跟ReLU,feature maps有64层(作者表示更多能提升,但提升不大),filter size是3×3(这一点参考了VGG)。输入image的size可以是随意的,作者实验中对输入channel设置的是1。⚠️注意不用pooling和unpooling,作者的理由是这样会discard essential image detail。
再看一张图:
这就是paper中对模型架构的描述,没什么好说的,接下来直接说一下本文的思想。
二、main contribution
1,skip connection
作者表示这个连接主要干了两件事情,一件事情是帮助梯度反向传播,这个很好理解。
另一件事情是帮助将图像的细节传递到后面的层(pass image details to the top layers)。
这样做的好处就是,一方面能够提升performance,另一方面能够将network变得更深。
2,首创方法
作者表示这是第一个用single model实现不同noise level的去噪任务并且实现good accuracy的方法。(但注意它是2016.9.1,DnCNN是2016.8.13,后者也能实现不同noise level的去噪,不过level得是在preset的range内)。
3,performance领先
比近期(2016.9.1)的去噪和超分的SOTA都要好。
同时注意作者对DNN methods有一个描述:purely data driven; no assumption about noise distribution。
三、一些讨论
1,如果不用skip connection:
如果不用,那么对于浅层网络,deconv能够recover detail;对于深层网络反而不能。所以这个连接对于recover detail和使得网络变得更深有帮助。
2,和highway nets,resnet的不同:
这个网络pass information of the conv feature maps to the corresponding deconv layers。
3,residual learning
网络学的是残差,不是noisy image到noise-free image的映射。
四、训练&模型功能&一些比较
1,100个epochs之后,从loss上看,30层带连接<20层带连接<10层不带连接<20层不带连接<30层不带连接。这里的连接指的是skip connection,可以看出,如果不带它,那么层数变多反而会出问题。所以证明了skip connection的必要性。
2,和resnet也进行了比较,相同block size时,PSNR上RED-Net好于resnet。作者主张他们的skip connection有element-wise correspondence,这对pixel-wise prediction problems很重要。
(block size指的是连接的跨度(the span of the connections))
3,loss采用的是欧氏距离,具体地是最小化下面:
4,有一个trick是最后一层用更小的学习率,作者认为这里没必要这样。
5,☆训练集的生成方式:
按惯例:
- gray-scale image for denoising
- luminance channel for super-resolution
用300张BSD的images,50×50的patch作为ground-truth:
- 生成noisy image: 加入加性高斯噪声;
- 生成低分辨率图:先下采样,再上采样到original size
上面两种数据分别是针对去噪和超分辨率任务的,此模型用这两个同时训练,能够同时处理两个任务。(⚠️注意:在训练数据集中,生成noisy image采用的是不同的noise level,生成低分辨率图用的是不同的scaling parameter)
五、小结
这篇文章非常简单,总结下来,模型进行了两部工作,分别是extracting primary image content and recovering details。重点是使用了skip connections,作者的描述是:
which helps on recovering clean images and tackles the optimization difficulty caused by gradient vanishing, and thus obtains performance gains when the network goes deeper
即帮助解决梯度消失带来的优化困难,从而网络能够变得deeper,从而gain一些performance的提升。然后在去噪和超分两件事上好于当时的SOTA。