• 让dropout在图像超分辨领域大放异彩![2022 CVPR]


    《Reflash Dropout in Image Super-Resolution》这是篇来自中国科学院深圳先进技术研究院的2022年CVPR的探究型文章,探索了在图像恢复领域如果加入dropout会提供泛化能力和防止协同适应的问题。

    论文:阿里云盘分享

    目录

    介绍

    dropout好处

    dropout原理

    发现

    贡献

    相关工作

    观察

    应用到SR网络中

    dropout 位置

    dropout维度和概率

    实验

    SR 设置

    如何应用到SR网络中

    解释

    Dropout 帮助阻止 Co-adapting

    Dropout 帮助提供泛化能力

    介绍

    dropout好处

    1. 适当使用dropout可以使SR(Super-Resolution)网络受益并提高泛化能力

    2. dropout更适合地嵌入在网络末端,并且对于多degradation设置非常有帮助

    使用dropout原因

    1. 现如今大家都在研究丰富数据的多样性以及网络的能力,但是很少有人尝试去提升training strategy。

    2. 过拟合就是一个著名的问题。当网络规模大的时候,模型的泛化能力就会越差。

    3. 但是如今过拟合已成为盲SR的主要问题。仅仅增加数据和网络规模就不能持续提高泛化能力。

    解释 “盲” : 就是面对未知的数据(测试集或真实场景下的数据)

    dropout原理

    1. dropout的机制是禁用某些单元并随机产生许多子网络。每个子网络都能够给出可接受的结果。

    2. SR是一个标准的回归问题,其中网络特征和通道都对最终输出有贡献。如果我们随机丢弃一些特征或像素,输出性能将会严重下降。这就是为什么我们看不到dropout在SR中的应用以及其他低级视觉任务的原因。

    发现

    1. 通过适当使用dropout,SR模型的性能可以在分布内 (训练集中已知的分布) 和分布外 (测试集中未知的分布) 数据中显着提高

    2. dropout可以帮助SRResNet甚至胜过RRDB,而RRDB的参数则是SRResNet的十倍。添加dropout只是一行代码,并且不会牺牲计算成本。

    贡献

    本文最吸引人的部分不在于实验,而在于解析分析dropout的行为:1、通道显着性图 (channel saliencymap)2、深度退化表示 (deep degradation representation)

    相关工作

    1. SpatialDropout (channel-wise dropout:randomly zero out the entire channels) 制定了一种新的dropout方法,从特征图中消除通道。当输入具有很强的空间相关性时,此方法的性能优于以前的dropout策略。

    2. DropBlock与在完全连接的层上添加dropout的原始方法不同。将dropout应用于残余块 (在卷积层和跳过连接后面),然后探索在网络的不同部分使用dropout。

    观察

    1、在每层卷积后加入channel-wise dropout,正如预期的那样,性能急剧下降,见图2a,表明回归问题不同于分类问题。在回归中,网络中的每个元素都有助于最终输出,这是一个连续的强度值,但不是离散的类标签。

    2、在相同的设置下,我们仅在最后一个卷积层之前添加逐通道dropout。最终性能完全不受影响,见图2b。表明该层中的特征可以被随机掩蔽,这不会影响回归结果。我们还尝试在测试过程中丢弃一些功能,但没有发现明显的性能下降。这些功能会发生什么?这是否意味着回归和分类网络有共同点?

    3、训练数据包含multiple-degradation,我们在倒数第二个卷积层添加dropout,效果是在双三次降采样(训练集中有)和最近邻降采样 (训练集中没有) 数据集中测试的。从图2c和2d中,我们可以观察到dropout提高了分布中和分布数据的性能。这表明dropout在一定程度上提高了泛化能力。

    应用到SR网络中

    dropout的效果取决于1、dropout位置 2、dropout策略

    dropout 位置

    1. 在最终输出层之前使用dropout。使用last-conv来表示此方法。

    2. 在网络中间加dropout。作者们将SRResNet的resuidal blocks(16 blocks)分为了4组。每一组包含4个residual blocks。作者选择B4,B8,B12,B16作为典型的dropout插入的位置。

    3. 利用multiple dropout layers在residual network中。如图3c中所示。这里对加入了dropout的结构命名为dropped residual blocks。作者设计了3种插入dropped residual blocks的方式命名为all-part, half-part和quarter-part。

    dropout维度和概率

    dropout最初被用于全连接层,可是在卷积层上涉及到不同维度(元素和通道)。

    dropout概率是要丢掉多少比率的元素或者通道,测试一下dropout的概率为10%,20% 和30%。我们还包括在multi-degradation SR中更高的dropout概率 (例如,50% 或70%)。

    结果表明,具有逐通道丢弃的last-conv方法不会损害SR网络

    实验

    SR 设置

    分为 单degradation 和 多degradation 两部分,其中multi-degradation使用的是“Real”前缀

    如何应用到SR网络中

    1. 使用单个dropout层的情况下,当dropout位置更靠近输出层时,我们可以获得更好的性能。

    2. 对于更多dropout层,我们可以观察到更大的性能下降

    3. 其中,last-conv方法的性能最好

    4. 从图4a和4b可以观察到的,元素式dropout方法倾向于降低性能,而通道式dropout方法通常表现更好

    5. 较大的dropout概率将在大多数情况下带来更差的影响

    总结:建议在最后一个卷积层之前应用通道式dropout,概率小一点为好(10%?)

    解释

    Dropout 帮助阻止 Co-adapting

    ​co-adapting是指神经网络中的一种依赖关系,比如下一层很依赖上一层的某个特定通道,例如上一层一共有64个通道,但是一家独大,1个通道的数值特别大,而其他通道的数值特别小,这样通道之间就会出现一种不平衡性。而drop-out通过在训练中强制让一些通道失去作用,那么为了保证效果,就会强制让其他通道的能力增强。

    高级任务中会存在协同适应(Co-adapting)而导致过拟合,dropout可以防止这一现象而缓解过拟合问题。

    作者引入了channel saliency map(CSM)辅助工具。CSM是用来高亮出对于最终的输出起重要决策的因素。想要利用CSM去研究不同的channel对于最终结果的影响。从图6可以看出,64个通道,分别屏蔽某个通道时,CSM越红,下面的特征图越亮,对应的功能越重要,被屏蔽后对PSNR的影响越大。比如屏蔽了最亮的30+的通道,PSNR最低,因为CSM最红,包含的特征越多。说明了SR也存在co-adapting问题。

    添加了dropout之后,可以看到CSM从左边的部分红,变成了大都红(个别富裕转向了全面小康),说明dropout可以均衡特征的重要性

    为了更进一步地证明这件事,作者zero out了每一个channel。图8证明了Real-SRResNet去掉了dropout后会随着更多chennels被抛弃PSNR values会骤降。但是对于使用了dropout的网络并没有大变化。对于一个带有dropout的模型,PSNR不再依赖许多特定的channels。甚至只有三分之一的channels可以足以支撑性能。这也证明了dropout可以均衡channel的重要性。鲁棒性更好!蓝色部分(未使用dropout的)接近40时,明明drop掉的通道数变多了,但是性能反而上去,而且上去的幅度还挺多,意味着刚好drop掉了一些不重要的通道或者是噪声比较多的通道。

    Dropout 帮助提供泛化能力

    深度退化表示 (DDR)揭示了SR网络可以将输入分类为不同的 “降级语义”。在图9a中,具有不同颜色的点指示具有不同降级的输入。具有相同降级的输入 (具有相同颜色的点) 将被聚类。如果得到的簇很好地划分,则网络倾向于仅处理特定的降级簇而忽略其他簇,从而导致泛化性能较差。如果聚类趋势较弱,则网络可以很好地处理所有输入。例如,从图9a和图9b的比较中可以观察到,没有dropout的原始SRResNet的聚类程度大于Real-SRResNet。这说明出现更多降级的网络具有更显着的泛化能力。

    总结:如果网络能将多种degradation 很好的分类说明泛化能力很差,如果分类能力很弱说明泛化能力很强。

    可以使用Calinski-Harabaz指数 (CHI) 来测量簇的分离程度。较低的CHI意味着较弱的聚类程度,这也表明较好的泛化能力。在图9d中,可以观察到CHI随着dropout概率的增加而降低。结果表明,dropout提高了SR网络的泛化能力。


    如果觉得对你有帮助的话:

    点赞,你的认可是我创作的动力!

    收藏,你的青睐是我努力的方向!

    评论,你的意见是我进步的财富!

  • 相关阅读:
    打破企业管理边界,数字化供应链管理系统助力企业建设数字化韧性供应链
    Bootstrap5 安装使用
    1. 封装自己的脚手架 2.创建代码模块
    [附源码]Python计算机毕业设计Django校园订餐系统
    Vue3 脚手架创建项目
    【rtp-benchmarks】读取本地文件基于uvgRtp实现多线程发送
    安卓打开第三方应用失败
    美食节目:视觉盛宴如何唤醒沉睡的食欲
    docker学习
    Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):1、JIRA账号注册
  • 原文地址:https://blog.csdn.net/qq_41080854/article/details/127686446