服务热线:0898-08980898
扫一扫

扫一扫

取消
N新闻资讯
N新闻资讯

底层职业超精细解读 (四):LAM:操纵部分归因图分析和可视化超分搜集

发布时间:2024-05-08 09:28:12 | 浏览:

  本系列已授权极市平台,未经允许不得二次转载,如有需要请私信作者,文章持续更新。

  深度学习时代,超分辨率方向的研究不断取得进展,SOTA 被一次又一次刷新。然而 SR 研究也有着深度学习的通病:

底层职业超精细解读(四):LAM:操纵部分归因图分析和可视化超分搜集

  也就是说,很多时候我们只知道某个模型 work,但究竟是怎么 work 起来的。对于这些开放性的问题,我们缺乏系统的认识,甚至缺乏研究工具。对于以上问题,文章认为需要发展针对 SR 领域的Attribution Analysis (归因分析),以更好地理解模型,从而为改进模型指明方向。归因分析,其实在分类问题上已经有一定的进展,本文意在结合 SR 的特性,将分类问题的归因分析方法迁移到 SR 问题上。

  归因分析的结果一般通过归因图 (Attribution map) 的形式展示。在归因图中,对于输出产生较为重要影响的像素被 highlight 出来。通过这种方式,我们可以分析 SR 网络的信息使用模式,并评估 SR 网络是否可以提取高级语义信息。

  如下图1是一张 LR 图通过不同的模型超分成一张 SR 图的结果。HR 图上有一个红色的框,LAM Attribution 就代表了三个不同的超分模型输入的 LR 图像中每个像素对红色的框 SR 结果的重要性。对 HR 图像中间红框处的超分结果进行归因分析,右边图像上标红的像素即为对该超分结果 贡献比较大 的像素。

  LAM 结果表明,FSRCNN 仅利用非常有限的信息,EDSR 增加了信息利用的范围,但仍然无法重建精确的纹理,而非局部网络 RNAN 可以利用更大范围的信息来获得更好的超分结果。

  基于分类问题归因分析中,一种重要的方法是Integrated Gradient (积分梯度)。这一小节我们做个汇总。

  给定输入图片I\in\mathbb{R}^d和模型S: \mathbb{R}^d\mapsto\mathbb{R},模型输出这张图片属于各个类别的概率。归因分析 (Attribution Analysis)方法会给出一张归因图 (Attribution Map),这张图\mathsf{Attr}_S:\mathbb{R}^d\mapsto\mathbb{R}^d对应模型S,它与输入图片I的尺寸是一致的,代表了图像中的每个像素对最终输出结果的 贡献度大小 或 影响程度。对于分类网络,这通常是每个特定的类别的贡献度。所谓归因,简单来说就是对于给定的输入图片I和模型S,我们想办法指出I的哪些分量对模型的决策有重要影响,或者说对I的各个分量的重要性做个排序,用专业的线;。一个朴素的思路是直接使用 预测概率对输入I的梯度 (Gradient w.r.t.I) 来作为I的各个分量的重要性指标,而积分梯度是对它的改进。

  下面简单介绍下分类模型中几种计算归因图 (Attribution Map) 的方法。

  \mathsf{Grad}_{S}(I)_i衡量了模型对输入的第i个分量变化的敏感程度,但是这种普通的计算预测概率对输入I的梯度的方法存在饱和问题 (典型的就是 ReLU 函数的负半轴),即:梯度就为0了,那就揭示不出什么有效信息了。输入I发生一点点的变化将不会改变输出的概率。对于超分模型,饱和问题依旧存在。

  2) 预测概率对输入I的梯度与输入的点乘:这种方法是为了解决上面的饱和问题:

  但对于超分网络的解释,像素强度不应该是归因图 (Attribution Map) 的一部分,因为当像素强度改变时,纹理和边缘可能不会改变。直接计算输入强度和梯度的乘积会引入干扰因素。鉴于直接使用梯度的上述缺点,一些新的改进相继被提出来,如LRPDeepLift等,不过相对而言,积分梯度的改进更为简洁漂亮。

  积分梯度代表了图像中的每个像素对最终输出结果的 贡献度大小 或 影响程度。

  假设我们要分析的输入是I,还有一个基线;,可以取纯黑的图片等等。模型是S,假设是个分类模型或者 SR 模型,\alpha是插值参数,I+\alpha \times (I - I)表示从基线;到原始输入图片I的插值过程。则积分梯度 (Integral Gradient)的定义为:

  的含义是输入图片I的第i个像素对最终输出结果的 贡献度大小 或 影响程度。积分梯度满足所有分量的积分梯度之和等于从基线图片到最终图片模型输出结果的变化:

  分类网络根据输入的图片得到输出的一个预测结果,但是超分模型会输出与 LR 图片对应的 SR 图。SR 问题具有较强的局部相关性,不像分类问题那样输出结果具有高级的语义信息。作者不会对整张 SR 的结果进行归因,而是只取局部的一个 patch。这种做法与很多图像质量评价的做法类似。 我们的目标是找到对输出图像中

  的重建作出贡献的输入像素。这个过程可以告诉我们 SR 网络已经利用了什么信息。

  对于 SR 任务而言,平坦的区域和简单的边缘相对容易重建出来,只需要简单的插值即可完成恢复,这些简单的区域对我们理解 SR 网络的帮助是有限的,我们真正关心的是限制 SR 网络性能的 困难 区域。在这些 困难 区域中,LR 图片只包含了有限的信息,这个时候我们就能通过分析一些表现相对较好的 SR 网络来分析到底该如何设计 SR 算法。

  分类问题输出的是输入图片通过模型之后,每个类的得分,SR 模型输出的是像素,而

  因此不能照搬分类问题中取出某个输出分量 (pixel) 进行归因分析的做法。所以,作者提出了用局部特征代替像素的做法,检测特定局部特征的存在,例如边缘和纹理。将归因方法的 因 视为是否存在边缘/纹理,而不是单个的像素。

  大小的 patch,位置在(x, y),作者使用一个检测器D_{xy}:\mathbb{R}^{l\times l}\mapsto\mathbb{R}来量化在这个 patch 中是否存在某些特定的特征 (比如边缘和纹理)。检测器的实现方法也有不少,这里使用简单的形式:梯度检测器,即:

  经过模型F输出的结果F(I)有特定的特征,则D(F(I))将会比D(F(I))在数值上面大很多。对于 LR 输入图片

  而言,尽管模型F输出的结果F(I)不是一个标量或者向量,但是每个 patch 的检测器输出的结果却是个标量。超分模型F再加上后面的检测器D就相当于了一个分类模型,输出 LR 图片的某个 patch 里面是否有特定的特征。我们就可以计算这个标量对于 LR 图片的积分梯度了,这也就是 LAM 的核心思想。假设

  ,将模型的输出结果重新变成标量,以完成积分梯度;二是积分的对象由原来的完整图片变为局部图片,因为 SR 问题具有较强的局部相关性,不像分类问题那样输出结果具有高级的语义信息,如下图1所示。>

  ,它经过模型F输出的结果F(I)没有特定的特征。在 SR 任务中,LR 图像的低频分量 (例如,颜色和亮度) 对最终 SR 模型性能的贡献较小。相反,高频分量 (例如,边缘和纹理) 对于实现良好的超分结果非常重要。在 LAM 中,基准图片I设计成原始的 LR 图片的模糊版本:

  ,但是 LR 图片和模糊的 LR 图片插值后的结果含有伪像,并且不遵循自然图像的先验分布。使用这样插值出来的的图片从 LR 图片过渡到模糊的 LR 图片是不自然的。因此,作者提出了更加平滑的过渡方式:

  的梯度作为归因图,存在着梯度饱和的问题,作者也通过实验进行了验证。如下图2所示是一个 LAM 实验的例子,分别是 HR 图,LR 图,EDSR 模型超分结果以及 LAM 的实验结果。图2.a 红色的方框是选中的要进行归因分析区域。从图2.d 可以看出来我们选中的区域包含一些边缘,正是这些相对 困难 的部分真正影响了超分模型的性能。而 LAM 得到的归因图也能够不错地展示出这些边缘部分,即:LAM 认为这些边缘部分对于模型而言比较重要。

  从基线图像插值到 LR 图像的过程输入的变化。LAM 个 IG 二者在路径的选择上不同,如前文4.5节所述,IG 是使用的基准图片是 black image,路径直接使用线性插值,而 LAM 使用的基准图片是原始 LR 图片的模糊版本,积分路径使用渐进模糊路径函数 (progressive blurring path function)。这在图3中就能够直观地感受出来。

  从基线图像到 LR 图像,输入通过超分模型F和检测器D之后的结果。LAM方法:这个结果逐渐增大到出现了饱和 (saturation),所以直接求梯度就会出现梯度非常小的现象。IG 方法:这个结果逐渐增大,没有出现饱和。

  从基线图像插值到 LR 图像过程中梯度的累加,红色虚线代表D(F(I))-D(F(I))。

  从基线图像插值到 LR 图像过程中对 local patch 中每个位置的梯度可视化。>

  。虽然使用 black image 作为基线图像时,D(F(\gamma(\alpha)))的值也会非常小,但是,black image 作为基线图像没法体现出特定特征 (如边缘,纹理等) 的缺失。black image 作为基线图像时,D(F(\gamma(\alpha)))较小是因为像素的强度很小;而模糊 LR 图片作为基线图像时,D(F(\gamma(\alpha)))较小是因为缺失了特定特征 (如边缘,纹理等)。通过图3.g 我们也可以发现,对于 IG 的线性插值,

  LAM 突出对 SR 结果具有最大影响的像素。理论上,对于相同的局部小 patch,如果 LAM 得到的归因图涉及更多的像素或更大的范围,则可以认为 SR 网络已经利用了来自更多像素的信息。那么如何来衡量这个 更大的范围 呢?作者这里使用了基尼系数 (Gini coefficient):

  代表归因图中第i维的绝对值,\bar{g}是平均值,G\in[0,1]。基尼系数基尼系数 (英文:Gini index、Gini Coefficient) 是指国际上通用的、用以衡量一个国家或地区居民收入差距的常用指标。基尼系数最大为 1,最小等于 0。基尼系数越接近0表明收入分配越是趋向平等。

  扩散指数 (Diffusion Index) 和基尼系数 (Gini index) 是相反的,DI 越大,代表归因图结果相对均匀,代表 SR 模型注意到很多的地方。

  早期的网络 FSRCNN 和浅层网络 CARN 的归因图有效区域相对较小,意味着这些模型只能基于有限的周围像素进行超分。

  深度残差网络,即 EDSR,RRDBNet,RCAN 和 DRLN,具有更深的架构和更大的归因图有效区域。这些网络对 LR 图像中具有相似图案的更大范围的像素感兴趣,例如,摩天大楼上出现的规则条纹。尽管这些区域中的纹理在 LR 图像中严重混叠,这可能误导 SR 过程,但是一些网络仍然重建精确的纹理,并且根据 LAM 结果,它们注意到更大范围的未混叠区域网络科技

  对于有 non-local 和 channel-wise attention 模块的超分模型,它们会利用更长距离的信息来协助 SR 的过程。代表性模型包括 RNAN,RNAN 和 SAN。

  这个实验证明了 LAM 作为研究辅助手段的价值。值得注意的是,一些网络,像 SAN 和 DRLN 等等也考虑了更大范围的像素,但仍然重建了错误的纹理。在这些模型中,来自更多像素的信息不能有效地用于精确重建。

  如图5所示的热图展示了不同 SR 网络的关注区域,所有的 SR 网络都关注红色的区域,不同 SR 模型关注区域的不同体现在蓝域上。 如何提取和利用蓝域的信息是一个 SR 网络区别于其他网络的关键因素。在图6的第6、第7和第8个例子中,SR 网络的注意力沿着纹理延伸的方向分布;在第9个例子中,SR 网络注意到目标补丁周围形状相似的窗口。

  因为扩散指数 (Diffusion Index) 越大,代表归因图结果相对均匀,代表 SR 模型注意到很多的地方,所以作者想分析下扩散指数和网络的性能是否有联系。或者说,我们能否通过利用来自更多像素的信息来获得更好的 SR 性能?

  轴代表 DI 的对数,y轴代表 SR 性能。我们发现无论是 PSNR 指标还是 LPIPS 指标,和 DI 都是强相关的。这证明了更多像素的信息能够帮助模型获得更好的 SR 性能。 找到从更多像素中获取更好的性能的方法是未来工作的重要方向。>

  很多工作希望把 SR 模型做深,这带来感受野的增加。这些工作因此希望通过感受野的增加来提升 SR 的性能。但是Diffusion Index 和 Receptive Field 的关系如何?

  除了增加更多的卷积层,有些网络还引入了全局操作 (global pooling layers 层和 non-local 操作的通道式注意力机制),这在理论上可以增加感受野以覆盖整个图像。比如 RRDBNet 的感受野和 DI 都比较大,但与之相比,使用全局操作的 IMDN 网络等虽然没有显著增加 DI,但是性能 (PSNR) 却显著提升了,它们在利用信息方面更有效率。

  结论:现有网络的感受野足够大,单纯增加感受野的效果是有限的。如何有效地利用接收区域像素内的信息才是至关重要的。

  下图9是Diffusion Index 和图片内容的关系。图9上面蓝色的点的含义是:每条竖线上的点代表

  。从左到右按照 DI 值从大到小依次排列。可以看出有些图片 (偏右侧的) 通过不同网络时的 DI 值,整体较大,差别也较大,有些图片 (偏左侧的) 通过不同网络时的 DI 值整体较小,差别也较小。有些图片 (设为A),尽管网络有较大的感受野和较好的性能,但是 DI 仍然很小。这表明这些网络认为对于图片A而言,更大范围内的语义或特征对当前 patch 的超分没有什么帮助。可有些图片 (设为B),网络的 DI 很大。这表明这些网络认为对于图片B而言,更大范围内的语义或特征对当前 patch 的超分帮助很大。

  和网格纹理的图像非常容易被 SR 网络检测到,而复杂的高级语义,如人和动物,则不能被有效使用。LAM 的结果实际上指出,对于 SR 网络,复杂的高级语义和我们想象的作用不一样,它们是否能帮助 SR,这是一个未解决的问题。结论:有的图片,不同超分模型的 DI 值都比较小,代表这种图片更大范围内的语义或特征对当前 patch 的超分没有什么帮助。有的图片,不同超分模型的 DI 值有大有小,代表这种图片更大范围内的语义或特征对当前 patch 的超分帮助很大。

  ,将模型的输出结果重新变成标量,以完成积分梯度。同时提出渐进模糊路径函数 (progressive blurring path function)\gamma_{\mathrm{pb}},它通过渐进地改变模糊核来实现从 baseline 图片I到I的平滑变换。LAM 提出扩散指数 (Diffusion Index) 来表达 SR 网络在完成 SR 任务时,利用了来自多大范围的像素的信息。扩散指数和 SR 网络性能,SR 网络感受野大小,SR 网络本身大小和图片内容都有关。

友情链接
  • 我们的热线0898-08980898
  • 我们的邮箱admin@whenbot.vip
  • 我们的地址江西省南昌市
  • 我们的微信号whenbot

留言主题