arXiv: 2112.12089
注:因排版有误致图片有误,建议查看原文。本文是X-Pixel 团队关于dropout在图像超分中应用的探索。Dropout不适用于low-level任务已成为常识性认知,却鲜少有学者对其背后的机理进行挖掘分析。本文通过充分的实验与分析得出:合理使用dropout有益于超分模型性能提升,并改善其泛化性能 。如此有意义的研究,何不跟着笔者一起观赏一番呢?
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模型的理解提供了新视角。
关于如何将Dropout引入到超分网络中,我们做了很多尝试并在不同配置下得出了完全不同的行为表现,见上图。
上述实验结果为我们提供了寻找low-level任务中dropout有效性的线索。我们将从不同角度对其进行分析,如dropout使用策略、dropout的工作机制。
为探索Dropout的实用策略,我们以SRResNet、RRDB作为基线进行尝试。影响dropout使用的主要有两点:(1) 使用位置;(2) 使用策略,即维度和概率。
上图给出了dropout的不同使用位置示意图,可以划分为三大类:
除了使用位置外,维度与概率是另一个重要的因素。在维度方面,有channel与element两种形式:channel形式会随机丢弃整个changnel,而element则随机丢弃所有特征的某些element。
丢弃概率则会决定了channel/element的丢弃比例。在分类网络中,50%的概率不会影响最终的结果但会提升泛化性能。然而,该概率对于SR来说过大。为获得可能的增益且不影响模型,我们首先测试了三种概率:10%、20%以及30%。
总而言之,我们具有八个候选位置、两个候选维度以及三个候选概率 。然而,大部分结果是有害的。last-conv与channel形式drop的组合不会影响SR性能,且有益于多退化配置下的超分 。
在该部分实验中,作者以bicubic退化配置探索Dropout的使用方式。上图给出了关于dropout使用位置、概率以及形式的实验结果对比(注:bicubic退化配置),从中可以看到:
在该部分实验,作者采用Real-ESRGAN一文的高阶退化(如对高阶退化感兴趣,可移步 【Real-ESRGAN:走出温室,迈向实用】)方式进行模型训练。
上表给出了不同配置下使用dropout前后的性能对比,从中可以看到:
上图给出了使用dropout前后模型的可视化效果对比,可以看到:使用dropout的模型具有更好的内容重建、伪影移除以及降噪效果 。总而言之,dropout可以改善多退化配置超分模型性能 。
此外,作者还在bilinear、NN及其与噪声组合数据上进行了性能验证。可以看到:对于“域外”测试集(NN),引入dropout仍可以看到可见的性能提升。这说明:Dropout可以提升模型对于未知退化的泛化性能 。
上表给出了关于dropout概率的消融分析,可以看到:
在得到上述结果之后,我们非常好奇:引入dropout后到底发生了什么,它又是如何改善模型泛化性能的。接下来,作者从模型可解释性与可视化两个角度进行了分析。
上图给出了PSNR与显著性图之间的相关性。当我们对某些特征进行mask后,我们可以得到不同的PSNR值,低PSNR对应了更亮的显著性图,更亮的只意味着对超分结果的更大影响。很明显:不同特征对于最终的结果影响程度是不一样的 。
那么dropout会平衡特征的重要性,打破co-adapting吗 ?正如上图所示,引入dropout后,特征与属性图得到了平衡。
为进一步验证,我们zero某些通道并线性缩放其他特征,结果见上图。可以看到:未使用dropout训练的Real-SRResNet模型性能出现了严重下降;而使用了dropout训练的模型则保持不变 。也就是说,对于使用dropout的模型来说,PSNR不再仅仅依赖于特定的几个通道。哪怕丢弃到三分之特征仍可保持性能不变。总而言之,某些特征对于重建更为重要,而 dropout可以平衡不同特征的重要性 。
评估泛化性能最直接的方式是在更宽范围数据集上进行测试,但对于模型泛化性的预测非常难。本文采用DDR工具进行了分析(DDR说明:网络处理多退化的时候可能是先给他们分分类再分别处理 。也就是说:分的越开(越不集中)泛化性越差 ),结果见上图。从中可以看到:
为验证:dropout会不会改变模型的收敛特性。作者以Real-SRResNet、Real-RRDB以及SwinIR进行了对比,见上图。可以看到:dropout不会改变模型的收敛特性,收敛曲线几乎一致,同时具有更优的性能 。最后贴上所得dropout使用方案对SwinIR性能影响,见下图。可以看到:采用Dropout训练后,SwinIR的性能得到了进一步提升,最高提升达0.46dB 。这进一步说明了所得方案的通用性。