-
摘要:
将大语言模型集成到个人助手中(如小爱同学、蓝心小V等)能有效提升个人助手与人类交互、解决复杂问题、管理物联网设备等能力,这类助手也被称为大模型驱动的智能体,也可称其为智能体. 智能体接收到用户请求后,首先调用大模型生成计划,之后调用各类工具执行计划并将响应返回给用户. 上述过程中,智能体使用大模型生成计划的延迟可达数十秒,十分影响用户体验. 对真实数据的分析显示,智能体接收到的请求中约有30%是相同或相似的,此类请求可复用先前生成的计划,以降低智能体响应延迟. 然而,直接对请求原始文本进行相似度评估难以准确界定智能体接收到的请求文本间的相似性. 此外,自然语言表达的多样性和大模型生成的非结构化计划文本导致难以对计划进行有效复用. 针对上述问题,提出并实现了面向大模型驱动的智能体的计划复用机制AgentReuse,通过利用请求文本间语义的相似性和差异性,采用基于意图分类的方法来界定请求间的相似性并实现计划复用. 基于真实数据集的实验结果表明,AgentReuse对计划的有效复用率为93%,对请求进行相似性界定的F1分数为
0.9718 ,准确率为0.9459 ,与不采用复用机制相比,可减少93.12%的延迟.Abstract:Integrating large language models (LLMs) into personal assistants, like Xiao Ai and Blue Heart V, effectively enhances their ability to interact with humans, solve complex tasks, and manage IoT devices. Such assistants are also termed LLM-driven agents. Upon receiving user requests, the LLM-driven agent generates plans using an LLM, executes these plans through various tools, and then returns the response to the user. During this process, the latency for generating a plan with an LLM can reach tens of seconds, significantly degrading user experience. Real-world dataset analysis shows that about 30% of the requests received by LLM-driven agents are identical or similar, which allows the reuse of previously generated plans to reduce latency. However, it is difficult to accurately define the similarity between the request texts received by the LLM-driven agent through directly evaluating the original request texts. Moreover, the diverse expressions of natural language and the unstructured format of plan texts make implementing plan reuse challenging. To address these issues, we present and implement a plan reuse mechanism for LLM-driven agents called AgentReuse. AgentReuse leverages the similarities and differences among requests’ semantics and uses intent classification to evaluate the similarities between requests and enable the reuse of plans. Experimental results based on a real-world dataset demonstrate that AgentReuse achieves a 93% effective plan reuse rate, an F1 score of
0.9718 , and an accuracy of0.9459 in evaluating request similarities, reducing latency by 93.12% compared with baselines without using the reuse mechanism. -
随着人工智能技术的迅猛发展,出现了许多优秀的深度学习模型,如转换器(Transformer)[1]. 最初,Transformer被广泛应用于自然语言处理领域并取得了巨大成功. 随后,视觉转换器(vision Transformer,ViT)[2]在计算机视觉领域也逐渐取代卷积神经网络(convolutional neural network,CNN),在图像分类[3]、语义分割[4-5]、目标检测[6-7]、图像检索[8]任务中,ViT展现出了优异的效果. 然而,由于这些模型具有高度复杂的线性关系以及超大规模的参数量,人类无法理解其内部决策过程,因此通常被视为黑盒模型,这成为许多需要安全性和社会认可的现实应用中的主要缺陷[9-10]. 尽管在现实世界已经部署了一些人工智能系统,但在医疗诊断领域,由于其固有且不可否认的风险,Transformer衍生模型难以真正投入使用[11].
传统的深度学习模型解释方法通常是对输入进行遮挡扰动,当遮挡区域为模型认为的重要区域时,往往会导致模型的输出得分较低[12]. 但这种基于遮挡的解释方法通常对遮挡策略有着较高的要求,随机遮挡往往难以达到较好的解释效果.Ding等人[13]提出一种基于随机多粒度随机游走算法的遮挡策略,从粗粒度到细粒度对图像进行遮挡,并以注意力作为指引,大大提升了扰动的效率,并取得了较好的解释效果.Petsiuk等人[14]提出利用蒙特卡洛采样生成一定数量的掩码,通过掩码与输入相乘对输入进行扰动,利用模型输出的类别分数与掩码加权求和得到最终的解释结果. 这一过程无需访问模型内部,因此这是一种黑盒解释方法. 不同的是,Xie等人[15]提出利用ViT模型的最终层输出生成掩码,而无需利用蒙特卡洛采样,解决了解释效率低、伪影导致的分数误差以及掩码像素覆盖偏差的问题.
然而,简单利用ViT编码器最终层输出生成掩码忽略了2个关键方面:一是掩码中存在大量的不确定信息,如果不采取策略将会导致不完整,不可靠的物体定位信息;二是掩码在上下采样过程中造成的信息丢失问题,会导致解释结果中存在大量的空间噪声及细节缺失. 正如文献[16-17]所指出的,ViT存在过度平滑问题,即随着堆叠的层数的增加,各令牌的语义信息趋于一致,导致最终层输出的掩码高度相似,我们遵循了文献[15]中的层次聚类方法,减少冗余掩码数量. 图1展示了积极掩码、消极掩码以及一些不确定性掩码. 为获得更优的显著性解释结果,我们应尽可能充分利用积极掩码. 图1(b)显示了积极掩码,它能够基本完整地反映出原图对预测做出重大贡献的物体位置. 相反,图1(c)展示了消极掩码,这些掩码无意义或与原图完全相反,对可视化结产生消极影响. 此外,图1(d)中的不确定掩码通常会对整体产生一定程度的掩盖,无法确定其对可视化结果的影响,需要进一步的细粒度信息来确定其是否为积极掩码或消极掩码.
Yao[18]提出的三支决策方法能够有效应对上述不确定性问题. 与传统两支决策不同,当目前证据不能做出接受或拒绝的决策时,三支决策采用延迟决策的方式处理信息,将信息置于边界域,以降低错误决策带来的损失. 基于多粒度结构,序贯三支决策应运而生,序贯三支决策对进入边界域的信息通过可靠的细粒度的信息再次进行决策,形成了从粗粒度到细粒度的顺序过程. Savchenk[19]将序贯三支决策应用于图像识别,提高了图像识别的速度,Ju等人[20]开发的具有合理子空间的序贯三支分类器有效提升了分类性能,Li等人[21]提出了代价敏感的序贯三支决策用于人脸识别. 通过序贯三支策略,我们能够从多粒度的角度获取积极掩码,生成更有益的可视化结果[22-23].
自注意力机制是Transformer架构的核心模块,可视化类别令牌的注意力矩阵是ViT一种天然解释方法[24]. 然而,需要注意的是,可视化注意力矩阵的结果与类别无关,即无论输入何种类别,模型的解释结果均相同,这对于多类别图像显然是不合理的. 因此,我们不使用类别令牌,而是通过注意力矩阵分析各令牌之间的信息交互,获取所有令牌包含的前景、背景等细节语义信息. 我们提出一个注意力融合(attention fusion,AF)模块,旨在生成更为准确的可视化解释图.
针对ViT架构的独有特性,本文提出了一种基于序贯三支掩码和注意力融合的Transformer解释方法(SAF-Explainer). 首先,将图像输入Transformer编码器,并上采样最终层输出作为掩码. 然后,通过序贯三支掩码模块,将掩码划分为积极掩码,消极掩码和不确定掩码. 并通过多粒度层级顺序分析,选出所有的积极掩码. 接着,利用Transformer计算置信度分数,并与积极掩码加权求和,得到初步解释结果. 接下来,使用提出的注意力融合模块对结果进行细节修正. 首先,保存每一层Transformer编码器中的注意力矩阵,并跨层聚合生成关系矩阵. 关系矩阵能够反映图像块之间的关系密切程度,例如前景图像块会与其他前景图像块具有较高的关系,与背景图像块的关系则较低. 因此,通过计算初步解释结果与关系矩阵之间的余弦相似度,得出每一个图像块的块重要性分数,利用重要性分数对初步解释结果进行融合,即可得到最终解释结果. 通过热图的方式,可以清晰地呈现最终的可视化结果,这些结果能够有效反映ViT模型在决策时的依据,从而体现模型的可解释性.
本文主要贡献如下:
1)本文提出序贯三支掩码模块(sequential three-way mask,S3WM),以解决ViT最终层特征图生成的掩码质量不确定性问题,通过设置特定的阈值及条件,可以有效地将掩码划分为积极掩码、消极掩码与不确定掩码3种类型,使用积极掩码可以明显提高模型解释效果;
2)本文提出注意力融合模块(attention fusion,AF),它通过聚合ViT中每一层的注意力矩阵,生成可以反映图像块前景、背景与边缘区域关系的关系矩阵,通过余弦相似度度量获取图像块重要性分数,对解释结果进行加权融合,这一过程有效地解决了初步解释结果中存在的噪声问题,提高模型解释效果;
3)本文在3个自然图像数据集以及1个脑部肿瘤医学图像数据集对SAF-Explainer进行定量定性分析以及可视化结果验证.
1. 相关工作
ViT由于其黑盒特性,本身不具备可解释性,通常需要应用事后解释方法来为训练后的模型生成解释. ViT的可解释性方法可以分为2大类:一类是最初为CNN设计的解释方法,尽管这些方法最初是为CNN设计的,但它们可以迁移并应用于ViT;另一类是专门针对ViT特性设计的解释方法.
1.1 基于反向传播的方法
早期基于反向传播的方法通过梯度近似像素扰动前后模型输出的差值来衡量像素的重要性,梯度的绝对值越高,该像素对预测的影响越显著. 然而,基于梯度的灵敏度图通常包含大量噪声,Smilkov等人[25]进行多次采样并添加高斯噪声,取多次反向传播结果的平均值来获取平滑的灵敏性图. Sundararajan等人[26]也是计算梯度的平均值,其样本通过输入图像与基线图片之间的插值获得,将梯度积分累计获取灵敏性图. 相关性逐层传播方法(layer-wise relevance propagation,LRP)从模型输出开始,反向传播计算各层间的相关性系数[27],像素的相关性反应了该像素对模型决策的贡献. Voita等人[28]通过LRP挑选出相关性较高的Transformer注意力头. 这些注意力头被视为对预测贡献较大的部分. 然后,剪枝掉绝大多数相关性较低的注意力头. 即使在剪枝后,模型仍能保持较好的性能. Chefer等人[29]提出了一个Transformer归因方法(Transformer attribution,T-Attribution),它采用LRP计算Transformer模型中每一层、每一个注意力头的相关性,然后通过梯度加权,聚合生成新的注意力矩阵,最终生成特定于类的可视化解释.
1.2 基于类激活图的方法
类激活图(class activation map,CAM)的概念最早出现在文献[30]中.CAM将网络中的全连接层替换为全局平均池化层,每个激活图与最终预测输出之间的权重,用于衡量该激活图对预测的贡献程度. 接着,通过权重与激活图之间的线性加权求和,聚合生成重要性分数. 最后,通过热图方式可视化重要区域. 作为CAM的推广,梯度加权的类激活图(gradient-weighted class activation map,Grad-CAM[31])及其变体方法[32]使用反向传播获取的梯度均值作为每个激活图对最终预测的贡献程度,对激活图进行线性加权求和,使其不依赖于特定架构. Wang等人[33]指出由于梯度饱和或梯度消失问题,往往会导致产生大量视觉噪声和虚假置信度问题,即权重较高的激活图输入到网络中获取的分数却很低,从而提出一种分数加权的激活图方法(score-weighted class activation map,Score-CAM). 尽管以上方法可以有效定位物体,但由于使用的激活图均来自最终层,生成的可视化结果通常较为粗糙. Jiang等人[34]利用梯度信息为激活图中的每个位置生成单独的权重,来自浅层的激活图可以捕获细粒度的对象定位信息,将不同层的类激活图进行融合后,即可生成精确完整的类激活图. 这种方法生成的解释图可作为伪标签,有效应用于弱监督对象定位和分割任务[35-36].
1.3 基于扰动的方法
Zeiler等人[12]通过滑动一个灰度正方形块来遮挡图像扰乱输入,从而扰乱输入. 然后,将被遮挡的图像输入分类模型中,观察深层特征图和输出结果. 当遮挡区域为图像重要区域时,通常会导致模型输出的分类分数降低. Ding等人[13]使用随机游走算法,从粗到细2个信息粒度对图像进行扰动,观察对模型预测的影响进而解释模型. 随机输入采样解释(randomized input sampling for explanation,RISE)通过蒙特卡洛采样生成一定数量的掩码. 然后,将被掩盖的图像输入模型,以获取特定于类的置信度得分作为权重. 接着,将权重与掩码进行线性加权求和,即可得到图像的重要性分数[14]. 由于掩码是随机生成且与模型无关,RISE是一种无需访问模型内部结果的通用方法. 与RISE类似,因果解释视觉Transformer(causal explanation of vision Transformer,ViT-CX)通过将掩码输入到模型中获取权重以生成可视化解释[15]. 但与RISE不同的是,ViT-CX的掩码不是随机生成的,而是通过最终层补丁嵌入上采样获取,并通过层次聚类算法减少掩码的数量.
1.4 基于注意力的方法
ViT通过自注意力机制对图像上下文进行全局建模,因此可视化注意力分数是了解其工作机理的直觉想法. 然而,简单地使用最后一层编码器的原始注意力矩阵,通常在定位预测目标物体上效果较差. 因为ViT中还涉及前馈网络及大量的跳跃连接,且中间层信息也被忽略. Abnar等人[24]假设自注意力是线性组合的,通过使用有向无环图对网络中的信息流进行建模,将上下编码器层中的令牌视作结点,注意力分数为边的权重,递归相乘注意力矩阵以获取更为准确的注意力分数. 以上工作均使用注意力矩阵中的类别令牌进行可视化. 然而,我们的工作不依赖于注意力矩阵中的类别令牌,而是分析了其他令牌之间的交互作用,通过聚合跨层注意力矩阵生成令牌关系矩阵,融合生成准确合理的可视化解释结果.
在针对ViT架构的方法中,基于反向传播的方法仅考虑梯度信息,导致解释结果比较保守,通常只能识别部分前景物体信息,且重要性得分不高;由于缺乏针对ViT特性定制,基于扰动的方法通常会产生包含大量背景区域的解释结果,难以令人信服;而基于注意力的方法通常只能提供类别无关的解释结果,并且由于专注于注意力组件,缺乏对ViT架构的整体探索,解释结果往往包含大量空间噪声. 为了解决上述缺点,我们的工作充分利用了ViT架构的特性,使用S3WM模块来选择积极掩码并生成初步的解释结果,准确定位到前景物体;接着,本研究深入探讨了ViT架构的自注意力机制,通过所提出的AF模块,消除空间中的噪声信息,优化前景物体边缘细节,最终生成定位精准、噪声低的可视化解释结果.
2. Transformer解释方法
本文提出了基于序贯三支掩码和注意力融合的Transformer解释方法,具体流程如图2所示.
图2(a)为标准ViT模块,图2(b)为S3WM模块,图2(c)为AF模块. 首先,将图像输入ViT模型,获取最后一层编码器的输出,通过重塑和上采样生成掩码用于扰动图像输入. 由于最后一层编码器的输出具有高度的语义相似性,我们采用了层次凝聚聚类算法来聚合相似的掩码,以减少冗余性. 由于掩码质量的不确定性,将掩码集放入S3WM模块,通过多粒度层级顺序分析选出积极掩码集MPOS,并生成初步解释结果S,S可以准确定位物体位置,但往往包含背景噪声信息. 接着,本文分析了自注意力机制,探索了图像块之间的信息交互,并提出了AF模块. 该模块利用跨层的注意力信息生成关系矩阵R,用于进一步优化解释结果中的细节信息,最终生成最优的解释结果V,有效提高模型可解释性.
2.1 预备知识
2.1.1 标准ViT模型
本文主要考虑用于分类任务的标准ViT模型. 令f(⋅)为标准ViT模型, {\boldsymbol{I}} \in {\mathbb{R}^{H \times W \times C}} 为输入图像,其中H,W,C分别是图像的高、宽和通道,将其切割分成大小 P \times P \times C 的共N块小图像块,接着展平后线性嵌入成D维,在头部拼接上类别令牌并加入位置信息编码嵌入,最终产生 N + 1 = HW/{P^2} + 1 个令牌作为输入 {{\boldsymbol{X}}_0} \in {\mathbb{R}^{(N + 1) \times D}} 馈送到Transformer编码器重复L遍,每一层的输出为 {{\boldsymbol{X}}_i} \in {\mathbb{R}^{(N + 1) \times D}} ,i=1, 2, …, L. 在每一个Transformer编码器中, {{\boldsymbol{X}}_i} 经过多头自注意力模块和多层感知机模块处理,并在每个模块后应用跳跃连接,以对全局进行建模. 最后,从 {{\boldsymbol{X}}_L} 中取出类别令牌,输送到多层感知机中获取分类结果.
2.1.2 多头自注意力机制
受人类在复杂场景中能够有效注意到重点区域的启发,注意力机制被引入计算机视觉领域. 以第l层Transformer编码器中自注意力模块为例,将序列 X 作为输入,通过投影变换为查询矩阵Q,键矩阵K和值矩阵V. 接着,将Q与 {K^{\text{T}}} 进行矩阵乘法,并整体除以 \sqrt {{d_{\boldsymbol{K}}}} ,以防止经过softmax后出现梯度消失的问题,然后将矩阵放入softmax函数进行归一化,即可得到原始注意力矩阵 {A^{(l)}} ,其中每一行表示当前令牌对其他图像块的关注程度,最后将 {A^{(l)}} 与V进行矩阵乘法即可得到一次自注意力层的输出结果:
{{\boldsymbol{A}}^{(l)}} = softmax\left(\frac{{{\boldsymbol{Q}}{{\boldsymbol{K}}^{\text{T}}}}}{{\sqrt {{d_{\boldsymbol{K}}}} }}\right), (1) Attention({\boldsymbol{Q}},{\boldsymbol{K}},{\boldsymbol{V}}) = {{\boldsymbol{A}}^{(l)}}{\boldsymbol{V}}, (2) 其中 {d_{\boldsymbol{K}}} 是K的通道维度. 以上为单个自注意力头的工作过程,此时 {{\boldsymbol{A}}^{(l)}} \in {\mathbb{R}^{(N + 1) \times (N + 1)}} .
受卷积神经网络中使用多个卷积核提取不同特征的启发,多头自注意力使用多个自注意头学习多种不同类型的上下文交互信息,增强模型的表达能力,然后,将每个头学习到的特征进行拼接,获得多头自注意力的输出结果:
{{\boldsymbol{head}}_i} = Attention({\boldsymbol{QW}}_i^{\boldsymbol{Q}},{\boldsymbol{KW}}_i^{\boldsymbol{K}},{\boldsymbol{VW}}_i^{\boldsymbol{V}}), (3) MultiHead({\boldsymbol{Q}},{\boldsymbol{K}},{\boldsymbol{V}}) = Concat({{\boldsymbol{head}}_1},…,{{\boldsymbol{head}}_h}){\boldsymbol{W}}, (4) 其中 {\boldsymbol{W}}_i^{\boldsymbol{Q}} , {\boldsymbol{W}}_i^{\boldsymbol{K}} , {\boldsymbol{W}}_i^{\boldsymbol{V}} , {\boldsymbol{W}} 是投影变换参数矩阵, {{\boldsymbol{head}}_i} 为每个头的计算输出结果, h 为头的个数, Concat 表示拼接操作,经过多头自注意力操作后的注意力矩阵为 {{\boldsymbol{A}}^l} \in {\mathbb{R}^{h \times (N + 1) \times (N + 1)}} .
2.2 序贯三支掩码模块
2.2.1 掩码生成
与Score-CAM通过上采样CNN的最后一层激活图获取掩码类似,我们使用ViT最后一层编码器输出重塑并上采样生成掩码. 设初始输入为 {{\boldsymbol{X}}_0} \in {\mathbb{R}^{(N + 1) \times D}} ,经过L层编码器后的输出为 {{\boldsymbol{X}}_L} \in {\mathbb{R}^{(N + 1) \times D}} ,舍去类别令牌后重塑为 {\boldsymbol{m}} \in {\mathbb{R}^{\sqrt N \times \sqrt N \times D}} ,其中每个位置的值代表图像块在空间位置的信息,上采样后获取D个掩码 {{\boldsymbol{M}}_i} \in {\mathbb{R}^{H \times W}} ,构成掩码集 M = \{ {{\boldsymbol{M}}_1},{{\boldsymbol{M}}_2},…,{{\boldsymbol{M}}_D}\} . 在Transformer架构中,图像被分割并转换为补丁令牌,然后与类令牌拼接后,馈送到Transformer编码器中进行L次重复操作,每次输出的补丁令牌的形状保持不变. 由于多次执行自注意力模块,补丁令牌逐渐趋于一致. 随着编码器层的加深,补丁令牌之间的成对余弦相似度逐步升高,这意味着令牌的语义信息逐渐丢失[17]. 因此,掩码之间存在冗余,并包含高质量的积极掩码,低质量的消极掩码,以及大量不确定性掩码. 我们采用层次凝聚聚类算法减少掩码冗余. 首先将每个掩码视作1个单独的簇,使用余弦相似度计算相似度度量矩阵,并通过对相似性度量矩阵求反来得到距离矩阵. 假设掩码 {{\boldsymbol{M}}_i} 与掩码 {{\boldsymbol{M}}_j} 已经被展平为一维张量,则它们之间的距离可以表示为
Distance({{\boldsymbol{M}}_i},{{\boldsymbol{M}}_j}) = 1 - Cosine\_sim({{\boldsymbol{M}}_i},{{\boldsymbol{M}}_j}), (5) Cosine\_sim({{\boldsymbol{M}}_i},{{\boldsymbol{M}}_j}) = \frac{{{{\boldsymbol{M}}_i} \cdot {{\boldsymbol{M}}_j}}}{{\left\| {{{\boldsymbol{M}}_i}} \right\|\left\| {{{\boldsymbol{M}}_j}} \right\|}}, (6) 其中“ \cdot ”表示点乘操作, \left\| \cdot \right\| 表示欧几里得范数.
通过式(5)计算可以得到距离矩阵,距离矩阵中各元素值表示掩码之间的成对距离,通过设定阈值d可以控制生成的聚类数量. 计算簇间距离时采用完全连接策略,即使用2簇中掩码之间的最大距离作为2簇的距离,确保聚合生成的掩码的差异性. 假设经过聚类后共产生c个簇,每个簇包含不同数量的掩码,我们通过对簇内掩码取平均,生成最终经过层次聚类后的掩码集 {M_{\text{C}}} = \{ {{\boldsymbol{M}}_1},{{\boldsymbol{M}}_2},…,{{\boldsymbol{M}}_c}\} .
2.2.2 序贯三支决策
层次聚类在一定程度上减少了掩码的冗余性,但掩码质量仍具有不确定性. 信息量不足是造成不确定性问题的主要原因,这里,我们采用序贯三支决策策略处理不确定性掩码. 首先,将掩码放入ViT模型 f( \cdot ) ,输出的概率可以提供粗粒度的掩码质量信息. 利用这些信息,我们可以将掩码分为积极掩码、消极掩码和不确定性掩码.
对 {{\boldsymbol{M}}_i} \in {M_{\text{C}}} ,如果放入模型后输出与输入图像I相当的概率,即体现了图像核心区域信息,而翻转掩码 {{\textit{1}}} - {{\boldsymbol{M}}_i} 输出较低概率,即仅捕捉到一些次要信息时,则该掩码属于积极掩码,放入接受域POS:
\begin{split} PO{S_{(\alpha ,\beta )}}(f) =\;& \{ {{\boldsymbol{M}}_i} \in {M_{\text{C}}}|(\beta < f(({{\textit{1}}} - {{\boldsymbol{M}}_i}) \odot {\boldsymbol{I}}) < \\ &\alpha ) \wedge (f({{\boldsymbol{M}}_i} \odot {\boldsymbol{I}}) > \alpha )\} , \end{split} (7) 其中 {{\boldsymbol{M}}_i} \in {M_{\text{C}}} 表示当前处理的是属于候选掩码集 {M_{\text{C}}} 中的掩码, {{\boldsymbol{M}}_i} \odot {\boldsymbol{I}} 可以得到经过掩码 {{\boldsymbol{M}}_i} 覆盖后的图像,将其放入ViT模型 f( \cdot ) 中即可得到输出概率,“ \wedge ”为逻辑且运算符,“ \odot ”为逐元素乘法, \alpha 与 \beta 为控制阈值.
在某些情况下,掩码 {{\textit{1}}} - {{\boldsymbol{M}}_i} 可能才是我们所需要的积极掩码,此时应将翻转后的掩码归入接受域POS. 如图3所示,第1行为消极掩码 {{\boldsymbol{M}}_i} 及 {{\boldsymbol{M}}_i} \odot {\boldsymbol{I}} 的可视化结果, {{\boldsymbol{M}}_i} 没有捕捉到图像中的核心信息,但将其取反后,第2行显示的翻转掩码 {{\textit{1}}} - {{\boldsymbol{M}}_i} 是我们需要的积极掩码,因此我们将其放入POS.
当掩码 {{\boldsymbol{M}}_i} 或其翻转掩码{{\textit{1}}} - {{\boldsymbol{M}}_i} 放入模型输出极低的概率,说明掩码 {{\boldsymbol{M}}_i} 捕捉到的是杂乱无用的信息,该掩码属于消极掩码,放入拒绝域NEG:
\begin{split} NE{G_{(\gamma )}}(f) =\;& \{ {{\boldsymbol{M}}_i} \in {M_{\text{C}}}|(f(({{\textit{1}}} - {{\boldsymbol{M}}_i}) \odot {\boldsymbol{I}}) < \\ &\gamma ) \vee (f({{\boldsymbol{M}}_i} \odot {\boldsymbol{I}}) < \gamma )\} , \end{split} (8) 其中“ \vee ”为逻辑或运算符, \gamma 为控制阈值.
剩余掩码在未有进一步的细粒度信息时,无法判断为积极掩码或消极掩码,属于不确定性掩码,不确定性掩码放入边界域BND等待延迟决策:
BN{D_{(\alpha ,\beta ,\gamma )}}(f) = {M_{\text{C}}} - PO{S_{(\alpha ,\beta )}}(f) - NE{G_{(\gamma )}}(f), (9) 其中“ - ”表示差集运算符,表示集合A中的元素但不在集合B中的元素. 在这里,公式表示取出候选掩码集 {M_{\text{C}}} 中所有的剩余掩码,将其放入BND.
接着,我们建议使用KL散度(Kullback-Leibler divergence)来进一步处理BND中的不确定性掩码. 具体来说,我们的模型通过衡量原始图像I与BND中掩码的概率分布差异来筛选积极掩码. 其中, f(I) 为目标分布 {\boldsymbol{P}} , f({{\boldsymbol{M}}_i} \odot {\boldsymbol{I}}) 为近似分布 {{\boldsymbol{Q}}_i} ,我们定义目标分布 {\boldsymbol{P}} 和 {{\boldsymbol{M}}_i} 对应的近似分布 {{\boldsymbol{Q}}_i} 之间的KL散度:
KL({\boldsymbol{P}}||{{\boldsymbol{Q}}_i}) = \sum {{\boldsymbol{P}}{l} {\text{b}}\frac{{\boldsymbol{P}}}{{{{\boldsymbol{Q}}_i}}}} . (10) 通过式(10)计算出所有 {{\boldsymbol{M}}_i} \in BND 与I的KL散度值,并将其按从小到大顺序排序. 取其中KL散度值较大与较小的掩码 {{\boldsymbol{M}}_i} 放入POS. KL散度大的掩码与输入图像I的概率分布差异大,说明该掩码具备特异性,有利于生成有意义的解释结果,而KL散度小的掩码则可以较好的体现原始图像I的特征. 对于KL散度处于中间范围的掩码,它们的表现较为模糊和不确定. 为了避免这种不确定性对解释结果产生损害,我们将其放入NEG中:
\begin{split} PO{S_{(\delta )}}(KL) =\;& \{ {{\boldsymbol{M}}_i} \in BND|(KL(f(I)||f({{\boldsymbol{M}}_i} \odot \\ &{\boldsymbol{I}})) < \delta \vee (KL(f({\boldsymbol{I}})||f({{\boldsymbol{M}}_i} \odot {\boldsymbol{I}}) > \\ &1 - \delta )\} , \end{split} (11) \begin{split} NE{G_{(\delta )}}(KL) =\;& \{ {{\boldsymbol{M}}_i} \in BND|\delta < (KL(f({\boldsymbol{I}})|| \\ &f({{\boldsymbol{M}}_i} \odot {\boldsymbol{I}})) < 1 - \delta \} , \end{split} (12) 其中 \delta 为控制阈值, {{\boldsymbol{M}}_i} \in BND 指在第1轮三支决策中放入边界域中的掩码.
通过序贯三支决策筛选后,获得最终的积极掩码集 {M_{POS}} = \{ {{\boldsymbol{M}}_1},{{\boldsymbol{M}}_2},…,{{\boldsymbol{M}}_p}\} ,其中p为积极掩码集中掩码的个数. 对于输入图像I中每个像素x的重要性值计算通过对掩码 {{\boldsymbol{M}}_i} 与其放入模型后对应类别c的输出 {f_c}({{\boldsymbol{M}}_i} \odot {\boldsymbol{I}}) ,加权求和,并除以掩码集的期望值 E({M_{POS}}) 获取:
{\boldsymbol{S}}(x) = \dfrac{{\displaystyle\sum\limits_{i = 1}^p {{f_c}({{\boldsymbol{M}}_i} \odot {\boldsymbol{I}}) \cdot {{\boldsymbol{M}}_i}(x)} }}{{E({M_{POS}})}}, (13) 其中 {f_c}( \cdot ) 表示特定于类别c的模型, E( \cdot ) 为取均值函数.
接着,为了便于利用注意力融合模块对解释结果进行优化,对 {\boldsymbol{S}} 进行归一化处理:
{\boldsymbol{S}} = \frac{{{\boldsymbol{S}} - {{\boldsymbol{S}}_{\min }}}}{{{{\boldsymbol{S}}_{\max }} - {{\boldsymbol{S}}_{\min }}}}. (14) 序贯三支掩码模块算法如算法1所示:
算法1. 序贯三支掩码模块算法(S3WM).
输入:掩码集 {M_{\text{C}}} ,输入图像I,标准ViT模型 f( \cdot ) ,阈值集 \{ (\alpha ,\beta ,\gamma ,\delta )\} ;
输出:初步解释结果S.
① POS = NEG = BND = \emptyset ;/*初始化3个域*/
② \begin{array}{l}PO{S}_{(\alpha ,\beta )}(f)=\{{{\boldsymbol{M}}}_{i}\in {M}_{\text{C}}|(\beta < f(({{\textit{1}}}-{{\boldsymbol{M}}}_{i})\odot \end{array} {\boldsymbol{I}}) < \alpha )\wedge (f({{\boldsymbol{M}}}_{i}\odot {\boldsymbol{I}})> \alpha )\} ;
③ \begin{array}{l}NE{G}_{(\gamma )}(f)=\{{M}_{i}\in {M}_{\text{C}}|(f((1-{M}_{i})\odot I) < \end{array} \gamma )\vee (f({M}_{i}\odot I) < \gamma )\} ;
④ BN{D}_{(\alpha ,\beta ,\gamma )}(f)={M}_{\text{C}}-PO{S}_{(\alpha ,\beta )}(f)-NE{G}_{(\gamma )}(f) ;
⑤ POS=POS\cup PO{S}_{(\alpha ,\beta )}(f) ;
⑥ BND=BND\cup BN{D}_{=(\alpha ,\beta ,\gamma )}(f) ;
⑦ \begin{array}{l}PO{S}_{(\delta )}(KL)=\{{{\boldsymbol{M}}}_{i}\in BND|(KL(f({\boldsymbol{I}})\left|\right|f({{\boldsymbol{M}}}_{i}\odot \end{array} {\boldsymbol{I}}))) < \delta \vee (KL(f(I)\left|\right|f({{\boldsymbol{M}}}_{i}\odot {\boldsymbol{I}}) > 1-\delta)\} ;
⑧ \begin{array}{l}NE{G}_{(\delta )}(KL)=\{{{\boldsymbol{M}}}_{i}\in BND|\delta < (KL(f({\boldsymbol{I}})\left|\right|\end{array} f({{\boldsymbol{M}}}_{i}\odot {\boldsymbol{I}})) < 1-\delta \} ;
⑨ POS=POS\cup PO{S}_{(\delta )}(KL) ;
⑩ S=0 ;
⑪ for Mi in POS do/*利用积极掩码加权求和*/
⑫ {\boldsymbol{S}}={\boldsymbol{S}}+{f}_{c}({{\boldsymbol{M}}}_{i}\odot {\boldsymbol{I}})\cdot {{\boldsymbol{M}}}_{i} ;
⑬ end for
⑭ {\boldsymbol{S}}={\boldsymbol{S}}/E(POS) ;
⑮ {\boldsymbol{S}}=({\boldsymbol{S}}-{{\boldsymbol{S}}}_{\mathrm{min}})/({{\boldsymbol{S}}}_{\mathrm{max}}-{{\boldsymbol{S}}}_{\mathrm{min}}) ;/*归一化*/
⑯ return {\boldsymbol{S}} . /*返回初步解释结果*/
2.3 注意力融合模块
2.3.1 自注意力信息交互
自注意力机制的核心功能是实现全局信息的交互. 然而,在可解释人工智能领域,以往对自注意力机制的研究大多仅限于类别令牌[24,29],忽略了占据多数的其余补丁令牌,从而缺乏对自注意力机制整体效益的探索. 我们通过实验分析了自注意力机制中其他补丁令牌的关注区域,进一步探索了跨补丁之间的信息交互[37]. 如图4所示,我们将图像划分为N个部分,并将它们标记为前景块、背景块和边缘块,以便进行详细分析.
由2.1.2节分析可知,第l层Transformer编码器层的注意力矩阵为 {{\boldsymbol{A}}^{(l)}} \in {\mathbb{R}^{h \times (N + 1) \times (N + 1)}} ,为了便于分析,我们将注意力矩阵在头部方向上取平均,并舍去类别令牌后,其维度为 N \times N ,每行表示当前图像块对其余图像块的关注程度. 如图4所示,我们分别使用猫与蝴蝶作为前景块对自注意力信息进行分析.图4中第1列为为原始图像,图像被切块处理并按号划分为前景、背景和边缘图像块,图4中第2~4列分别可视化了每一层Transformer编码器所有前景、背景、边缘图像块对其余图像块的平均注意力分数,其中第1个表示对前景图像块的注意力分数,第2个表示对背景图像块的注意力分数,第3个表示对边缘图像块的注意力分数. 观察结果表明,前景区域的图像块始终对前景区域保持较高的关注度. 随着编码器层数的加深,对边缘区域的关注有所提升,但对背景区域的关注始终较低;背景区域的图像块对背景区域也保持较高关注度,但随着层数的加深,对前景和边缘区域的关注度也有所提升;边缘图像块对边缘区域始终保持的很高的关注度,对背景区域关注度低,呈明显的区分性.
这些观察驱使我们利用这些注意力信息生成关系矩阵R,并与初步解释结果S融合,从而生成逐块重要性分数. 通过对图像块逐块加权融合,进一步细化可视化解释结果,生成最终可视化解释结果V.
2.3.2 关系矩阵
考虑一个标准ViT模型,包括l层编码器,每层包含h个自注意力头. 我们提取所有l层中的h个头的注意力矩阵,并舍弃类别令牌得 {\boldsymbol{A}} \in {\mathbb{R}^{l \times h \times N \times N}} . 为了考虑不同编码器层中语义信息,我们首先从层的维度上进行聚合. 由于第1层编码器层尚未获取明确的语义信息,而最后一层编码器层的语义信息已经趋于平滑,我们舍弃该2层,聚合剩下的 l - 2 层:
{\boldsymbol{r}} = \dfrac{{\displaystyle\sum\limits_{i = 2}^{l - 1} {{{({{\boldsymbol{A}}_i} - E({\boldsymbol{A}}))}^2}} }}{{l - 2}}, (15) E({\boldsymbol{A}}) = \dfrac{{\displaystyle\sum\limits_{i = 2}^{l - 1} {{{\boldsymbol{A}}_i}} }}{{l - 2}}, (16) 其中 E({\boldsymbol{A}}) 可以理解为考虑了不同编码器层的一般性关系的注意力矩阵.
利用 {{\boldsymbol{A}}_i} - E({\boldsymbol{A}}) 计算可以得到前景、背景、边缘图像区域的关系差异, {\boldsymbol{r}} \in {\mathbb{R}^{h \times N \times N}} 表示为考虑了跨编码器层的关系矩阵. 根据文献[28],在多头自注意力中,不同的头部关注的重点不同,我们采取类似策略对r进行聚合得到最终的关系矩阵R:
{\boldsymbol{R}} = \dfrac{{\displaystyle\sum\limits_{i = 1}^h {{{({{\boldsymbol{r}}_i} - E({\boldsymbol{r}}))}^2}} }}{h}, (17) E({\boldsymbol{r}}) = \dfrac{{\displaystyle\sum\limits_{i = 1}^h {{{\boldsymbol{r}}_i}} }}{h}, (18) 其中 E(r) 可以理解为考虑了不同注意力头部的一般性关系的注意力矩阵.
利用 {r_i} - E(r) 计算可以得到前景、背景、边缘图像区域的关系差异, R \in {\mathbb{R}^{N \times N}} 表示图像全局的关系矩阵,每行表示当前图像块与其他图像块之间的关系,列中的值越大,表明2个图像块之间的关系越密切.
我们随机采样了部分前景、背景和边缘图像块,并选取图像块序号在关系矩阵R中对应的行进行重塑操作,如图5第1列所示,正方形块(红色)为采样的前景图像块,圆形块(蓝色)为采样的边缘图像块,三角形块(绿色)为采样的背景图像块. 图5中第2到第4列分别是前景、边缘、背景图像块的可视化结果. 观察结果显示,3种类型的图像块与自身周围的图像块关系更为密切,同时也与具有相同属性的远处图像块存在一定的联系. 这进一步验证了我们在2.3.1节中的结论.
2.3.3 注意力融合
由于初步解释结果S能够有效定位物体位置,我们将关系矩阵R的注意力信息与S融合. 具体而言,我们首先将 {\boldsymbol{S}} \in {\mathbb{R}^{H \times W}} 下采样至 \sqrt N \times \sqrt N 后展平为 1 \times N ,接着计算 {{\boldsymbol{R}}_i} \in {\mathbb{R}^{i \times N}},i = 1,2,…,N 与S的余弦相似度作为第i个图像块的重要性分数:
{{\boldsymbol{P}}_i} = \frac{{{\boldsymbol{S}} \cdot {{\boldsymbol{R}}_i}}}{{\left\| {\boldsymbol{S}} \right\|\left\| {{{\boldsymbol{R}}_i}} \right\|}},i = 1,2,…,N, (19) 直觉上 {{\boldsymbol{P}}_i} 可以理解为第i个图像块关联区域与物体位置信息的相关程度. 当第i个图像块为前景图像块时,会获取较高的重要性得分;当第i个图像块为边缘图像块时,得分会处于中等水平;当第i个图像块为背景图像块时,会获取较低的重要性得分.
通过上述方法计算得到重要性得分 {\boldsymbol{P}} \in {\mathbb{R}^{1 \times N}} ,我们将其重塑为 \sqrt N \times \sqrt N 并上采样至 H \times W 的尺寸,接着与S进行逐元素相乘,最终得到重要性图V:
{\boldsymbol{V}}(x) = {\boldsymbol{P}}(x) \odot {\boldsymbol{S}}(x). (20) 可视化实验及消融实验结果表明,通过注意力融合产生的重要性分数可以有效提升可视化解释结果的定位能力.
SAF-Explainer的完整过程如算法2所示.
算法2. 基于序贯三支掩码和注意力融合的Transformer解释方法.
输入:输入图像I;
输出:解释结果V.
① X=Get_Output(I);
② Mask=Upsample(Reshape(X));
③ MC=Agglomerative_Clustering(Mask);
④ S=S3WM(MC);/*获取初步解释结果*/
⑤ A=Get_Attention(I);
⑥ r=0;
⑦ for Ai in A do /*聚合注意力矩阵*/
⑧ r=r+square(Ai − E(A));
⑨ end for
⑩ r=r/(l − 2);/*除以层数取均值*/
⑪ R=0;
⑫ for head in r do /*聚合生成关系矩阵*/
⑬ R=R+square(head − E(r));
⑭ end for
⑮ R=R/h;
⑯ P=dot(S,R)/(norm_2(S) \cdot norm_2(R));
⑰ V=P \odot S;
⑱ return V. /*获取最终解释结果*/
3. 实验设置及结果分析
我们首先将所提出的SAF-Explainer架构与其他基线架构在定性评估和分割任务上的进行比较,以验证其优越性;再去掉SAF-Explainer中重要模块进行消融实验,验证架构中所提出模块的有效性.
3.1 实验设置
本文实验使用如下数据集进行定性定量评估.
1)ImageNet 2012[38]的验证集,由来自1 000个类别的5万张图像组成. 主要用于验证ViT模型在自然图像上的可解释性能力.
2)COCO 2017(Microsoft common objects in context 2017)[39]验证集,包含来自80个不同类别的
5000 个带注释的分割图像.3)BraTS 2023(brain tumor segmentation 2023)[40-42]数据集,BraTS 2023训练数据集包含1 251名受试者,每个受试者均有来自4种不同磁共振成像模态的3D体积:1)原生T1;2)对比后T1加权;3)T2加权;4)T2流体衰减反转恢复,这些模态严格对齐,并以1 mm × 1 mm × 1 mm的各向同性分辨率重新采样,输入3D体积的大小为240 × 240 × 155.我们遵循文献[43]中的处理方法,通过沿z轴切片每个模态体积以形成总共177 175个2D图像来预处理数据. 由于官方提供的验证数据集中没有真实分割标签,我们将BraTS训练数据集按9:1划分为训练集与验证集,训练集用于ViT分类模型的训练,验证集用于验证SAF-Explainer模型在医学图像上的可解释性.
4)VOC 2012(pascal visual object classes 2012[44])数据集,包含来自20个类别的1 449个图像的带注释分割的验证集.
分割实验将每个解释结果通过阈值进行二值化形成分割结果,通过图像分割指标来衡量模型性能:1)像素准确率PA(pixel accuracy);2)平均交并比mIoU(mean intersection over union);3)戴斯相似性系数DSC(dice similarity coefficient);设 {n_{ij}} 为类别i被预测成类别j的像素个数, {n_{{\text{cls}}}} 为目标类别个数(包括背景).
像素准确率为所有预测正确的像素个数与总预测像素个数之比,它易于理解和计算,可以简单直观的反应分割结果的效果,PA的计算公式如下:
PA = \dfrac{{\displaystyle\sum\limits_i {{n_{ii}}} }}{{\displaystyle\sum\limits_i {\displaystyle\sum\limits_j {{n_{ij}}} } }}. (21) 预测区域和真实区域交集除以预测区域和真实区域的并集可以得到单个类别下的IoU,通过计算出每个类别下的IoU取平均即可得到mIoU:
mIoU = \dfrac{1}{{{n_{{\text{cls}}}}}}\dfrac{{{n_{ii}}}}{{\displaystyle\sum\limits_j {{n_{ij}} + \displaystyle\sum\limits_j {{n_{ji}}} - {n_{ii}}} }}. (22) 戴斯相似性系数是衡量2个集合相似度的指标,它通过计算模型预测结果与真实标签之间的相似程度来度量模型的准确性,取值范围是[0,1],值越大说明模型预测结果与真实标签相似度越高,分割效果越好DSC计算公式如下:
DSC = \dfrac{{2 \times {n_{ii}}}}{{2 \times {n_{ii}} + \displaystyle\sum\limits_{j \ne i} {{n_{ji}}} + \displaystyle\sum\limits_{j \ne i} {{n_{ij}}} }}. (23) 本文实验选用超参 \alpha = 0.98 , \beta = 0.1 , \gamma = 0.01 , \delta = 0.15 , d = 0.1 ,本文采用的实验平台为PC(13th Gen Intel(R) Core(TM) i9-13900K @ 3.00 GHz),显卡为NVIDIA GeForce RTX
4090 ,内存容量64 GB,Windows10 专业版操作系统,开发工具为JetBrains PyCharm2022.2.1 专业版,使用Python语言实现实验中相关算法.在3.2节和3.3节中,我们将SAF-Explainer与4个基线进行比较:1)Raw Attention[2];2)T-Attribution[29];3)Grad-CAM[31];4)ViT-CX[15].
3.2 定性评估
本文使用ImageNet 2012自然图像数据集和BraTS医学图像数据集上进行定性评估. 图6展示了SAF-Explainer与其他基线方法在单类别自然图像上的解释结果. Grad-CAM和Raw Attention几乎无法定位到图像中的主体部分,T-Attribution虽然可以定位到主体,但其热图覆盖区域往往只能占到主体的50%,例如,它仅关注熊与狼狗的脸部或鸽子的头部,而对它们的身体部分关注较少,无法全面展现模型的解释能力. 我们的方法能够实现最为准确的定位效果,这得益于序贯三支掩码模块中积极掩码的关键作用. 尽管ViT-CX能够定位大部分主体对象,但背景区域往往包含大量噪声信息. 在描绘主体边缘的细节时,其效果也不够精确,无法准确描述物体轮廓. 由于注意力融合模块对边缘图像块的独特设计,SAF-Explainer在一些细节处理方面表现更好,如蝴蝶的边缘更为平滑,熊和狼狗的腿部轮廓描绘的更为准确. 同时,注意力融合也对背景图像块信息进行处理,大大减少了背景中包含的噪声信息.
SAF-Explainer和基线方法对在多类别自然图像的解释结果如图7所示.Raw Attention获得的结果与类别无关,1张图片上2个不同的类别会生成相同的解释,无法体现模型工作机理.Grad-CAM虽然能生成不同类别的解释,但结果通常只包含零散的点,并不令人信服.ViT-CX对2个类别的结果是互补的,不能反映类别特定的特征. 尽管T-Attribution方法可以为2个类别生成不同的解释图,但它仍然缺乏信心. 相反,所提出的方法可以为2类提供准确的解释结果.
本文采用在ImageNet 2012预训练的ViT模型基础上,对磁共振成像脑肿瘤数据集进行2分类迁移学习,将图像分为正常与含脑肿瘤图像,并对迁移学习后的ViT模型进行可解释性评估. 图8展示了SAF-Explainer与其他基线方法在医学图像上的解释结果,其中第7列为肿瘤分割标准答案. 由于医学图像数据集较小,大多数方法难以产生良好的解释结果,Raw Attention未能捕捉肿瘤位置,T-Attribution和ViT-CX虽然在某些情况下可以定位肿瘤,但其对肿瘤位置的信心不足,通常只能定位的少部分肿瘤位置,且其噪声问题依旧存在. Grad-CAM仅在少数情况下能够定位肿瘤位置. 相比之下,本文方法不仅能够准确定位肿瘤位置,还能够有效减少空间噪声,表现出更好的解释效果.
3.3 分割实验
我们使用VOC 2012数据集和COCO 2017数据集进行分割结果评估. 由于数据集中部分图像包含多个标签注释,我们在评估时将图像中所有带注释的对象均视为真实标签,因此所有方法的整体性能指标较低. 各方法在VOC 2012数据集、COCO 2017数据集上的分割指标如表1和表2所示,表中加粗数字表示最优值.
表 1 各方法在VOC 2012数据集上分割性能对比Table 1. Comparison of Segmentation Performance of Each Method on VOC 2012 Dataset% 方法 PA mIoU DSC Raw Attention 62.15 39.61 33.49 T-Attribution 74.01 50.64 46.89 Grad-CAM 65.32 41.25 30.59 ViT-CX 63.39 44.92 48.60 SAF-Explainer(本文) 74.12 52.72 50.30 表 2 各方法在COCO 2017数据集上分割性能对比Table 2. Comparison of Segmentation Performance of Each Method on COCO 2017 Dataset% 方法 PA mIoU DSC Raw Attention 62.02 40.10 33.38 T-Attribution 68.95 46.36 39.95 Grad-CAM 65.20 41.55 30.56 ViT-CX 56.30 37.73 38.98 SAF-Explainer(本文) 69.73 46.59 40.25 从表1中可以看出,Raw Attention,Grad-CAM,ViT-CX在VOC 2012数据集上的PA和mIoU表现相对较差. 原因在于Raw Attention只使用了模型注意力信息,Grad-CAM仅依赖模型梯度信息,而ViT-CX仅使用模型输出信息,这些单一信息源不足以提供全面的解释. T-Attribution结合了注意力信息和梯度信息,取得了更好的效果,但在图像细节处理方面仍然存在不足. SAF-Explainer通过融合模型输出和注意力信息,PA,mIoU,DSC指标均达到了最优值,分别为74.12%,52.72%,50.30%,超过次优方法0.11%,2.08%,1.7%.
由表2可知,COCO 2017数据集由于类别更多,导致各解释方法的分割性能相比VOC 2012数据集有所下降. 只使用单一模型信息的方法表现依旧较差,我们的方法在PA,mIoU,DSC指标上分别达到69.73%,46.59%,40.25%,超过次优值0.78%,0.23%,0.3%.T-Attribution在各指标上可以达到次优值,这主要是由于它综合利用了梯度信息与注意力信息. 结合图6可以看出,由于T-Attribution对解释细节的处理不足,生成的解释结果过于保守,ViT-CX生成的解释图虽然可以定位到主体对象,但由于缺乏针对ViT特性的处理,存在大量的空间噪声. 我们的方法能够更精确地定位图像中的物体位置,同时在主体边缘细节的描绘上表现出色,且包含较少的空间噪声.
3.4 消融实验
为了验证所提模块的有效性,我们设计了3种方法的变体,并在VOC和COCO数据集进行分割实验,各模块的消融实验结果如表3所示. 1)w/o S3WM,即剔除序贯三支掩码模块;2)w/o AF,即剔除注意力融合模块;3)w/o S3WM,AF,即同时剔除序贯三支掩码模块和注意力融合模块.
表 3 VOC 2012与COCO 2017数据集的消融实验结果Table 3. Results of Ablation Experiments on VOC 2012 and COCO 2017 Datasets% 方法 PA mIoU DSC VOC
2012COCO
2017VOC
2012COCO
2017VOC
2012COCO
2017w/o S3WM 72.84 67.64 51.02 45.54 47.89 39.93 w/o AF 71.09 69.06 50.91 45.78 49.51 39.01 w/o S3WM,AF 69.50 66.86 49.17 44.79 47.63 38.97 SAF-Explainer
(本文)74.12 69.73 52.72 46.59 50.30 40.25 移除序贯三支掩码模块(即w/o S3WM)后,VOC 2012和COCO 2017数据集的PA分别下降1.28%和2.09%,mIoU下降1.7%和1.05%,DSC下降2.41%和0.32%. 由此可以看出,S3WM模块有效提高了模型对物体位置的定位能力. 通过S3WM模块处理掩码质量不确定性问题,筛选积极掩码,并利用这些掩码对图像进行扰动,可以显著提高模型的解释效果.
此外,我们也尝试同时剔除序贯三支掩码模块与注意力融合模块(即w/o S3WM,AF). 结果显示,3项指标在VOC 2012和COCO 2017数据集上的分割性能相较于单独剔除S3WM或AF模块时进一步下降. 这验证了2个模块叠加的有效性,并进一步说明了序贯三支掩码模块在处理掩码质量不确定性问题和筛选积极掩码方面的重要性. 同时,跨层注意力信息聚合生成的关系矩阵能够有效优化解释结果的细节信息.
4. 结论与展望
Transformer模型在计算机视觉领域重要性日益增加,对模型完整与准确的可解释性需求也大大提高. 然而,目前关于Transformer可解释性的研究有限. 本文提出SAF-Explainer,它基于掩码解释方法设计,主要提出了S3WM模块,通过特定的阈值条件设定解决了掩码质量不确定性问题,提出了AF模块,通过聚合注意力矩阵生成关系矩阵,解决了解释结果包含大量噪声的问题,以优化解释结果中的细节信息. 在ImageNet 2012,VOC 2012,COCO 2017,BraTS 2023数据集上的实验表明,我们的方法无论在自然图像还是在医学图像上表现均优于其他基线方法. 由于SAF-Explainer是针对视觉领域的Transformer设计,在未来的研究中,我们会尝试延申SAF-Explainer到其他领域如自然语言处理和多模态领域. 例如,在自然语言处理领域,Transformer模型被训练用于文本情感分类. 我们可以通过生成重要性热图,展示文本中各个词语对模型预测的贡献程度. 这些热图有助于理解模型做出特定预测的原因.
作者贡献声明:成晓天提出了算法核心思想,设计了实验方案,完成实验并撰写论文;丁卫平提出了整个算法的框架并对整个算法思想进行完善,指导了论文修改;耿宇、黄嘉爽、鞠恒荣完善了算法的思路,指导了论文写作并修改论文;郭静协助完成部分实验及完善论文内容.
-
表 1 相似性界定实验结果
Table 1 Experimental Results for Similarity Evaluation
方法/指标 F1分数 精度 召回率 准确率 GPTCache 0.9100 0.9887 0.8428 0.8366 MeanCache 0.6211 0.9991 0.4506 0.4614 OneIntent 0.9712 0.9857 0.9571 0.9444 WithArgs 0.9035 0.9967 0.8262 0.8272 AgentReuse 0.9718 0.9931 0.9513 0.9459 -
[1] 光明日报. 抢抓机遇,加快发展新质生产力[EB/OL]. [2024-03-14]. https://news.gmw.cn/2024-03/14/content_37202598.htm Guangming Daily. Seize the opportunity, accelerate the development of new quality productive forces [EB/OL]. [2024-03-14]. https://news.gmw.cn/2024-03/14/content_37202598.htm (in Chinese)
[2] 刘云浩. 物联网导论[M]. 北京:科学出版社,2017 Liu Yunhao. Introduction to Internet of Things[M]. Beijing: Sciences Press, 2017 (in Chinese)
[3] 郭斌,刘思聪,刘琰,等. 智能物联网:概念、体系架构与关键技术[J]. 计算机学报,2023,46(11):2259−2278 doi: 10.11897/SP.J.1016.2023.02259 Guo Bin, Liu Sicong, Liu Yan, et al. AIoT: The concept, architecture and key techniques[J]. Chinese Journal of Computers, 2023, 46(11): 2259−2278 (in Chinese) doi: 10.11897/SP.J.1016.2023.02259
[4] 小米集团. 小爱同学[EB/OL]. [2024-03-15]. https://xiaoai.mi.com/ Xiaomi Corporation. Xiaoai tongxue [EB/OL]. [2024-03-15]. https://xiaoai.mi.com/(in Chinese)
[5] 华为终端有限公司. 智慧唤醒语音[EB/OL]. [2024-03-15]. https://consumer.huawei.com/cn/emui-11/tips/smart-home-list/article5/ Huawei Device Co., Ltd. Wake up to intelligent voice [EB/OL]. [2024-03-15]. https://consumer.huawei.com/cn/emui-11/tips/smart-home-list/article5/ (in Chinese)
[6] 李戈,彭鑫,王千祥,等. 大模型:基于自然交互的人机协同软件开发与演化工具带来的挑战[J]. 软件学报,2023,34(10):4601−4606 Li Ge, Peng Xin, Wang Qianxiang, et al. Challenges from LLMs as a natural language based human-machine collaborative tool for software development and evolution[J]. Journal of Software, 2023, 34(10): 4601−4606 (in Chinese)
[7] Dong Luna Xin, Moon Seungwhan, Xu Ethan Yifan, et al. Towards next-generation intelligent assistants leveraging LLM techniques[C]//Proc of the 29th ACM SIGKDD Conf on Knowledge Discovery and Data Mining. New York: ACM, 2023: 5792−5793
[8] Li Yuanchun, Wen Hao, Wang Weijun, et al. Personal LLM agents: Insights and survey about the capability, efficiency and security[J]. arXiv preprint, arXiv: 2401.05459, 2024
[9] Weng Lilian. LLM powered autonomous agents [EB/OL]. [2024-3-30]. https://lilianweng.github.io/posts/2023-06-23-agent
[10] Wang Lei, Ma Chen, Feng Xueyang, et al. A survey on large language model based autonomous agents[J]. Frontiers of Computer Science, 2024, 18(6): 1−26
[11] Xi Zhiheng, Chen Wenxiang, Guo Xin, et al. The rise and potential of large language model based agents: A survey[J]. arXiv preprint, arXiv: 2309.07864, 2023
[12] Wu Qingyun, Bansal Gagan, Zhang jieyu, et al. AutoGen: Enabling next-gen LLM applications via multi-agent conversation[J]. arXiv preprint, arXiv: 2308.08155, 2023
[13] Open-Assistant. Open assistant conversations dataset release 2 [EB/OL]. [2024-04-20]. https://huggingface.co/datasets/OpenAssistant/oasst2
[14] Gill W, Elidrisi M, Kalapatapu P, et al. Privacy-aware semantic cache for large language models[J]. arXiv preprint, arXiv: 2403.02694, 2024
[15] Zhu Banghua, Sheng Ying, Zheng Lianmin, et al. On optimal caching and model multiplexing for large model inference[C]//Advances in Neural Information Processing Systems. Cambridge, MA: MIT, 2023: 59062−59094
[16] Fu Bang, Feng Di. GPTCache: An open-source semantic cache for LLM applications enabling faster answers and cost savings[C]//Proc of the 3rd Workshop for Natural Language Processing Open Source Software. Stroudsburg, PA: ACL, 2023: 212−218
[17] Zhao Wayne Xin, Zhou Kun, Li Junyi, et al. A survey of large language models[J]. arXiv preprint, arXiv: 2303.18223, 2023
[18] Lin Chaofan, Han Zhenhua, Zhang Chengruidong, et al. Parrot: Efficient serving of LLM-based applications with semantic variable[C]//Proc of the 18th SENIX Symp on Operating Systems Design and Implementation. Berkeley, CA: USENIX Association, 2024: 929−945
[19] Mindstream. AutoGPT [EB/OL]. [2024-04-30]. https://autogpt.net/
[20] Shen Yongliang, Song Kaitao, Tan Xu, et al. Hugging GPT: Solving AI tasks with chatgpt and its friends in hugging face[C]//Advances in Neural Information Processing Systems. Cambridge, MA: MIT, 2023: 38154−38180
[21] Hong Sirui, Zhuge Mingchen, Chen Jonathan, et al. MetaGPT: Meta programming for a multi-agent collaborative framework[J]. arXiv preprint, arXiv: 2308.00352, 2023
[22] Bram M A, Cox S, Schilter O, et al. Augmenting large language models with chemistry tools[J]. Nature Machine Intelligence, 2024(6): 525−535
[23] 高云帆,郁董卿,王思琪,等. 大语言模型驱动的选址推荐系统[J]. 计算机研究与发展,2024,61(7):1681-1696 Gao Yunfan, Yu Dongqing, Wang Siqi, et al. Large language model powered site selection recommender system[J]. Journal of Computer Research and Development, 2024, 61(7): 1681-1696(in Chinese)
[24] Baek J, Jauhar K S, Cucerzan S, et al. ResearchAgent: Iterative research idea generation over scientific literature with large language models[J]. arXiv preprint, arXiv: 2404.07738, 2024
[25] VIVO. BlueLM-7B-Chat [EB/OL]. [2024-05-01]. https://huggingface.co/vivo-ai/BlueLM-7B-Chat
[26] Google. Google pixel 8 pro [EB/OL]. [2024-05-21]. https://store.google.com/product/pixel_8_pro
[27] Hsiao S. Assistant with bard: A step toward a more personal assistant [EB/OL]. [2024-05-21]. https://blog.google/products/assistant/google-assistant-bard-generative-ai/
[28] Microsoft. Microsoft copilot [EB/OL]. [2024-05-01]. https://copilot.microsoft.com/
[29] Mehdi Y. Introducing Copilot+ PCs [EB/OL]. [2024-05-25]. https://blogs.microsoft.com/blog/2024/05/20/introducing-copilot-pcs/
[30] Zhang Chi, Yang Zhao, Liu Jiaxuan, et al. AppAgent: Multimodal agents as smartphone users[J]. arXiv preprint, arXiv: 2312.13771, 2023
[31] Wen Hao, Li Yuanchun, Liu Guohong, et al. AutoDroid: LLM-powered task automation in Android[C]//Proc of the 30th Annual Int Conf on Mobile Computing and Networking. New York: ACM, 2024: 543−557
[32] 王恩东,唐士斌,陈继承,等. 多核处理器目录缓存结构设计[J]. 计算机研究与发展,2015,52(6):1242−1253 doi: 10.7544/issn1000-1239.2015.20150140 Wang Endong, Tang Shibin, Chen Jicheng, et al. Directory cache design for multi-core processor[J]. Journal of Computer Research and Development, 2015, 52(6): 1242−1253 (in Chinese) doi: 10.7544/issn1000-1239.2015.20150140
[33] Sedaghati A, Hakimi M, Hojabr R, et al. X-cache: A modular architecture for domain-specific caches[C]//Proc of the 49th Annual Int Symp on Computer Architecture. New York: ACM, 2022: 396–409
[34] Bhatla A, Navneet, Panda B. The Maya cache: A storage-efficient and secure fully-associative last-level cache[C]/Proc of the 51st Int Symp on Computer Architecture. New York: ACM, 2024: 32−44
[35] Wong L D, Wu Hao, Molder C, et al. Baleen: ML admission & prefetching for flash caches[C]//Proc of the 22nd USENIX Conf on File and Storage Technologies. Berkeley, CA: USENIX Association, 2024: 347−371
[36] Liu Yubo, Ren Yuxin, Liu Mingrui, et al. Optimizing file systems on heterogeneous memory by integrating dram cache with virtual memory management[C]//Proc of the 22nd USENIX Conf on File and Storage Technologies. Berkeley, CA: USENIX Association, 2024: 71−87
[37] McAllister S, Berg B, Tutuncu-Macias J, et al. Kangaroo: Caching billions of tiny objects on flash[C]//Proc of the 28th Symp on Operating Systems Principles. New York: ACM, 2023: 243−262
[38] Chen Jiayi, Sharma N, Khan T, et al. Darwin: Flexible learning-based CDN caching[C]//Proc of the 37th ACM Special Interest Group on Data Communication. New York: ACM, 2024: 981−999
[39] Yang Juncheng, Zhang Yazhuo, Qiu Ziyue, et al. FIFO queues are all you need for cache eviction [C]//Proc of the 29th Symp on Operating Systems Principles. New York: ACM, 2023: 130−149
[40] Yan Gang, Li Jian. Towards latency awareness for content delivery network caching[C]//Proc of the 2022 USENIX Annual Technical Conf. Berkeley, CA: USENIX Association, 2022: 789−804
[41] Mirheidari A S, Arshad S, Onarlioglu K, et al. Cached and confused: Web cache deception in the wild[C]//Proc of the 29th USENIX Security Symp. Berkeley, CA: USENIX Association, 2020: 665−682
[42] 马郓,刘譞哲,梅宏. 面向移动Web应用的浏览器缓存性能度量与优化[J]. 软件学报,2020,31(7):1980−1996 Ma Yun, Liu Xuanzhe, Mei Hong. Measurement and optimization of browser cache performance for mobile Web applications[J]. Journal of Software, 2020, 31(7): 1980−1996(in Chinese)
[43] Wang Huan, Wu Kui, Wang Jianping, et al. Rldish: Edge-assisted QoE optimization of HTTP live streaming with reinforcement learning[C]// Proc of the 43rd IEEE Conf on Computer Communications. Piscataway, NJ: IEEE 2020: 706−715
[44] Fuerst A, Sharma P. Faascache: Keeping serverless computing alive with greedy-dual caching[C]//Proc of the 26th ACM Int Conf on Architectural Support for Programming Languages and Operating Systems. New York: ACM, 2021: 386−400
[45] Roy B R, Patel T, Tiwari D. Icebreaker: Warming serverless functions better with heterogeneity[C]//Proc of the 27th ACM Int Conf on Architectural Support for Programming Languages and Operating Systems. New York: ACM, 2022: 753−767
[46] Li Guopeng, Tan Haisheng, Zhang Xuan, et al. Online container caching with late-warm for IoT data processing[C]//Proc of the 40th Int Conf on Data Engineering. Piscataway, NJ: IEEE 2024: 1547−1560
[47] Traverso S, Ahmed M, Garetto M, et al. Temporal locality in today’s content caching: Why it matters and how to model it[J]. ACM SIGCOMM Computer Communication Review, 2013, 43(5): 5−12 doi: 10.1145/2541468.2541470
[48] Kwon W, Zhuohan Li, Zhuang Siyuan, et al. Efficient memory management for large language model serving with Paged Attention[C]//Proc of the 29th Symp on Operating Systems Principles. New York: ACM, 2023: 611−626
[49] Zhang Zhenyu, Sheng Ying, Zhou Tianyi, et al. H2o: Heavy-hitter oracle for efficient generative inference of large language models[C]//Advances in Neural Information Processing Systems. Cambridge, MA: MIT, 2023: 34661−34710
[50] Liu Yuhan, Li Hanchen, Cheng Yihua, et al. Cachegen: KV cache compression and streaming for fast language model serving[J]. arXiv preprint, arXiv: 2310.07240, 2023
[51] Agarwal S, Mitra S, Chakraborty S, et al. Approximate caching for efficiently serving text-to-image diffusion models[C]//Proc of the 21st USENIX Symp on Networked Systems Design and Implementation. Berkeley, CA: USENIX Association, 2024: 1173−11189
[52] Ma Ziyu, Sun Bin, Li Shutao. A two-stage selective fusion framework for joint intent detection and slot filling[J]. IEEE Transactions on Neural Networks and Learning Systems, 2024, 35(3): 3874−3885 doi: 10.1109/TNNLS.2022.3202562
[53] NVIDIA. Intelligent virtual assistant [EB/OL]. [2024-05-21]. https://www.nvidia.com/en-us/ai-data-science/ai-workflows/intelligent-virtual-assistant/
[54] Kinza Y. Virtual assistant (ai assistant) [EB/OL]. [2024-05-21]. https://www.techtarget.com/searchcustomerexperience/definition/virtual-assistant-AI-assistant
[55] Google. bert-base-chinese [EB/OL]. [2024-04-01]. https://huggingface.co/google-bert/bert-base-chinese
[56] MokaAI. M3E models [EB/OL]. [2024-04-01]. https://huggingface.co/moka-ai/m3e-small
[57] Meta. FAISS. [EB/OL]. [2024-04-01]. https://ai.meta.com/tools/faiss/
[58] Patil G. Shishir, Zhang Tianjun, Fang Vivian, et al. Goex: perspectives and designs towards a runtime for autonomous llm applications[J]. arXiv preprint, arXiv: 2404.06921, 2024
[59] Chu A, Shoemaker C. Tutorial: Use code interpreter sessions in semantic kernel with azure container apps [EB/OL]. [2024-05-24]. https://learn.microsoft.com/en-us/azure/container-apps/sessions-tutorial-semantic-kernel
[60] LangChain. Security[EB/OL]. [2024-05-24]. https://python.langchain.com/v0.1/docs/security/
[61] 中国中文信息学会. 中文人机对话技术评测 [EB/OL]. [2024-02-01]. https://conference.cipsc.org.cn/smp2019/evaluation.html Chinese information processing society of china. The evaluation of chinese human-computer dialogue technology [EB/OL]. [2024-02-01]. https://conference.cipsc.org.cn/smp2019/evaluation.html (in Chinese)
[62] Mehta S, Sekhavat M, Cao Q, et al. OpenELM: An efficient language model family with open training and inference framework [EB/OL]. [2024-05-01]. https://machinelearning.apple.com/research/openelm
[63] Beatty S. Tiny but mighty: The Phi−3 small language models with big potential [EB/OL]. [2024-05-01]. https://news.microsoft.com/source/features/ai/the-phi-3-small-language-models-with-big-potential/
[64] Lee S, Choi J, Lee J, et al. Explore, select, derive, and recall: Augmenting LLM with human-like memory for mobile task automation [J]. arXiv preprint, arXiv: 2312.03003, 2023