跳转至

M3KG-RAG: Multi-hop Multimodal Knowledge Graph-enhanced Retrieval-Augmented Generation

会议: CVPR 2026
arXiv: 2512.20136
代码: 项目页面
领域: 图学习
关键词: 多模态知识图谱, 检索增强生成, 音视觉推理, 图剪枝, 多跳推理

一句话总结

提出M3KG-RAG,通过轻量多Agent流水线构建多跳多模态知识图谱(M3KG),并设计GRASP机制进行实体定位和选择性剪枝,仅保留查询相关且有助回答的知识,大幅提升MLLM的音视觉推理能力。

研究背景与动机

现有多模态RAG存在两大瓶颈:1)现有MMKG主要覆盖图文模态,音视觉覆盖有限,且大多为单跳图谱,缺乏时间/因果依赖的多跳连接;2)基于共享嵌入空间的相似度检索存在模态鸿沟,无法过滤离题或冗余知识,即使检索到相关上下文也可能注入噪声。

M3KG-RAG的核心创新在于:构建跨音视觉的多跳知识图谱 + 按模态检索绕过模态鸿沟 + GRASP精准保留回答有用的子图。

方法详解

整体框架

M3KG-RAG 想让 MLLM 在回答音视觉问题时用上结构化的外部知识,但又不被无关知识带偏。它先离线用一条多 Agent 流水线把原始的音视频-文本语料压成一张多跳、跨模态的知识图谱 M3KG(音、视、文三模态实体之间带时间/因果连接的三元组);在线推理时,对一个查询先按模态分别检索候选子图(绕开跨模态嵌入的鸿沟),再用 GRASP 把候选三元组「定位 + 剪枝」到只剩查询相关且真正有助回答的那几条,最后把这张精炼子图喂给 MLLM 生成答案。三块设计分别针对「图谱怎么建」「子图怎么找」「噪声怎么去」。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400, 'subGraphTitleMargin': {'top': 8, 'bottom': 16}}}}%%
flowchart TD
    subgraph BUILD["多 Agent M3KG 构建流水线(离线)"]
        direction TB
        C1["原始音视频-文本语料"] --> C2["Rewriter 补全描述 → Extractor 抽三元组"]
        C2 --> C3["Normalizer 归一 → Searcher 查描述<br/>→ Selector 选 → Refiner 改写"]
        C3 -->|"Inspector 自反思:有幻觉则打回"| C2
    end
    BUILD --> KG["多跳跨模态知识图谱 M3KG<br/>音/视/文三模态三元组"]
    Q["音视觉查询"] --> RET["按模态检索<br/>InternVL2 查视觉项 / CLAP 查音频项<br/>top-k 后按距离阈值 τ 过滤"]
    KG --> RET
    subgraph GRASP["GRASP 定位 + 剪枝"]
        direction TB
        GRD["跨模态定位<br/>GroundingDINO/TAG 验实体真出现<br/>存在度低于 η 则剪掉"] --> PRN["选择性剪枝<br/>轻量 LLM 二值掩码:对回答无用则剪掉"]
    end
    RET --> GRD
    PRN --> GEN["精炼子图注入 MLLM 生成答案"]

关键设计

1. 多 Agent M3KG 构建流水线:用轻量 LLM 把语料拧成多跳跨模态图

现有 MMKG 大多只覆盖图文、且是单跳的,缺少音视觉之间的时间/因果连接。M3KG-RAG 把建图拆成一串各司其职的 Agent:Rewriter 先把原始 caption 补成信息更全的描述,Extractor 从中抽出 (头实体, 关系, 尾实体) 三元组,Normalizer 把指向同一对象的实体名归一,Searcher 拿归一后的实体去知识库查权威描述,Selector 从查回的多条描述里挑出和当前上下文最契合的一条,Refiner 再把这条描述改写得贴合原始语料的表述风格。整条链路只需 Qwen3-8B 级别的轻量 LLM 就能跑,单张 H100 即可完成全库构建。关键是末端挂了一个 Inspector 做自反思循环:它检查刚生成的描述是否与原内容一致,若发现幻觉或偏离就打回上游重做,从而把「轻量 LLM 容易编造描述」这个隐患压住,保证图谱质量。

2. 按模态检索(Modality-Wise Retrieval):不在共享空间里硬配,先各管各的模态

直接把所有模态投到一个共享嵌入空间再算相似度,会撞上模态鸿沟——一个视频查询去匹配文本知识库经常匹配失败。这里改成按模态各自检索:视频查询用 InternVL2 在图谱的视觉项里找最近邻,音频查询用 CLAP 在音频项里找最近邻(在 FAISS 索引上取 top-\(k\) 最近邻后,再用距离阈值 \(\tau\) 滤掉离题项),命中具体的模态节点后,再顺着图的连接「提升」到包含它的三元组层级,得到候选子图。这样每次相似度比较都发生在同模态内部,避开了跨模态对齐的失真,召回的候选子图也更靠谱。

3. GRASP(Grounded Retrieval And Selective Pruning):先定位实体真在不在,再剪掉对回答没用的

相似度检索只能抓「大致相关」的语义,检索回来的三元组里常混着离题或冗余的知识,注进 prompt 反而是噪声。GRASP 用两步细粒度过滤收紧候选集。第一步是跨模态定位:对视觉相关的三元组,用 GroundingDINO 在均匀采样的若干视频帧上给出每个实体的检测置信度,取跨帧最大值作为该实体的视觉存在度,再把三元组头、尾实体的存在度相加,低于阈值 \(\eta_v\) 的三元组剪掉;对音频相关的三元组,用 TAG 模型把三元组转成自然句、打分它在查询音频里的存在度,低于 \(\eta_a\) 的剪掉(音视频两路都有时则按融合得分比 \(\eta_{av}\))。定位的目的是确认「这条知识说的东西确实在这段音视频里」,把检索阶段的假阳性挡掉。第二步是选择性剪枝:把通过定位的三元组连同查询一起交给一个轻量 LLM,让它对每条三元组输出一个二值掩码,判断「这条对回答当前问题有没有用」,没用的直接剪掉。两步合起来的效果是:检索负责「相关」,定位负责「真实存在」,剪枝负责「有用」,逐层把宽泛的候选压到一小撮高质量证据。

一个完整示例:一个音视频问题怎么走完检索到生成

设查询是「视频里那只在叫的动物是什么,它发出的是什么声音」,对应一段含画面和音轨的素材。

  1. 按模态检索:视频帧经 InternVL2 在 M3KG 的视觉项里命中「狗」这个视觉节点,音轨经 CLAP 在音频项里命中「吠叫」音频节点;顺着图连接提升到三元组层级,召回约 20 条候选三元组(含 (狗, 发出, 吠叫)(狗, 属于, 哺乳动物),也混进了 (汽车, 位于, 背景)(行人, 经过, 街道) 这类离题项)。
  2. GRASP 定位:GroundingDINO 在视频帧里检测各实体——「狗」的检测置信度高、视觉存在度超过 \(\eta_v\) 保留,「行人」实际并未在帧中清晰出现、存在度不达标被剔除;TAG 模型确认音频确为吠叫,与「汽车引擎声」类三元组不匹配,候选缩到约 8 条。
  3. GRASP 剪枝:轻量 LLM 对这 8 条逐一打二值掩码,留下 (狗, 发出, 吠叫)(吠叫, 是一种, 动物叫声) 这几条直接支撑答案的,剪掉 (狗, 属于, 哺乳动物) 这类虽真实但对本问题冗余的,最终剩 3 条。
  4. 图增强生成:这 3 条精炼三元组拼成子图随 prompt 注入 MLLM,模型据此答出「是狗,发出的是吠叫声」。整条链路把 20 → 8 → 3 逐步收紧,喂给 MLLM 的全是相关、真实、有用的证据。

损失函数 / 训练策略

全程无模型训练,是纯 pipeline 方案。M3KG 在各评估基准的训练集上离线构建,单张 H100 GPU 即可完成;在线推理只做检索、定位、剪枝与生成,不更新任何权重。需要按数据集调的只有按模态检索的距离阈值 \(\tau\) 与 GRASP 的定位阈值 \(\eta\)

实验关键数据

主实验(Model-as-Judge评分)

MLLM 方法 Audio QA Video QA AV QA
Qwen2.5-Omni None 49.00 42.21 32.42
Qwen2.5-Omni VAT-KG 51.30 43.50 35.44
Qwen2.5-Omni M3KG-RAG 60.77 44.35 44.67

Win-rate对比(vs VAT-KG)

基准 VAT-KG胜率 M3KG-RAG胜率
AudioCaps-QA 25.6% 74.4%
VCGPT 47.6% 52.4%
VALOR 41.8% 58.2%

关键发现

  • 文本KG+简单RAG经常导致性能下降(Wikidata在多个设置上比无检索更差)
  • 单跳MMKG(VAT-KG)改进有限,多跳结构关键
  • 即使GPT-4o也能从M3KG-RAG获益,说明外部知识对大模型仍有价值
  • GRASP的每个组件(定位+剪枝)都贡献了性能提升

亮点与洞察

  • 端到端的多模态知识图谱构建和检索框架,覆盖音视觉文本三模态
  • GRASP的"定位→剪枝"两步过滤设计直觉简洁且有效
  • 仅用轻量级Qwen3-8B即可构建高质量知识图谱,成本可控

局限与展望

  • 按模态检索的阈值τ和GRASP阈值η需要按数据集手动调整
  • 知识图谱构建依赖训练集,泛化到新领域需重新构建
  • GRASP的定位模型(GroundingDINO/TAG)本身可能有误差
  • 仅评估了开放式QA,未覆盖其他多模态任务

相关工作与启发

  • vs VAT-KG: 单跳概念图+简单检索;M3KG-RAG多跳图+GRASP精准过滤
  • vs GraphRAG/LightRAG: 纯文本图RAG;M3KG-RAG扩展到音视觉多模态

评分

  • 新颖性: ⭐⭐⭐⭐ 多跳多模态知识图谱+GRASP的组合新颖
  • 实验充分度: ⭐⭐⭐⭐ 三个基准、多个MLLM、win-rate和MJ双评估
  • 写作质量: ⭐⭐⭐⭐ 框架图清晰,流水线步骤详细
  • 价值: ⭐⭐⭐⭐ 为多模态RAG提供了实用的知识图谱增强方案