当前位置: 首页 > article >正文

TPAMI 2025 | CEM:使用因果效应图解释底层视觉模型

底层视觉可解释性专题:https://x-lowlevel-vision.github.io/

论文:https://arxiv.org/abs/2407.19789

代码:https://github.com/J-FHu/CEM

动机

在底层视觉领域,深度学习模型虽极大提升了任务性能,但其内部运行机制宛如黑盒,行为逻辑模糊不清。深度剖析这些模型,对优化网络架构、强化实际应用可靠性至关重要。为攻克这一难题,我们引入因果推理理论用以阐释底层视觉模型,并推出解释工具 —— 因果效应图(Causal Effect Map, CEM)。CEM具有良好的通用性,能适用于各类底层视觉任务及不同的网络结构。借助CEM,我们能够直观量化输入与输出之间的正、负效应关系,为底层视觉模型的解释开辟了全新视角。

通用性

在过往研究中,Gu等人提出的 Local Attribution Map(LAM)[1],运用积分梯度方法,揭示了超分辨率网络里输入图像的不同区域与特定区域超分结果间的相关性。LAM 这一成果,为超分辨率领域的研究提供了关键的结论,如下图所示,使用LAM可以发现不同超分网络对输入图像的利用差异,这极大增进了我们对超分网络的理解。但 LAM 的计算基于图像超分,这就决定了它只适用于超分辨率网络,在其他底层视觉任务中无法应用 。

因果性

为了追寻对神经网络更科学更严谨的理解,我们希望从相关性分析深入为因果性分析。仅仅观察到两个事件或变量之间存在相关性,并不能就此认定它们存在因果关系 [2]。如下图左所示例子,如果我们统计冰淇淋和T恤销量会发现这两者呈现正相关性,同时温度和T恤销量也是正相关性。但从本质逻辑判断,冰淇淋销量的增长并非引发 T 恤销量上升的原因。这清晰地表明,相关性与因果性之间不能简单划等号。do 算子是因果推理中一个用于实现干预(Intervention)的重要算子。通过干预我们才能判断出变量间的因果性。如下图右所示,若对冰淇淋销量实施干预措施,使其每日销量维持恒定,即执行 do (冰淇淋销量 = 常数) 操作,此时可观测到 T 恤销量并不会随之趋于平稳;而当对温度进行干预,使每日温度保持一致,即 do (温度 = 常数),则 T 恤销量将不会产生显著波动。通过系统地观察与分析一个变量在另一变量接受干预前后的变化,我们得以准确判断变量间的因果关系,为深入理解神经网络的内在机制提供了关键方法与全新视角。

底层视觉中的干预

既然明确了通过干预操作能够判断变量间的因果性,接下来我们就要思考如何在底层视觉任务中实施干预。以图像识别为代表的高层视觉任务,其干预方式如下图所示,常见做法包括模糊处理或者采用 zero mask(零掩码)。通过抹除图像不同位置的语义信息,观察该位置对网络预测结果产生的影响,进而推断出因果效应。然而这样的方式无法直接使用在底层视觉任务中,例如下图所示,模糊操作没有带来有意义的干预,而zero mask操作则太过强烈的破坏了像素信息。鉴于此,我们认为在底层视觉任务中实施干预应遵循两项基本原则:其一,干预必须具备实际意义,能够切实带来图像内容上的实质性改变;其二,干预过程应确保无害,不能使图像严重偏离自然图像分布。另外,底层视觉模型大多与图像的退化(Degradation)相关,若干预行为改变了输入图像中的退化类型及程度,网络行为极有可能受到这些不一致的退化因素干扰。因此,我们进一步提出,底层视觉任务中的有效干预应保证不改变原有的退化分布,以此保障底层视觉模型的稳定运行与准确分析。

基于上述分析,我们决定从自然图像库获取干预图像块,并通过多次干预计算期望。这一方法得出的结果,在一定程度上反映了该区域在平均情况下对重建的基础作用。选择自然图像库中的图像块,可确保干预不会过度偏离自然图像的分布。同时,多次干预能够有效消除单次干预可能产生的偏差,使结果更具可靠性与代表性。

最终我们因果效应图(Causal Effect Map,CEM)的整体计算流程如下图所示:

1.原始输入图像 I 经由模型 F 处理后,运用图像质量评价指标 M_R (在本文中为 PSNR)来测算绿色框选的感兴趣区域 ROI 的重建效果。

2.我们从自然图像库 N 中随机选取干预图像块 x_t ,用以替换输入图像 I 中的区域 p_i 。随后,对干预后的图像经模型 F 输出的 ROI 重建结果进行量化。通过执行 T 次干预操作,计算干预效果的期望值。

3.通过计算干预前图像 I 与干预后图像 I’ 的输出图像差异,从而得到区域 p_i 所对应的因果效应。当因果效应大于 0 时,表明原始的 p_i 相较于平均结果产生了正向贡献;而当因果效应小于 0 时,则意味着原始的 p_i 相较于平均结果造成了负向贡献。

一些有趣的发现

机制诊断

如下图所示,通过对比RCAN [3]和SwinIR [4]的LAM结果,我们注意到在 RCAN 模型中,与ROI重建相关的区域数量更多。依据先前研究的结论,模型若能利用更多的区域信息,通常应当会取得更为理想的效果。然而,令人费解的是,为何在 RCAN 的结果中却出现了纹理错误的情况呢?

如下图通过CEM 进行深入剖析,谜团得以解开:原来在 RCAN 中,大部分的输入区域对 ROI 的重建产生了显著的负向影响,而且这种影响的程度相当大,最大的负向效应达到了 3.43 dB。相较之下,SwinIR 的表现则相对稳定,其输入图像中的区域不会给 ROI 的重建带来过于严重的干扰。此外,我们还进行了这样的实验:当改变 RCAN 模型中产生最负向贡献区域内的一个像素值时,惊喜地发现 ROI 的重建效果最多可提升 5.13 dB,同时错误的纹理也能够得到有效的纠正。而对于 SwinIR 模型,在改变其产生最负向贡献区域内的一个像素值后,ROI 的重建效果最多仅能提升 1.04 dB。

为了深入探究 RCAN 模型出现问题的根源,我们开展了进一步的研究。RCAN 模型的众多层级中都集成了通道注意力机制,而在这一机制的运算过程中,存在着全局池化(Global Pooling)这一关键步骤。该步骤会将维度为 H×W×C 的特征图在空间维度上进行压缩,最终得到维度为 1×1×C 的向量。我们推测,这一过程中的信息压缩程度可能过高,对于像素级的图像超分辨率任务而言,这种过度的信息压缩或许是不利的。

基于以上推测,我们对 RCAN 模型进行了改进,将通道注意力机制中的全局池化操作替换为核大小为 16 的区域平均池化,由此得到了改进后的模型 RCAN_AP16。随后,我们在这一改进模型上再次进行了因果效应图(CEM)的计算。结果正如下图所示,改进后的模型中,最具负向影响的图像块所产生的因果效应显著减弱,同时, ROI在重建过程中也不再出现错误的纹理现象。

不同任务的差异

以往,底层视觉领域的可解释性工具大多仅适用于图像超分辨率任务,而针对其他任务的可解释性研究则相对匮乏。然而,借助因果效应图(CEM),我们能够对同一网络在处理不同任务时的行为差异展开深入分析。

如下图所示,我们挑选了四个具有代表性的网络结构,分别是 SRResNet [5]、RCAN、SwinIR 以及 X-Restormer [6]。通过观察这些网络在超分辨率(SR)、去噪(DN)、去雨(DR)任务中的 CEM 结果,我们发现:在超分辨率任务中,网络结构的合理设计确实能够使其利用到更为广泛的区域信息;而在去噪任务中,尽管这些网络具备拥有大范围甚至全局感受野的能力,但实际上,真正发挥作用的区域仍然相对局限于局部范围。

我们在测试集上统计不同任务不同模型的CEM情况,可以发现一些有趣的结论。如下图所示,在超分辨率任务发展过程中,模型利用到的信息量发生了显著变化。模型在去噪任务的发展则没有体现出同样的变化,去噪模型所关注的区域仅仅占据了整幅图像的一小部分,而且这些区域对于ROI的重建所产生的因果效应也并不突出。至于在去雨任务中,网络所展现出的行为特征则处于超分辨率任务和去噪任务两者之间的状态。

多任务模型分析

在先前的实验里,我们所考量的均是通过单一任务训练而得的网络模型,并对这些模型在该单个任务上的行为表现进行观察。然而,因果效应图(CEM)同样能够对经由多任务训练所产出的通用模型开展分析工作。我们将低分辨率图像、噪声图像以及雨图同时作为训练数据,把超分辨率、去噪和去雨这三种任务混合起来对模型进行训练,由此获得了三个具有代表性的网络,分别是 SRResNet-mix、RCAN-mix 以及 SwinIR-mix。将它们与各自的单任务训练版本进行对比后,我们也能够观察到如下图所示的 CEM 结果。一个显著的变化在于,经过混合任务训练的模型在超分辨率任务上所利用到的区域数量大幅减少,同时其性能也出现了明显的下降,即便 RCAN 和 SwinIR 在单任务训练版本中已然展现出了对长程信息的利用能力。不过,对于去噪和去雨任务而言,这些模型的行为表现以及性能并没有发生太大的改变。这一现象揭示出,在多任务训练的过程中,如果对不同任务采取一视同仁的混合方式,很可能会致使模型仅仅聚焦于部分任务,进而使得模型无法培养出处理全局信息的能力。这或许揭示了我们在训练通用模型时,针对不同任务的难度、比例以及训练顺序等方面,或许都需要进行精心的调试 [7],以避免模型的潜力无法得到充分的挖掘。

总结

本工作提出了一种名为 CEM 的通用方法来解释底层视觉模型。首次将因果关系引入底层视觉的可解释性中。通过该方法,我们实现了对输入图像区域与模型性能之间因果效应的可视化呈现。通过将 CEM 广泛应用于各类不同的底层视觉模型,我们得以从一个全新且独特的视角出发,对底层视觉领域的发展进行深入思考。期待未来的研究人员基于 CEM 进一步理解和探索底层视觉模型。最终推动整个领域朝着更智能、更可靠的方向发展。

相关文章:

TPAMI 2025 | CEM:使用因果效应图解释底层视觉模型

底层视觉可解释性专题:https://x-lowlevel-vision.github.io/ 论文:https://arxiv.org/abs/2407.19789 代码:https://github.com/J-FHu/CEM 动机 在底层视觉领域,深度学习模型虽极大提升了任务性能,但其内部运行机…...

小红书文章内容提取免费API接口教程

接口简介: 提取指定小红书文章内容。本接口仅做内容提取,未经作者授权请勿转载。 请求地址: https://cn.apihz.cn/api/caiji/xiaohongshu.php 请求方式: POST或GET。 请求参数: 【名称】【参数】【必填】【说明】 【…...

Halcon 图像预处理②

非线性图像分段变化: 先窗体打开图片 对数非线性变化: 结果图像的亮度/对比度显著增加 log_image(Image,LogImag1,e) 参数1:输入图像 参数2: 输出图像 参数3:底数 log_image(Image,LogImage2,0.1) 图像结果亮度和…...

20250526-C++基础-函数指针

C基础-函数指针 函数指针,顾名思义就是指向函数的指针,用一个变量来存储函数的地址,可以通过这个变量(指针)间接访问函数。(可以把函数指针名看作函数名来进行函数调用)。代码及说明如下&#…...

软考 系统架构设计师系列知识点之杂项集萃(73)

接前一篇文章:软考 系统架构设计师系列知识点之杂项集萃(72) 第126题 可一次性编程的只读存储器是( )。 A. ROM B. PROM C. EPROM D. EEPROM 正确答案:B。 解析: ROM:出厂时已编程,用户无…...

大模型训练中的GPU作用解析

📌 友情提示: 本文内容由银河易创AI(https://ai.eaigx.com)创作平台的gpt-4-turbo模型辅助完成,旨在提供技术参考与灵感启发。文中观点或代码示例需结合实际情况验证,建议读者通过官方文档或实践进一步确认…...

Flutter Web 3.0革命:用WebGPU实现浏览器端实时光追渲染,性能提升300%

一、WebGPU为何是图形渲染的未来&#xff1f; 1. 传统WebGL的致命瓶颈 // WebGL 2.0绘制调用示例&#xff08;每秒帧率<45&#xff09; gl.drawElements(gl.TRIANGLES, vertexCount, gl.UNSIGNED_SHORT, 0); 性能对比表&#xff1a; 场景WebGL 2.0WebGPU三角形绘制速率…...

DeepSeek-V3-0526乍现

DeepSeek-V3-0526 可能是 DeepSeek 最新发布的模型版本&#xff0c;相较于之前的 DeepSeek-V3-0324&#xff0c;它在代码能力、推理性能和本地部署方面有了进一步提升。以下是关于该版本的主要信息&#xff1a; - DeepSeek-V3-0526 在多项基准测试中表现优异&#xff0c;性能…...

Java设计模式之观察者模式:从基础到高级的全面解析

文章目录 一、观察者模式基础概念1.1 什么是观察者模式?1.2 观察者模式的四大角色1.3 观察者模式类图二、观察者模式实现步骤2.1 基础实现步骤2.2 详细代码实现第一步:定义主题接口第二步:定义观察者接口第三步:创建具体主题第四步:创建具体观察者第五步:客户端使用三、观…...

C/C++---类型转换运算符

在C中&#xff0c;类型转换运算符&#xff08;Type Conversion Operator&#xff09;允许类对象在需要时自动转换为其他类型。这是一种特殊的成员函数&#xff0c;能够增强类的灵活性和交互性。 1. 基本语法 类型转换运算符的声明格式为&#xff1a; operator 目标类型() co…...

STM32 I2C 通信协议

1、原理 1、硬件电路 一主多从&#xff0c;单片机作为总线主机 SDA&#xff1a;数据线 SCL&#xff1a;时钟线 主机对SCL线完全控制&#xff0c;从机只能读取&#xff1b;在空闲状态下&#xff0c;主机可以主动发起对SDA的控制&#xff0c;只有在从机发送数据和从机应答的时…...

【后端高阶面经:Elasticsearch篇】38、Elasticsearch 高可用架构解析:分片容灾、Translog 调优与双集群

一、高可用架构核心:节点角色与分布式设计 (一)节点角色精细化划分 1. 四大核心节点类型 节点类型核心职责资源配置建议典型部署数量主节点(Master)集群元数据管理(索引创建、分片分配、节点选举)CPU≥4核,内存≥16GB,禁用数据存储3-5个(奇数)数据节点(Data)存储…...

5月26日复盘-自注意力机制

5月26日复盘 一、自注意力机制 Self-Attention Mechanism&#xff0c;自注意力机制&#xff0c;用于捕捉序列数据内部依赖关系的关键技术。它在NLP和CV中非常重要&#xff0c;尤其是Transformer。 1. 产生背景 自注意力机制的产生与序列建模任务&#xff08;如机器翻译、文…...

*HTML `<script>` 标签中的核心属性解析:掌控脚本加载与执行的艺术

HTML <script> 标签中的核心属性&#xff1a;掌控脚本加载与执行的艺术 在网页开发中&#xff0c;<script> 标签是 JavaScript 的“入口”。它不仅决定了脚本如何加载和执行&#xff0c;还深刻影响着页面性能、安全性和跨域策略。本文将深入解析 <script> 标…...

聊一聊接口测试如何设计有效的错误响应测试用例

目录 一、 覆盖常见的错误场景 a. 输入验证错误 b. 认证与权限错误 c. 资源操作错误 d. 业务逻辑错误 e. 服务端错误 二、设计测试用例的关键原则 a. 明确的错误信息 b. 正确的 HTTP 状态码 c. 幂等性处理 d. 安全性与敏感信息 三、测试用例设计模板 四、工具与自…...

记忆上传与自我同一性的哲学-技术综合分析

记忆上传与自我同一性的哲学-技术综合分析 在2025年的科技前沿&#xff0c;记忆上传技术已取得突破性进展&#xff0c;但其引发的"自我同一性"问题远比技术实现更为复杂。当记忆被上传至云端&#xff0c;所形成的是真实的自我延续&#xff0c;还是仅仅是一个数据的副…...

人工智能工程师学习路线总结(下)

目录 人工智能工程师学习路线总结&#xff08;下&#xff09; 十、深度学习框架进阶 &#xff08;一&#xff09;TensorFlow分布式训练 &#xff08;二&#xff09;PyTorch模型优化 十一、自然语言处理&#xff08;NLP&#xff09;进阶 &#xff08;一&#xff09;Transf…...

Vue:axios(POST请求)

发送 POST 请求 基本用法 axios.post(/api/login, {username: lcyyyy,password: 123456 }) .then(response > {console.log(请求成功:, response.data); }) .catch(error > {console.error(请求失败:, error); });在 Vue 组件中使用 export default {methods: {async …...

企业级调度器LVS (面试版)

1. 什么是 LVS?有什么作⽤? LVS ( Linux Virtual Server )是⼀个基于 Linux 内核实现的⾼性能、可扩展和可靠的负载均衡。它将多个服务器组成⼀个⾼可⽤、⾼性能和⾼可靠的虚拟服务器集群,通过将客户端的请求转发到不同的后端服务器,实现负载均衡和⾼可⽤性。 2.什么是 …...

从OTA双雄「共舞」,透视旅游持续繁荣背后的结构性跃迁

2025年&#xff0c;中国旅游市场仍在持续复苏中。 文化和旅游部发布的国内出游数据显示&#xff0c;2025年一季度&#xff0c;国内出游人次17.94亿&#xff0c;比上年同期增加3.75亿&#xff0c;同比增长26.4%&#xff1b;国内居民出游总花费1.80万亿元&#xff0c;比上年同期…...

华为OD机试真题——虚拟理财游戏(2025A卷:200分)Java/python/JavaScript/C/C++/GO最佳实现

2025 A卷 200分 题型 本专栏内全部题目均提供Java、python、JavaScript、C、C++、GO六种语言的最佳实现方式; 并且每种语言均涵盖详细的问题分析、解题思路、代码实现、代码详解、3个测试用例以及综合分析; 本文收录于专栏:《2025华为OD真题目录+全流程解析+备考攻略+经验分…...

Vue-01(Vue CLI创建项目以及文件配置说明)

了解 Vue CLI 及其功能 Vue CLI 是搭建、构建和管理 Vue.js 项目的标准工具。它通过提供一致的项目结构、处理复杂的构建配置以及通过插件提供一组丰富的功能来简化开发工作流程。了解 Vue CLI 对于任何 Vue.js 开发人员来说都至关重要&#xff0c;因为它可以显着提高生产力并…...

华为云Flexus+DeepSeek征文 | DeepSeek-V3/R1商用服务开通体验全流程及使用评测

作者简介​ 我是摘星&#xff0c;一名专注于云计算和AI技术的开发者。本次通过华为云MaaS平台体验DeepSeek系列模型&#xff0c;将实际使用经验分享给大家&#xff0c;希望能帮助开发者快速掌握华为云AI服务的核心能力。 目录 1. 前言 2. 开通DeepSeek-V3/R1商用服务 2.1 准…...

redis列表类型

练习命令使用&#xff0c;具体如下&#xff1a; lpush llen lrange lpoprpush lindex lset rpop linsert LPUSH命令用来向列表左边增加元素&#xff0c;返回值表示增加元素后列表的长度 127.0.0.1:6379> lpush letter A B C (integer) 3 127.0.0.1:6379> type letter …...

人工智能数学基础实验(一):智能推荐系统实战

一、实验目的 本次实验旨在通过构建用户相似度矩阵和实现个性化推荐&#xff0c;帮助我们直观理解推荐系统的核心原理及其背后的数学基础。具体目标如下&#xff1a; 运用 Python 计算用户间的评分相似度&#xff0c;掌握余弦相似度等数学工具在衡量用户偏好中的应用&#xff…...

uni-app学习笔记十二-vue3中组件传值(对象传值)

一.单对象传值 父组件定义对象的值 <template><view><UserInfo :obj"userinfo"></UserInfo></view> </template><script setup>import {ref} from "vue"const userinfo ref({name:"蛛儿",avatar:&…...

Vue.js教学第十四章:Vuex模块化,打造高效大型应用状态管理

Vuex(二):深入剖析 Vuex 模块化与高级应用 在大型 Vue 应用开发中,随着应用功能的不断扩展和复杂度的增加,状态管理的难度也随之上升。Vuex 作为 Vue.js 的官方状态管理库,提供了模块化功能,使得我们可以将状态管理逻辑拆分成多个模块,从而提高 Vuex 的可维护性和可读…...

Ubuntu/Linux 服务器上调整系统时间(日期和时间)

在 Ubuntu/Linux 服务器上调整系统时间&#xff08;日期和时间&#xff09;可以通过以下命令实现&#xff0c;具体分为 手动设置 和 自动同步&#xff08;NTP&#xff09;两种方式&#xff1a; 1. 查看当前系统时间 date或查看详细时区信息&#xff1a; timedatectl2. 手动设…...

win11 禁用/恢复 内置笔记本键盘(保证管用)

文章目录 禁用启用 禁用 1&#xff09;按下 win x&#xff0c;点击 设备管理器 2&#xff09;拔掉所有笔记本外设&#xff08;一定要都拔掉&#xff0c;不然后面禁用设备会混淆&#xff09;&#xff0c;然后右键点击 键盘 > HID Keyboard Device 2&#xff09;点击 更新…...

精度不够?光纤激光尺0.2ppm误差解锁微米级制造

当“精度焦虑”成为制造业的隐形门槛&#xff1a; 在半导体光刻中&#xff0c;1nm偏差可能导致整片晶圆报废&#xff1b; 在精密机床加工中&#xff0c;热变形让传统测量工具“失灵”…… “高精度、高稳定、抗干扰”——工业超精密制造的三大痛点&#xff0c;如何破局&#xf…...