【RAG多模态】mR^2AG:基于知识的多模态检索-反思增强生成方法浅尝

devtools/2024/11/30 15:10:11/

(a1)mR2AG带检索:这个过程包括:a)检索反思,用于确定是否需要检索;b)相关性反思,用于识别证据段落;c)对多个候选答案进行后处理。(a2)mR2AG不带检索:当不需要检索时的生成过程。(b)无反思的朴素m<a class=RAG:一种没有反思的基线方法。" />

在基于知识的视觉问答(Knowledge-based VQA)任务中,输入通常是一对图像和问题 ( I , Q ) (I, Q) (I,Q),并且依赖于可访问的知识库。文章提出的 m R 2 A G mR^2AG mR2AG框架通过两个新颖的反思操作来解耦生成过程,从而提高答案的质量。 m R 2 A G mR^2AG mR2AG将生成过程分为三个步骤:执行检索反思(Retrieval-Reflection)以确定是否需要检索,执行相关性反思(Relevance-Reflection)以识别证据段落并生成答案,以及后处理多个候选答案。

方法

检索反思

用户查询可以根据输入 ( I , Q ) (I, Q) (I,Q) 分为依赖视觉的和基于知识的。为了指导模型区分不同类型的查询,定义了两个特殊标记:[Retrieval] 和 [No Retrieval],用于执行检索反思。具体步骤如下:

  1. 模型基于输入 ( I , Q ) (I, Q) (I,Q) 生成检索反思预测 y r e t y^{ret} yret
    y r e t = M L L M ( I , Q ) y^{ret} = MLLM(I, Q) yret=MLLM(I,Q)

  2. 根据预测结果执行相关操作:

    • 如果 $y^{ret} = $ [No Retrieval],模型确定问题可以通过视觉内容回答,不需要外部知识。模型在条件 $y^{ret} = $ [No Retrieval] 下,结合 ( I , Q ) (I, Q) (I,Q) 生成答案 y a n s y^{ans} yans
      y a n s = M L L M ( I , Q , y r e t = [ N o R e t r i e v a l ] ) y^{ans} = MLLM(I, Q, y^{ret}=[No Retrieval]) yans=MLLM(I,Q,yret=[NoRetrieval])
    • 如果 $y^{ret} = $ [Retrieval],模型识别到需要外部知识来回答问题,并调用检索器协助进一步的生成过程
  3. 检索过程:使用英文维基百科条目作为知识库,其中第 k k k 个条目包含候选图像 I ^ k \hat{I}_{k} I^k、标题 T ^ k \hat{T}_{k} T^k 和文章 P ^ k \hat{P}_{k} P^k m R 2 A G mR^2AG mR2AG 结合跨模态和单模态检索来选择与查询图像 I I I 最相关的维基百科条目。使用 CLIP 对 I I I I ^ k \hat{I}_{k} I^k T ^ k \hat{T}_{k} T^k 进行编码,并计算 sim ⁡ ( I , I ^ k ) \operatorname{sim}(I, \hat{I}_{k}) sim(I,I^k) sim ⁡ ( I , T ^ k ) \operatorname{sim}(I, \hat{T}_{k}) sim(I,T^k) 的余弦相似度。第 k k k 个条目的整体检索分数 S k r e t S_{k}^{ret} Skret两个余弦相似度的平均值
    S k r e t = ( sim ⁡ ( I , I ^ k ) + sim ⁡ ( I , T ^ k ) ) / 2 S_{k}^{ret} = \left(\operatorname{sim}(I, \hat{I}_{k}) + \operatorname{sim}(I, \hat{T}_{k})\right) / 2 Skret=(sim(I,I^k)+sim(I,T^k))/2

    假设结果 P ^ = { P ^ i } i = 1 N \hat{P} = \{\hat{P}_{i}\}_{i=1}^{N} P^={P^i}i=1N 对应于检索分数最高的 top-N 的文章。

相关性反思

将每个检索到的文章 P ^ i \hat{P}_{i} P^i 分成多个段落。为了使模型能够确定每个分段段落 P ^ i j \hat{P}_{ij} P^ij 是否包含与问题 Q Q Q 相关的证据,也引入两个相关性反思标记:[Relevant] 和 [Irrelevant]。具体步骤如下:

  1. 模型在条件 P ^ i j \hat{P}_{ij} P^ij 和查询 ( I , Q ) (I, Q) (I,Q) 的组合下生成相关性反思预测 y i j r e l y_{ij}^{rel} yijrel
    y i j r e l = M L L M ( I , Q , P ^ i j ) y_{ij}^{rel} = MLLM(I, Q, \hat{P}_{ij}) yijrel=MLLM(I,Q,P^ij)

  2. 根据预测结果执行操作

    • 如果 $y_{ij}^{rel} = $ [Irrelevant],表明模型认为 P ^ i j \hat{P}_{ij} P^ij 与查询无关且缺乏足够的证据,提示模型终止生成过程,避免产生不可靠的答案。
    • 如果 $y_{ij}^{rel} = $ [Relevant],模型认为 P ^ i j \hat{P}_{ij} P^ij 与查询相关,包含有助于生成答案的证据,因此继续基于 ( I , Q , P ^ i j , y i j r e l = [ Relevant ] ) (I, Q, \hat{P}_{ij}, y_{ij}^{rel}=[\text{Relevant}]) (I,Q,P^ij,yijrel=[Relevant]) 生成答案 y i j ans y_{ij}^{\text{ans}} yijans
      y i j ans = M L L M ( I , Q , P ^ i j , y i j rel = [ Relevant ] ) y_{ij}^{\text{ans}} = MLLM(I, Q, \hat{P}_{ij}, y_{ij}^{\text{rel}}=[\text{Relevant}]) yijans=MLLM(I,Q,P^ij,yijrel=[Relevant])

答案后处理

在一个文章中可能存在多个证据段落,导致生成多个候选答案。因此,后处理是必要的,以便得出一个最终的答案。

层级后处理:使用层级后处理来通过整合三个级别的分数对候选答案进行排序:

  • 条目级别:检索分数在方程 (3) 中测量查询图像 I I I 和候选维基百科条目之间的相似性,作为第 i i i 个检索到的条目的检索反思分数 S i r e t S_{i}^{ret} Siret
  • 段落级别:生成 [Relevant] 相关性反思标记的概率量化模型判断 P ^ i j \hat{P}_{ij} P^ij 为证据的信心,可以定义为相关性反思分数 S i j r e l S_{ij}^{rel} Sijrel
    S i j r e l = p θ ( y i j r e l = [ Relevant ] ∣ I , Q , P ^ i j ) S_{ij}^{rel} = p_{\theta}(y_{ij}^{rel}=[\text{Relevant}] \mid I, Q, \hat{P}_{ij}) Sijrel=pθ(yijrel=[Relevant]I,Q,P^ij)
    其中 θ \theta θ 表示 MLLM 的参数。
  • 答案级别:计算生成答案序列中每个标记的概率,并使用几何平均数来规范化序列长度变化的影响,得到答案信心分数 S i j a n s S_{ij}^{ans} Sijans
    S i j a n s = p θ ( y i j a n s ) n S_{ij}^{ans} = \sqrt[n]{p_{\theta}(y_{ij}^{ans})} Sijans=npθ(yijans)
    其中 n n n 表示序列长度。这个分数反映了模型基于检索内容和反思标记生成答案的信心。

最后,三个级别的分数综合考虑了答案生成过程中的每一个步骤,分别在条目、段落和答案级别评估候选答案的可靠性。通过计算这三个分数的乘积来整合它们的效果,作为排序候选答案的最终标准。模型输出基于此标准得分最高的答案。

实验

参考文献

mR2AG: Multimodal Retrieval-Reflection-Augmented Generation for Knowledge-Based VQA,https://arxiv.org/pdf/2411.15041


http://www.ppmy.cn/devtools/138229.html

相关文章

解决水库安全监测难题 长期无外接电源 低功耗设备智能化监测系统

解决水库安全监测难题 长期无外接电源 低功耗设备智能化监测系统 国内某水库安全监测项目需要监测点分散&#xff0c;且无外接供电。项目年限为4年&#xff0c;不允许使用太阳能电板。因此&#xff0c;我们需要设备具备低功耗且内置电池的功能。为了满足客户的要求&#xff0c;…

TiDB 架构

整体架构 与传统的单机数据库相比&#xff0c;TiDB 具有以下优势&#xff1a; 纯分布式架构&#xff0c;拥有良好的扩展性&#xff0c;支持弹性的扩缩容支持 SQL&#xff0c;对外暴露 MySQL 的网络协议&#xff0c;并兼容大多数 MySQL 的语法&#xff0c;在大多数场景下可以直…

k8s 1.28 聚合层部署信息记录

–requestheader-client-ca-file –requestheader-allowed-namesfront-proxy-client –requestheader-extra-headers-prefixX-Remote-Extra- –requestheader-group-headersX-Remote-Group –requestheader-username-headersX-Remote-User –proxy-client-cert-file –proxy-cl…

初识Hive

初识Hive 什么是 Hive&#xff1f; Hive 是基于 Hadoop 的数据仓库工具&#xff0c;用于处理存储在 Hadoop 上的结构化和半结构化数据。Hive 可以让用户通过 SQL 类似的语言&#xff08;HiveQL&#xff09;来查询和分析数据&#xff0c;而不需要了解复杂的 MapReduce 编程模型…

Tomcat(39)如何在Tomcat中配置SSL会话缓存?

在Tomcat中配置SSL会话缓存是优化SSL/TLS性能的一个重要步骤&#xff0c;尤其是在处理大量并发SSL连接时。通过会话缓存&#xff0c;可以避免重复的SSL握手过程&#xff0c;从而减少CPU使用和提高响应速度。以下是在Tomcat中配置SSL会话缓存的详细步骤。 1. 配置server.xml S…

2017年

B C A B B D B 度 16*23*44*32m 得出 m4(m为其他顶点) 顶点个数43411 折半查找的判定二叉树 左多 or左右一样 B B D

工业公辅车间数智化节能头部企业,蘑菇物联选择 TDengine 升级 AI 云智控

小T导读&#xff1a;在工业节能和智能化转型的浪潮中&#xff0c;蘑菇物联凭借其自研的灵知 AI 大模型走在行业前沿&#xff0c;为高能耗设备和公辅能源车间提供先进的 AI 解决方案。此次采访聚焦于蘑菇物联与 TDengine 的合作项目&#xff0c;通过 AI 云智控平台的建设&#x…

【微服务】Nacos

一、安装 1、官网地址&#xff1a;https://nacos.io/download/nacos-server/ 2、启动&#xff1a;找到bin目录下的startup.cmd双击启动&#xff0c;或者打开一个命令窗口输入&#xff1a; startup.cmd -m standalone双击启动后如下&#xff1a;可以访问控制台地址 访问后的…