(2023|AABI,多模态信息瓶颈,变分近似,视觉语言模型可解释性)通过多模态信息瓶颈归因对图像文本表示的视觉解释

Visual Explanations of Image-Text Representations via Multi-Modal Information Bottleneck Attribution

公和众和号:EDPJ(添加 VX:CV_EDPJ 或直接进 Q 交流群:922230617 获取资料)

目录

0. 摘要

3. 通过多模态信息瓶颈原理进行归因

3.1 信息瓶颈原理

3.2 多模态信息瓶颈原理

3.3 用于归因的多模态信息瓶颈

3.4 用于多模态信息瓶颈归因的变分目标

4. 评估

4.6 错误分析与局限性

S. 总结

S.1 主要贡献

S.2 方法


0. 摘要

视觉语言预训练模型取得了显著的成功,但它们在安全关键环境中的应用受到了可解释性的限制。为了提高诸如 CLIP 之类的视觉语言模型的可解释性,我们提出了一种多模态信息瓶颈(multi-modal information bottleneck,M2IB)方法,该方法学习潜在表示,压缩无关信息同时保留相关的视觉和文本特征。我们演示了 M2IB 如何应用于视觉语言预训练模型的归因分析,提高了归因的准确性,并在应用于诸如医疗保健等安全关键领域时改善了这些模型的可解释性。至关重要的是,与通常使用的单模态归因方法不同,M2IB 不需要地面真实标签,这使得在存在多模态但没有地面真实数据的情况下审计视觉语言预训练模型的表示成为可能。以 CLIP 为例,我们展示了 M2IB 归因的有效性,并且在定性和定量上显示它优于基于梯度、基于扰动和基于注意力的归因方法。

我们实验的代码位于:https://github.com/YingWANGG/M2IB。

3. 通过多模态信息瓶颈原理进行归因

在这一部分,我们介绍了信息瓶颈(information bottleneck)原理的一个简单、多模态变体,并解释了如何将其调整为特征归因。

3.1 信息瓶颈原理

信息瓶颈原理 [32] 提供了一个框架,用于找到神经网络模型的压缩表示。为了获得反映输入数据最相关信息的潜在表示,信息瓶颈原理试图找到由参数编码器

定义的输入源 X 的随机潜在表示Z,该表示在约束潜在表示 Z 和输入 X 之间的互信息的同时,对目标 Y 具有最大信息量。对于由参数 θ 参数化的表示,该原理可以表达为优化问题:

其中 I(·, ·; θ) 是互信息函数,而 ¯I 是一个压缩约束。我们可以等价地表达这个优化问题,即最大化目标:

其中 β 是一个拉格朗日乘子,用于权衡学习一个关于目标 Y 最具信息的潜在表示和学习一个关于输入 X 最大压缩的表示 [2]。

3.2 多模态信息瓶颈原理

不幸的是,对于 VLPMs,上述的损失函数不适用,因为我们希望使用仅依赖于文本和视觉输入来学习可解释的潜在表示,而不依赖于可能不可用或昂贵获取的任务特定目标 Y。为了为 VLPMs 制定一个多模态信息瓶颈原理,我们需要开发一个更类似于仅使用(文本,图像)对的图像文本表示学习的自监督方法的优化目标 [21, 18]。

这个学习问题在本质上与单模态任务的监督归因图学习不同。例如,我们可能有一张熊的图片X_bear 和一个相应的标签 Y_bear = “bear”。对于单模态分类任务,我们可以简单地相对于 θ 最大化 I(Y_bear; Z_bear; θ) − β·I(X_bear; Z_bear; θ),其中 Z_bear 是 X_bear 的潜在表示。

相比之下,在图像文本表示学习中,我们通常有文本描述,比如 “这是一张熊的图片”(L′_bear),而不是标签 [21]。在这种情况下,X_bear 和 L′_bear 都是 “输入”,没有预定义的相应标签。为了获得与任何任务特定的真实标签无关的任务不可知(task-agnostic)的图像文本表示,我们希望使用两个输入模态来定义一个多模态信息瓶颈原理,而输出则与具体的下游任务密切相关。这需要定义一个替代传统信息瓶颈目标的 “拟合项” I(Z, Y; θ)。

幸运的是,在多模态数据中,有一个自然的信息相关性代理。如果图像和文本输入(例如,描述图像的文本)相关,良好的图像编码应该包含关于文本的信息,反之亦然。基于这一直觉,我们可以表达一个对于 m ∈M= {modality1, modality2} 的 X_m 的多模态信息瓶颈目标,如下所示:

其中 m′ = M\m 是 m 的补集,而 E_m′ 是模态 m′ 的嵌入(注:基于公式 6 和 7,这里下标应为 m')。接下来,我们将展示如何使用这个多模态信息瓶颈原理的变体进行归因。

3.3 用于归因的多模态信息瓶颈

为了在没有访问任务特定标签的情况下计算图像和文本数据的归因图,我们将为多模态数据定义一个信息瓶颈归因方法。

为了通过一个简单的参数编码器限制潜在表示中的信息流,我们采用了 Schulz 等人的掩蔽方法 [24]。为了清晰和简洁起见,我们从现在开始以 RJ 表示 V_m × W_m 维的潜在表示 Z_m,其中

假设在潜在表示维度上独立,我们然后定义

其中,对于模态对 M= {image, text} 中的每个 m ∈ M,θm = {λm, σm, ℓm} 是参数,hm(xm; λm) ∈ R^J 是由 λm 参数化的映射,f^ℓ_m(Xm) ∈ R^J 是模态特定神经网络嵌入 fm 的第 ℓm 层的矢量化输出,σ^2_m ∈ R > 0 是一个超参数,diag[·] 表示一个操作符,通过将向量的元素沿主对角线放置,将向量转换为对角矩阵,1_J ∈ R^J 是一个全 1 矢量, ⊙ 是 Hadamard 积。为避免符号过载,除非需要明确表示,否则我们将省略概率密度函数中的下标。基于方程(4),我们可以表达随机潜在表示为:

其中,ε ∼ N(0, I_J )。通过这个重参数化,我们可以看到 [hm(xm; λm)]_i = 1 对于 i ∈ {1, ..., J} 意味着在索引 i 处没有添加噪声,因此 [Zm]_i 将与原始的 f^ℓ_m(xm)_i 相同,而 [hm(xm; λm)]_i = 0 意味着 [Zm]_i 将是纯噪声(i 表示对角阵的索引。简单的线性组合)。

现在我们可以表达多模态信息瓶颈归因(M2IB)目标,如下所示:

我们可以分别针对模态特定的参数集 λ_image 和 λ_text 进行优化。{β_image, σ_image, ℓ_image} 和 {β_text, σ_text, ℓ_text} 分别是超参数集。

3.4 用于多模态信息瓶颈归因的变分目标

为了得到可行的优化目标,我们使用了一个变分近似。首先,我们注意到

其中 Zm | Xm; θm 可以通过经验抽样,而 p(zm; θm) 没有解析表达式,因为积分

是不可计算的。为了解决这个不可计算性,我们通过

近似 p(zm)。这个近似导致了上界:

接下来,尽管单模态信息瓶颈归因目标使用真实标签来计算目标中的 “拟合项”,但多模态信息瓶颈归因目标需要计算对齐随机嵌入之间的互信息,

这在一般情况下是不可计算的。为了获得解析可计算的变分目标,我们通过一个变分分布 q(em′ | zm) = N(em′ ; gm(zm), I_K) 来近似不可计算的 p(em′ | zm),其中 gm 是一个将模态 m 的潜在表示与 Em′ 对齐的映射,K 是嵌入的维度,得到(链式法则):

有了这个近似,我们可以通过从经验分布(公式 12)中抽样 Xm 和 Em' 来获得一个可行的变分优化目标。

其中 fm′​(xm′​) 是 VLPM 下输入 xm′​ 的嵌入。通过这些近似,我们现在可以陈述完整的变分目标,如下所示:

这个目标的推导紧密地遵循了 [2] 中的步骤。在实践中,可以使用经验数据分布来计算这个目标,以便

注:第一项组合了公式 12 的冲激函数和公式 11。 

最终变分优化目标。最后,我们假设 hm​(xm(n)​;λm​)=λm(n)​(即,每个输入点都有自己的归因参数集),gm​ 是由 VLPM 的瓶颈后层定义的映射,并且对于每个评估点,每个模态的最终嵌入在嵌入维度上进行归一化(即,映射 gm​ 和 fm′​ 都包含嵌入归一化变换)。对于归一化的 gm​(zm​) 和 em′​,Gaussian 概率密度 q(fm′​(xm′​)∣gm​(zm​)) 的对数简化为正比于 fm′​(xm′​) 和 gm​(zm​) 之间的余弦相似性,给出最终的优化目标:

其中 S_cosine​(⋅,⋅) 是余弦相似性函数。在优化过程中进行梯度估计时,可以使用简单的蒙特卡洛估计和重参数化梯度来估计剩余的积分。对于 θm​={λm​,σm​,ℓm​},目标函数独立地针对每个模态的 λm​ 进行最大化,而 βm​, σm​ 和 ℓm​ 是模态特定的超参数。 

4. 评估

对不同目标的归因图。 

置信度下降(Drop in Confidence) [4]。理想的归因方法应该只给重要特征分配高分,因此,如果只允许输入高归因部分,我们不应该观察到性能下降。 

置信度提高(Increase in Confidence) [4]。类似地,去除输入中的噪声信息可能会增加模型的置信度。

删除和重新训练 +(Remove and Retrain +,ROAR+,ROAR [11] 的扩展)。我们在退化的图像和文本上微调基础模型,其中最重要的部分被替换为不相关的值(即,图像的通道均值或文本的填充标记,参见图 3),并在原始输入的验证集上进行评估。如果归因方法准确,我们期望性能会急剧下降,因为所有有用的特征都被移除,而模型无法从退化的数据中学到任何相关的信息。

4.6 错误分析与局限性

我们注意到我们提出的归因方法在文本上表现普遍良好,但有时在图像上表现不太令人满意。通过检查定性示例,我们观察到 M2IB 有时无法检测到图像中的整个相关区域。如图 7 的 “sea” 示例和 “bridge” 示例所示,我们的方法只突出显示图像中的一部分对象,尽管应该包括整个对象。这可能是因为评估中的模型仅依赖图像中的一些模式来进行预测。增加拟合项的相对重要性(即,使用较小的 β)会扩大突出显示的区域。然而,我们不建议使用极端的 β,因为这会破坏拟合和压缩之间的平衡,从而使信息瓶颈无法压缩信息。

我们还注意到 M2IB 对超参数的选择敏感。如图 5 所示,不同的超参数组合将生成不同的显著性图。我们展示了如何使用 ROAR+ 分数系统地选择最佳超参数,并在附录 A 中提供可视化,以说明不同超参数的效果。由于在评估归因方法方面没有公约,我们建议在选择超参数时考虑各种评估指标、示例的可视化以及归因任务的目标。我们强调 M2IB 应谨慎使用,因为将模型的成功或失败仅归因于一组特征可能过于简单,而不同的归因方法可能导致不同的结果。 

S. 总结

S.1 主要贡献

为了提高诸如 CLIP 之类的视觉语言模型的可解释性,本文提出了一种多模态信息瓶颈(multi-modal information bottleneck,M2IB)方法,该方法学习潜在表示,压缩无关信息同时保留相关的视觉和文本特征。与通常使用的单模态归因方法不同,M2IB 不需要地面真实标签,这使得在存在多模态但没有地面真实标签的情况下审计视觉语言预训练模型的表示成为可能。

S.2 方法

多模态信息瓶颈:仅依赖文本标题和视觉输入来学习可解释的潜在表示,而不依赖可能不可用或昂贵获取的任务特定目标标签 Y。

在多模态数据中,如果图像和文本输入(例如,标题)相关,良好的图像编码应该包含关于文本的信息。基于此,多模态信息瓶颈归因(M2IB)最大化如下目标

其中,Z 是潜在表示, E 是模态(图像/标题)嵌入,X 是输入(图像/标题)。该公式通过变分近似进行优化。直观而言,该方法可提升图文对齐。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/594168.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

wy的leetcode刷题记录_Day70

wy的leetcode刷题记录_Day70 声明 本文章的所有题目信息都来源于leetcode 如有侵权请联系我删掉! 时间: 前言 目录 wy的leetcode刷题记录_Day70声明前言466. 统计重复个数题目介绍思路代码收获 70. 爬楼梯题目介绍思路代码收获 466. 统计重复个数 今天的每日一题…

Leetcode11-快乐数(202)

1、题目 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为: 对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。 然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。 如果这个过程 结果为 1…

8K自动化测试面试题分享(有答案,非常详细)

关于自动化测试面试,会问到哪些问题呢?给大家简单总结了一下,每一个都是学员反馈过来的企业真题,相信对大家有帮助,最近有面试机会的,快来背一下答案吧 1、你会封装自动化测试框架吗? 这个问得…

华为月薪25K的自动化测试工程师到底要会那些技能!

​前言 3年自动化测试软件测试工程师职业生涯中,我所经历过的项目都是以自动化测试为主的。由于自动化测试是一个广泛的领域,我将自己的经验整理了一下分享给大家,话不多说,直接上干货。 自动化测试的目标和实践选择合适的自动化…

zookeeper 常见客户端介绍和使用 zkCli、自带API、 zkClient、Curator

文章目录 一、Zookeeper的命令行使用二、Zookeeper自带API的使用2.1 引入API2.1 API简单使用 三、Zookeeper三方客户端zkClient的使用3.1 引入依赖3.2 简单的使用案例四、Curator 客户端框架4.1 引入依赖4.2 简单使用案例 一、Zookeeper的命令行使用 ZooKeeper解压后&#xff…

使用Helmfile 管理helm charts

官网 ## https://github.com/helmfile/helmfile## 参考 https://cloud.tencent.com/developer/article/1766822 介绍 使用helmfile时,我们首先得了解helm的使用,以及如何开发一个helm chart。 helm是kubernetes的包管理工具。在实际的使用场景中我们涉…

分布式(4)

目录 16.分布式缓存可能会存在哪些问题? 17.分布式限流了解过吗? 18.分布式定时任务怎么实现? 19.什么是分布式系统的副本一致性?有哪些? 20.在分布式系统中有哪些常见的一致性算法? 21.谈谈你对一致性…

【排序算法】归并排序与快速排序:深入解析与比较

文章目录 1. 引言2. 归并排序(Merge Sort)3. 快速排序(Quick Sort)4. 归并排序与快速排序的比较5. 结论 1. 引言 排序算法是计算机科学中最基本且至关重要的概念之一。它们不仅是理解更复杂算法和数据结构的基石,而且…

面试复盘5——后端开发——一面面经——大厂的面试果然干货满满

前言 本文主要用于个人复盘学习,因此为保障公平,所以本文不指出公司名,题目编号只是为了自己区别而已。对待面经,望读者还是更多从其中学习总结,而不是去碰原题。 面试岗位信息 后端开发秋招,上海某大中…

【Linux Shell】2. Shell 变量

文章目录 【 1. 变量命名规则 】【 2. 变量的使用 】【 3. 只读变量 】【 4. 删除变量 】【 5. 变量类型 】【 6. Shell 字符串 】6.1 字符串的分类6.2 字符串操作 【 7. Shell 数组 】7.1 定义数组7.2 读取数组7.3 获取数组的长度 【 8. Shell 注释 】8.1 单行注释8.2 多行注释…

机器学习的算法简单介绍-朴素贝叶斯算法

朴素贝叶斯网络(Naive Bayes Network)与贝叶斯网络(Bayesian Network)有一些不同之处,让我们来澄清一下这两个概念。 贝叶斯网络(Bayesian Network):贝叶斯网络是一种用于建模概率关…

Hi5 2.0 虚拟手与追踪器(Tracker)的位置修正

问题描述 使用环境与工具:Unity 2022.3.4fc1,steam VR(2.7.3),steamvrSDK(1.14.15),HTC vive pro专业版,Hi5 2.0数据手套 首先按照Hi5 2.0的使用说明(可参考:HI5 2.0 交…

windows 和linux 的区别

目前国内 Linux 更多的是应用于服务器上,而桌面操作系统更多使用的是 Windows。主要区别如下 比较层面WindowsLinux界面界面统一,外壳程序固定所有 Windows 程序菜单几乎一致,快捷键也几乎相同图形界面风格依发布版不同而不同,可…

Netty使用SSL实现双向通信加密

最近项目有个需求,TCP服务器实现基于证书通信加密,之前没做过,花了一些时间调研,今天整理下。 SSL(Secure Sockets Layer 安全套接字协议) 1、原理 算法原理 简而言之就是非对称加密算法 私钥自己持有,公钥发给对方,对方在发送信息的时候使用公钥进行加密数据,当接收到…

C# 数组相关操作

一。int[] 类型数组 1.求int[]数组中的最大值和最小值 int[] intArrnew int[]{ 1,2,3,4,5,-24,66};int a intArr.Max();int b intArr.Min();Console.WriteLine(a); //最大值为66Console.WriteLine(b); //最小值为-24 2.判断int[]数组中是否包含某个值 int[] intArrnew int[]…

IPA打包过程中的Invalid Bundle Structure错误如果解决

在iOS应用程序开发中,打包和发布应用程序是一个必要的步骤。有的时候在打包的过程中可能会遇到一些错误,其中一个比较常见的错误是"Invalid Bundle Structure"。这个错误通常意味着应用程序的文件结构不正确,而导致的无法成功打包应…

ShardingJDBC简单使用

Sharding-JDBC是当当网开源的适用于微服务的分布式数据访问基础类库,完整的实现了分库分表,读写分离和分布式主键功能,并初步实现了柔性事务。Sharding-JDBC定位为轻量级Java框架,在Java的JDBC层提供的额外服务。其适用于任何基于…

【NLP】2024年改变人工智能的前六大NLP语言模型

在快速发展的人工智能领域,自然语言处理已成为研究人员和开发人员关注的焦点。作为这一领域显著进步的证明,近年来出现了几种开创性的语言模型,突破了机器能够理解和生成的界限。在本文中,我们将深入研究大规模语言模型的最新进展…

精准快速定位的locate

精准快速定位的locate Linux locate命令用于查找符合条件的文档、程序、目录等等。这个命令会在数据库中查找符合条件的各种信息。 一般情况我们只需要输入 locate name 即可查找。 官方定义为: locate - list files in databases that match a pattern 使用方法为: $ lo…

ubuntu2204,mysql8.x安装

ubuntu 2204, MySQL8.x安装 sudo apt-get update sudo apt-get upgrade# 习惯性的先设置一下时区,这里我使用东八区 date -R # 若发现时间正常则无需设置tzselect# 依次选择 4 -> 10 -> 1 -> 1cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtimedate -R# 同步时间…