Multimodal Document Retrieval Challenge Track | mdr-track1
大多数检索增强生成(RAG)模型是根据用户查询检索相关文本文档而设计的。然而,在现实场景中,用户常常需要检索多模态文档,包括文本、图像、表格和图表。这需要一个更复杂的检索系统,能够处理多模态信息,并根据用户查询提供相关文档或段落。
多模态文档检索任务专注于对多模态文档或网页中的段落进行建模,利用文本和多模态信息进行嵌入建模。最终目标是根据用户的文本或多模态查询检索相关的多模态文档或段落。比赛地址在:https://www.kaggle.com/competitions/multimodal-document-retrieval-challenge
旨在评估检索系统识别文档中视觉丰富信息的能力。MMDocIR评估集包含313篇长文档,平均每篇65.1页,涵盖多种领域:研究报告、行政文件、工业文档、教程、研讨会资料、学术论文、宣传册、财务报告、指南、政府文件、法律和新闻文章。不同领域的多模态信息分布各有特点。
子任务:文本→多模态文档页面检索 (Text→Multimodal Document Page Retrieval),根据用户查询识别文档中最具相关性的页面。每个查询的检索范围限于给定文档的所有页面。
数据集上使用 MMDocIR 评估集进行评估:https://huggingface.co/MMDocIR,https://arxiv.org/abs/2501.08828
旨在评估检索系统在开放领域场景中检索视觉丰富信息的能力,包括维基百科网页,涉及多种主题、形式(图形、表格、文本)和语言。原始的M2KR数据集仅包含维基百科页面中提取的文本,扩展数据集,增加了维基百科页面的截图。
子任务包括:
数据地址:https://huggingface.co/datasets/Jingbiao/M2KR-Challenge
获奖方案在:https://erel-mir.github.io/challenge/results/,可以分析下他们都用了什么方案?
该方案采用的是一个微调的思路,比较复杂,在于微调GME-7B模型,并使用dino-v2作为骨干网络。
首先,使用 cv_tools dino 识别视觉关键点,会得到一个视觉关键点的结果。
然后,训练五个不同参数的专家模型,对两个任务进行投票,这五个专家模型共同构成一个统一的模型。将专家的投票结果与视觉关键点的结果合并,得到最终结果。这块没有看的太清楚,后续深入后再读读看。
训练代码在:https://kkgithub.com/hbhalpha/MDR/blob/main/fine-tune/ft.py
地址在:https://github.com/hbhalpha/MDR
思路的核心特点就是选用不同的embedding模型。
对于M2KR任务数据集,使用GME-Qwen2VL (GME: General Multimodal Embedding, https://www.modelscope.cn/models/iic/gme-Qwen2-VL-2B-Instruct),该模型基于Qwen2-VL多模态大模型(MLLMs)训练,可以进行统一的多模态表示,处理单一模态和组合模态的输入,生成统一的向量表示,这使得各种检索场景(Any2Any搜索)成为可能,支持如文本检索、从文本检索图像以及图像之间的检索等任务。
对于MMDOCIR数据集,使用colqwen2 (https://huggingface.co/tsystems/colqwen2-7b-v1.0),该模型在ColPali的基础上进行了进一步优化,采用了Qwen2-VL-2B作为视觉语言模型(VLM),旨在高效地从文档的视觉特征中提取信息。与ColPali类似,ColQwen2扩展了Qwen2-VL-2B,能够生成类似ColBERT风格的多向量表示,专门用于处理文本和图像的复杂场景。在实际使用中,ColQwen2的多向量检索策略使得它能够更加精准地理解文档内容,尤其是在处理视觉文档时展现了强大的检索能力(这块可以进一步看 https://zhuanlan.zhihu.com/p/875074649)。
最后,使用qwen2.5-vl-72B-AWQ (https://www.modelscope.cn/models/Qwen/Qwen2.5-VL-72B-Instruct-AWQ/)进行重排。在排行榜上,得到了65.5分(带重排),在没有重排的情况下,得到了64.0分。
具体的,实现地址在:https://kkgithub.com/i2vec/MMDocRetrievalChallenge/blob/main/run.sh
对于Task1_MMDocIR任务,路线为:Colqwen2-7B文本到图像检索 + GME布局级文本到图像检索 + GME文本到文本检索 + 对colqwen结果进行重排 + 多路线召回合并。
对于Task2_M2KR任务,路线为:GME图像到文本检索 + GME布局级图像到图像检索 + 多路线召回合并 + 使用QwenVL作为结果重排器。
地址在:https://github.com/i2vec/MMDocRetrievalChallenge
对于Task1_MMDocIR任务,使用的方案为:
思路很简单:基于图像和VLM文本,使用基于ColQwen的模型生成每一页的图像和文本嵌入向量,并将这些嵌入向量进行融合。根据文本查询(即问题)找到查询嵌入向量。利用延迟交互机制,计算页面嵌入向量与查询嵌入向量之间的相似度分数。最终检索出相似度最高的前5页。
对于Task2_M2KR任务,根据查询文件名从维基百科文章中抓取图像(或者你可以选择使用传统的OpenCV技术从维基百科截图中提取图像:查看extract_images.py),使用基于Transformer的视觉模型(ColQwen2)生成密集嵌入向量,使用FAISS(IndexFlatL2)对段落图像进行索引;每个查询检索出最相关的top-k图像。
地址在:https://github.com/bargav25/MultiModal_InformationRetrieval
1、https://www.kaggle.com/competitions/multimodal-document-retrieval-challenge