前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >让Dropout在图像超分领域重焕光彩!

让Dropout在图像超分领域重焕光彩!

作者头像
AIWalker
发布2021-12-27 10:37:43
5990
发布2021-12-27 10:37:43
举报
文章被收录于专栏:AIWalker

arXiv: 2112.12089

注:因排版有误致图片有误,建议查看原文。本文是X-Pixel 团队关于dropout在图像超分中应用的探索。Dropout不适用于low-level任务已成为常识性认知,却鲜少有学者对其背后的机理进行挖掘分析。本文通过充分的实验与分析得出:合理使用dropout有益于超分模型性能提升,并改善其泛化性能 。如此有意义的研究,何不跟着笔者一起观赏一番呢?

Abstract

Dropout有助于缓解high-level视觉任务中的过拟合问题,但在low-level视觉任务(如图像超分)中却鲜少应用。作为经典的回归问题,SR具有与high-level任务不同的行为:对dropout操作非常敏感

然而,本文研究表明:合理的使用dropout有益于SR模型,提升其泛化性能 。具体来说,dropout更适合于嵌入到网络的尾部 ,并对于多退化情形帮助极大。下图给出了不同配置下采用Dropout前后的性能对比,可以看到:引入dropout可以大幅提升模型的泛化性能 ,甚至可以将SRResNet的提升到优于RRDB的程度。重要的是,添加dropout仅需一行code。真可谓:One line of code is worth a ten-fold increase in the model parameters .

该发现打破了我们的常识并启发我们探索其工作机理。我们采用两种分析工具(Channel Saliency Map与Deep Degradation Representation)进行分析,分析结果为实验发现提供了佐证并为SR模型的理解提供了新视角。

Observation

关于如何将Dropout引入到超分网络中,我们做了很多尝试并在不同配置下得出了完全不同的行为表现,见上图。

  • Dropout is harmful for SR. 该实验为常规超分配置,即bicubic退化。dropout则为广泛采用的通道级形式(见上图a)。正如预期,dropout会导致模型性能大幅下降(与常识相一致)。
  • Dropout does not affect SR. 我们还发现一个与上述结论相悖的特例(见上图b),即仅在最后卷积之前添加dropout 。此时,dropout对于模型性能无影响,这意味着:那一层的特征可以随机masked且不会影响回归结果。这些特征发生了什么?这是否意味着回归与分类网络具有某些共性呢?
  • Dropout is beneficial for SR. 最后的发现就更有意思了(见上图c和d),在多退化配置下,dropout有益于SR 。这意味着:dropout可以一定程度下改善超分模型的泛化性能

上述实验结果为我们提供了寻找low-level任务中dropout有效性的线索。我们将从不同角度对其进行分析,如dropout使用策略、dropout的工作机制。

Apply Dropout in SR Network

为探索Dropout的实用策略,我们以SRResNet、RRDB作为基线进行尝试。影响dropout使用的主要有两点:(1) 使用位置;(2) 使用策略,即维度和概率。

上图给出了dropout的不同使用位置示意图,可以划分为三大类:

  • dropout before the last-conv . 该情形见上图a,这也是本文最终的发现与结论;
  • dropout at middle of network . 该情形见上图a,即作用在body部分;
  • dropout in residual network . 该情形见上图c与b。

除了使用位置外,维度与概率是另一个重要的因素。在维度方面,有channel与element两种形式:channel形式会随机丢弃整个changnel,而element则随机丢弃所有特征的某些element。

丢弃概率则会决定了channel/element的丢弃比例。在分类网络中,50%的概率不会影响最终的结果但会提升泛化性能。然而,该概率对于SR来说过大。为获得可能的增益且不影响模型,我们首先测试了三种概率:10%、20%以及30%。

总而言之,我们具有八个候选位置、两个候选维度以及三个候选概率 。然而,大部分结果是有害的。last-conv与channel形式drop的组合不会影响SR性能,且有益于多退化配置下的超分

Experiments

How to apply Dropout

在该部分实验中,作者以bicubic退化配置探索Dropout的使用方式。上图给出了关于dropout使用位置、概率以及形式的实验结果对比(注:bicubic退化配置),从中可以看到:

  • 不同的dropout位置具有完全不同的性能。当采用单个dropout时,越靠近模型尾部性能越好;当采用多个dropout时,越多的dropout导致越多的性能下降。总而言之,last-conv方案性能最佳
  • element形式的dropout倾向于降低模型性能,而channel形式dropout则具有更好的性能
  • 更大的dropout概率会带来负面影响,在该配置下10%会是一个不错的选择。
  • last-conv+channel的实用组合可以带来有意义且鲁棒的结果

Multi-degradation setting

在该部分实验,作者采用Real-ESRGAN一文的高阶退化(如对高阶退化感兴趣,可移步 【Real-ESRGAN:走出温室,迈向实用】)方式进行模型训练。

上表给出了不同配置下使用dropout前后的性能对比,从中可以看到:

  • 在多退化配置下,引入dropout可以大幅改善模型的性能 。最大性能提升高达0.78dB(Real-SRResNet)与0.95dB(Real-RRDB)。
  • 表中红色标注表示使用Dropout后,SRResNet的性能超越了RRDB

上图给出了使用dropout前后模型的可视化效果对比,可以看到:使用dropout的模型具有更好的内容重建、伪影移除以及降噪效果 。总而言之,dropout可以改善多退化配置超分模型性能

此外,作者还在bilinear、NN及其与噪声组合数据上进行了性能验证。可以看到:对于“域外”测试集(NN),引入dropout仍可以看到可见的性能提升。这说明:Dropout可以提升模型对于未知退化的泛化性能

上表给出了关于dropout概率的消融分析,可以看到:

  • 对于Real-SRResNet而言,10%-90%的概率均有益于性能提升;
  • 对于Real-SRResNet,默认选择p=0.7;对于Real-RRDB,默认选择p=0.5.

Interpretation

在得到上述结果之后,我们非常好奇:引入dropout后到底发生了什么,它又是如何改善模型泛化性能的。接下来,作者从模型可解释性与可视化两个角度进行了分析。

上图给出了PSNR与显著性图之间的相关性。当我们对某些特征进行mask后,我们可以得到不同的PSNR值,低PSNR对应了更亮的显著性图,更亮的只意味着对超分结果的更大影响。很明显:不同特征对于最终的结果影响程度是不一样的

那么dropout会平衡特征的重要性,打破co-adapting吗 ?正如上图所示,引入dropout后,特征与属性图得到了平衡。

为进一步验证,我们zero某些通道并线性缩放其他特征,结果见上图。可以看到:未使用dropout训练的Real-SRResNet模型性能出现了严重下降;而使用了dropout训练的模型则保持不变 。也就是说,对于使用dropout的模型来说,PSNR不再仅仅依赖于特定的几个通道。哪怕丢弃到三分之特征仍可保持性能不变。总而言之,某些特征对于重建更为重要,而 dropout可以平衡不同特征的重要性

评估泛化性能最直接的方式是在更宽范围数据集上进行测试,但对于模型泛化性的预测非常难。本文采用DDR工具进行了分析(DDR说明:网络处理多退化的时候可能是先给他们分分类再分别处理 。也就是说:分的越开(越不集中)泛化性越差 ),结果见上图。从中可以看到:

  • SRResNet的聚集程度弱于Real-SRResNet ,这说明:相比bicubic退化,采用更多退化类型数据训练的模型具有更好的泛化性能;
  • 相比Real-SRResNet(p=0),Real-SRResNet(p=0.9)引入Dropout进一步提升了聚集程度。这说明:Dropout可以进一步提升Real-SRResNet的泛化性能
  • 作者进一步引入了CHI(Calinski-Harabaz Index)指标描述聚类分离度(CHI越低意味着更优的泛化性能)。CHI会随dropout概率提升而降低,进一步说明:dropout有助于改善超分模型的泛化性能
  • 一个有意思的发现:带噪数据的分布总是“特立独行”。这与前面表中的结果相一致,噪声数据的性能总是远弱于clean数据。

为验证:dropout会不会改变模型的收敛特性。作者以Real-SRResNet、Real-RRDB以及SwinIR进行了对比,见上图。可以看到:dropout不会改变模型的收敛特性,收敛曲线几乎一致,同时具有更优的性能 。最后贴上所得dropout使用方案对SwinIR性能影响,见下图。可以看到:采用Dropout训练后,SwinIR的性能得到了进一步提升,最高提升达0.46dB 。这进一步说明了所得方案的通用性。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AIWalker 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Abstract
  • Observation
  • Apply Dropout in SR Network
  • Experiments
    • How to apply Dropout
      • Multi-degradation setting
      • Interpretation
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档