痛点分析
对于知识性VQA,目前方法有下面的问题:
- 纯mllm的知识局限性。目前llm依赖预训练知识,面对一些长尾事实(比如小众的实体希姐)或者百科知识(比如一些历史事件的时间)时,要么会生成错误答案。要么会直接拒绝回答,这本质是训练数据中缺乏这类知识或者这类知识占总训练预料比例太小了
- 传统rag通过检索非结构化文档来辅助llm,存在噪音多,无结构的问题。
- 目前主流研究基本用文本KG来优化RAG,但VQA是视觉结合语言的双模态任务,仅依赖文本kg会丢失图像中的实体以及关系信息。
论文提出的核心方法
大致逻辑是先将维基百科文档中的非结构话知识转化为多模态知识图谱,再提出一个新的多模态检索器来高效检索定位问题所需要的相关知识,来辅助mllm回答问题。整体框架分为 多模态知识图谱构建 和 两阶段检索推理 两大模块,最终还会优化QM-Retriever来提升检索性能。
多模态知识图谱(mKG)构建
这一模块目标是将包含文本+图像的非结构化文档,转化为实体-关系对齐的结构化mKG,分为3步执行,该步骤在离线阶段执行:
(1)文本图提取(Textual Graph Extraction)
用MLLM从文本段落中提取 实体-关系,在提取实体时,会包含实体名称以及对应的实体描述,在提取关系时,会去连接头尾实体,同时包含关系描述,最终可以得到实体集以及关系集,生成文本子图。
(2)视觉图提取(Visual Graph Extraction)
用场景图生成模型 从图像中提取视觉实体和关系,弥补文本图的视觉信息缺失。视觉实体,主要包含类别标签+边界框;视觉关系主要描述实体间的空间/逻辑关联;
(3)多模态图融合(Multimodal Graph Generation)
核心是解决文本实体/关系与视觉实体/关系的对齐问题,论文提出用MLLM作为视觉-文本匹配器,通过精心设计的Prompt实现细粒度对齐:
● 提示设计:输入图像+文本图实体/关系+视觉图实体/关系,指导MLLM输出匹配对
● 对齐结果:将视觉实体的边界框作为属性附加到文本实体上,将视觉关系的联合边界框附加到文本关系上,最终生成单文档的mKG子图;
● 聚合:同一文档的所有子图合并(去重相同实体/关系),形成该文档的完整mKG。
双阶段检索范式(Dual-stage Retrieval)
检索阶段主要分为粗粒度文档检索和细粒度图检索两步:
(1)粗粒度:基于向量的文档召回(Embedding-based Retrieval)
输入用户的图像-问题对,用QM-Retriever将图像-问题对和文档(文本+图像)分别编码为向量,通过余弦相似度计算匹配度,召回Top-Kd个最相关的文档;这样可以快速缩小检索范围,从百万级文档筛选到个位数级别候选文档,提升效率。
(2)细粒度:基于图的实体/关系检索(Graph-based Retrieval)
主要分为下面三步:
- 构建查询专属mKG——将粗粒度召回的Top-Kd个文档的mKG子图合并,形成临时的、小范围的mKG,避免跨文档知识冲突;
- 匹配核心实体/关系——计算图像-问题对与图中每个实体/关系的向量相似度,召回Top-Kg个核心知识,形成初始子图;
- 图扩展——通过广度优先搜索 ,将初始子图的1-hop邻居,也就是直接关联的实体/关系纳入,补充遗漏的关键知识,最终形成完整的查询相关知识子图;
最终输出:将相关知识子图(结构化知识)+ 对应文档片段(上下文细节)作为辅助信息,输入MLLM。
QM-Retriever
该检索器基于 Q-Former ,额外加入了一个视觉编码器Fv 和一个问题转换器Fq。问题转换器会将 疑问句 重构为 陈述句,以解决与 证据文本 的语法不匹配问题(这种不匹配原本会降低检索精度)。给定图像 - 问题对(Iq,q),QM-Retriever会将其编码为固定维度的嵌入向量Zq,公式如下:
其中 Z 是 Q-Former 引入的一组可学习 tokens。生成的嵌入向量Zq可用于基于向量的检索。Fq由两个线性投影层构成,中间用 ReLU 激活函数分隔。该转换在隐空间中进行:Fq先将原始问题的词嵌入重构为 陈述句表示,再将其输入 Q-Former 的 BERT 编码器。
传统检索器比如CLIP, 仅关注语义相似,但VQA需要问题相关性,也就是说要求检索到的信息能直接用于回答问题,因此QM-Retriever做了下面两点优化:
(1)疑问句转陈述句(Question Reformulation)
将用户的疑问句(如这座体育场何时翻新?)转化为陈述句(如这座体育场的翻新时间),避免语法不匹配导致的检索偏差,这转化在向量空间完成,不依赖显式文本改写。
(2)双目标优化
● 目标1:问题-证据对齐——采用跟CLIP模型中对比学习的思想,让问题向量与相关证据向量更相似,与无关证据向量更疏远;
● 目标2:陈述-疑问一致性(KL散度)——让疑问句向量与对应陈述句向量的分布尽可能接近,用KL散度优化;我们利用 LLM 将原始问题 q 转换为强调场景上下文的陈述句 Zs。通过 QM-Retriever 对(Iq, s)编码,得到陈述句表示Zs 作为参考。然后,计算 KL 散度,以最小化疑问句表示Zq 与陈述句表示Zs 的分布差异。最终的总目标函数被定义为一个由超参数α控制的两个目标的线性组合
四、 总结与思考
mKG-RAG 通过引入多模态知识图谱,有效地解决了 VQA 中跨模态信息对齐难、非结构化文档噪音大的问题。
个人认为最值得借鉴的点:
- 隐式转换:QM-Retriever 中将疑问句隐式转换为陈述句来做检索对齐,这种在 Latent Space 做 Prompt Engineering 的思路非常优雅。
- 图谱的融合策略:利用 MLLM 作为“胶水”来粘合视觉图和文本图,为后续的多模态 RAG 落地提供了一个可行的 Pipeline。