Virgo:类o1多模态大模型的初步探索

教育   2025-01-08 21:13   江苏  

© 作者|都一凡、刘子康、李依凡

机构|中国人民大学

研究方向|多模态大模型
来自:RUC AI Box
LLM所有细分方向群+ACL25/ICML25/NAACL25投稿群->LLM所有细分领域群、投稿群从这里进入!

近年来,类似于 OpenAI 的 o1 等慢思考(slow-thinking)推理系统在解决复杂推理任务方面展现了卓越的能力。目前,社区已经涌现出一系列通过慢思考增强推理能力的模型,如DeepSeek-R1,Kimi-k0-math,QwQ等。但是,当前工作大多聚焦于文本领域,很少有工作探索多模态类o1模型的技术路线,现有的多模态模型大多落后于QVQ,Kimi-k1等多模态慢思考系统。在此背景下,我们的团队致力于实现类似于 o1 的多模态推理系统——Virgo。本文是一个初步的探索,基于小组的前期工作STILL-2,介绍了我们在复现多模态 o1 类推理系统方面的研究进展。在本工作中,我们分别探索了使用文本长思维链数据,以及使用多模态长思维链数据对现有的多模态大模型进行微调。我们仅使用 5K条蒸馏的纯文本长思维链数据就能够取得不错的效果: 在多模态数学榜单MathVerse和MathVision 达到了 48.438.8 的评分,在OlympiadBench的非证明题上取得了29.9的分数


论文题目:Virgo: A Preliminary Exploration on Reproducing o1-like MLLM

论文链接:https://arxiv.org/pdf/2501.01904

开源地址:https://github.com/RUCAIBox/Virgo/tree/main

1. 背景

近期,慢思考推理系统——如OpenAI的o1、DeepSeek的R1以及Qwen的QwQ——在一系列基准测试中展现了显著的进步,尤其在那些传统大型语言模型(LLM)难以应对的复杂问题上表现突出。这些新型系统通过延长推理时间,深入分析,并调动更多计算资源来进行推演,从而生成了更为精细和复杂的推理路径。

然而,尽管在文本任务方面取得了令人瞩目的成就,这类研究对于多模态场景的关注却相对有限。目前,开发能够与o1和QVQ等商业模型性能相媲美的多模态大模型仍是一项挑战。本文聚焦于探索实现多模态慢思考推理模型的途径,旨在提供一种简易而高效的方法,力求接近现有商业系统的水平。与纯文本推理系统不同,多模态推理系统(多模态大模型,MLLM)不仅需要具备理解图像等非文本输入的视觉语义的能力,还需要拥有解决特定任务所需的逻辑推理能力。因此,慢思考在处理多模态数据时的具体运作机制尚不明确,这为该领域的研究带来了新的挑战和机遇。

2. 研究问题

我们认为慢思考是模型回答问题的一种模式,只需要少量数据就能激发。因此,我们主要探索两种简单直接的方式激发多模态模型慢思考的能力:从文本慢思考模型蒸馏数据、从多模态慢思考模型蒸馏数据。主要为了探索如下两个问题:

(1)慢思考是否能够通过在文本长思维链数据上微调进行跨模态迁移?

(2)如果慢思考能力可以跨模态迁移,那么从基于文本的长思维链数据中获得的能力是否能与从多模态模型中蒸馏的能力相媲美?

2.1. 通过文本指令进行跨模态迁移

我们基于前期工作STILL-2,利用从DeepSeek-R1-Lite-Preview和QwQ-32B-preview蒸馏的数据,对多模态模型进行微调,使其能够在回答问题之前,生成详细的内部推理步骤。这些思维过程包括规划、分而治之、自我修正、总结和回溯等复杂的推理行为,我们认为这些能力可以从文本直接迁移到多模态领域。我们一共收集了5K条math、science、code、puzzle的文本数据,对Qwen2-VL-72B-Instruct进行微调。

由于我们的根本目标不是在榜单上刷到SOTA,而是探索慢思考能力跨模态迁移的有效性,因此我们只使用了最直接的模仿学习的方法,而没有采用更高级的训练算法(例如DPO和RL)。


2.2. 通过多模态指令进行蒸馏

为了比较通过文本迁移的慢思考能力和直接蒸馏的慢思考能力哪个更优,我们进一步蒸馏了多模态数据,主要通过两种方式:(1)直接蒸馏QVQ;(2)基于2.1中得到的模型进行自蒸馏。

在数据方面,我们选择了一些复杂推理的VQA数据集,经过蒸馏的数据分布如下:


为了能够得到有效答案的中间推理过程,我们让模型多次随机采样,将最终答案解析出来,选择能够得到正确答案的推理路径作为训练数据。

3. 实验设计

3.1. 实验设置

我们在四个具有挑战性的视觉推理数据集上进行了广泛的实验:
  1. MathVerse:包含了2612个不同来源的多学科数学问题。
  2. MathVision:包含了3040道来自于已有数学竞赛中的高难度题目。
  3. OlympiadBench:包含了8476道多语的奥林匹克级别的数学与物理问题。
  4. MMMU: 包含了来源于30个不同学科,183个不同子领域的11500道多模态问题
我们选择Qwen2-VL-72B-Instruct作为我们的基础模型。我们将我们的模型Virgo-72B与已有的慢思考模型(OpenAI o1与QVQ-72B-preview)和通用模型(GPT-4o与Claude-3.5-Sonnet)进行了比较。

3.2. 实验结果


1. 首先,我们发现慢思考推理能力可以通过纯文本推理数据有效地迁移。仅使用5K条文本长思考指令进行微调后,Virgo就取得优异的多模态推理性能。例如,我们的模型在MathVision上达到了38.4%的准确率,在OlympiadBench上达到了29.3%的准确率。我们观察到模型在MMMU上并未出现显著的提升。为了进一步分析,我们根据MMMU的样本难度标注进行了细粒度的检查。我们发现相较于QVQ,Virgo的劣势主要集中在简单和中等难度的样本上。对于复杂样本,我们取得了比QVQ更好的性能(54.70 vs 48.62)。我们认为这是由于并非所有视觉问题都需要复杂的推理过程,强制执行更长的思考过程可能会导致MLLMs性能下降。


2. 其次,通过蒸馏或者自蒸馏得到的合成视觉指令并没有显著优于文本推理指令。我们发现尽管采用了质量控制的手段,许多用于蒸馏的问题仍然不够复杂。开发高质量、复杂的视觉指令仍然是未来探索的一个具有挑战性的方向。

3. 此外,我们对较小的MLLMs(Qwen2-VL-7B-Instruct)进行了实验。我们发现在小模型上,在不同推理指令数据集训练上得到的模型性能趋势与较大模型(Qwen2-VL-72B-Instruct)有所不同。值得注意的是,在合成视觉数据上训练的Virgo-7B在MathVerse和MMMU上的表现优于在纯文本数据上训练的模型,这表明视觉长思考指令对小型MLLM可能更有效。另一个差异是,在使用慢思考推理指令进行微调后,模型在MMMU上的性能显著下降。我们推测较小的模型可能不太能够学习到慢思考的推理过程,特别是在处理不需要复杂推理的问题时,但引入视觉指令有助于缓解这种性能下降。


3.3. 进一步分析


在展示整体性能分析之后,我们进一步探讨了长推理指令数据对视觉推理的具体影响。以下是主要研究发现:

3.3.1 关于评测任务

更复杂的任务从长链推理中获益更多。我们首先考察了我们的方法在不同难度任务上的模型表现。此前研究表明,模型生成的回答平均长度与问题的复杂性之间存在相关性:更复杂的问题往往通常需要更长的回答。基于这一发现,我们首先统计了我们模型在不同评估基准上生成的回答平均长度,结果如图二所示。结果表明,回答长度较长的基准通常更具挑战性,例如在模型在平均回复最长的OlympiadBench上的准确率也最低。值得注意的是,我们的方法在这些更困难的基准上展现了显著的提升,分别在OlympiadBench和MathVision上实现了18.1%和12.4%的绝对提升。相反,在相对较简单,模型回复平均长度最短的MMMU上,我们观察到的性能提升较为有限。

    3.3.2 关于训练数据的长度

    更长的推理过程不一定带来更好的性能提升。我们比较了模型在使用不同难度的文本指令下的微调表现。我们通过指令长度来区分文本指令难度。具体来说,我们分别使用指令长度范围为(0, 2000]、(2000, 4000]和(4000, 8000]的长推理指令对模型进行训练,结果如表4所示。结果表明,将训练数据中的推理长度限制从2000个词元增加到4000个词元,在所有基准上都带来了性能提升。然而,将推理长度限制进一步增加到8000个词元会导致大多数基准的性能下降。为了进一步分析长指令带来的性能下降,我们分析了每个长度范围的数据组成,观察到在(4000, 8000]范围内,指令数据主要由数学相关指令组成。这些数学问题可能导致模型思维链长度超出实际视觉推理任务所需的长度:即便是平均回复最长的OlympiadBench,其平均长度也低于4000。



    3.3.3 关于文本指令的数量
    扩展文本指令会带来性能提升。我们进一步研究了扩展文本指令对推理性能的影响。结果如表5所示,增加文本指令的数量通常会在大多数基准测试中带来性能提升。具体而言,将指令样本从1K增加到5K使7B和72B模型在MathVision上的平均性能提高了7.7%,而在OlympiadBench上的性能提高了1.8%。尽管扩展文本指令通常是有效的,但其影响在不同任务之间有所不同。例如对于MMMU,文本指令最初会降低模型的表现,但随着指令数量的增加,模型性能逐渐恢复。

    3.3.4 关于蒸馏视觉指令的难度

    视觉指令的难度对模型性能的影响有限。此前我们从多个领域选择了视觉问题,并通过蒸馏QVQ和Virgo-72B生成了视觉长思考指令。我们的目标是探讨具有不同难度级别的视觉指令对推理性能的影响。具体而言,我们首先使用未经过长思维链微调的Qwen2-VL-72B-Instruct,通过贪心解码生成视觉指令的回答。我们从中排除了Qwen2-VL自身就能够正确回答的问题,因为它们相对容易。对于剩余的问题,Virgo-72B执行多次rollout,对每个问题生成五个候选答案。我们根据正确回答的比例定于了两种难度级别:Medium(有4-5个正确回答)和Hard(有2-3个正确回答)。作为对比,我们还设置了Random级别,即不管模型是否能正确作答,完全随机地抽取问题,并基于这些问题合成回复。之后我们将5K文本长思考指令与三种难度的视觉指令结合,用于微调Qwen2-VL-72B-Instruct,结果如表6所示。结果表明,不同难度级别的视觉指令并没有导致显著性能差异。这表明,需要更先进的策略来合成视觉长思考指令,以增强多模态慢思考推理能力。


    3.4. 示例分析

    我们从Virgo的生成结果中挑选了较有代表性的例子,分析了慢思考推理为模型带来的提升以及模型存在的不足。
    文本长思维链指令微调能够诱导视觉慢思考推理能力。下图中的示例要求模型对图中的函数进行积分计算。Qwen2-VL-72B-Instruct分别直接计算每个半圆的半径和中心,但在确定其中心时出错。相比之下,Virgo首先详细描述图像(用橙色标出),然后对问题进行深入推理,最终得出正确答案。此外,Virgo能够反思其推理过程,并尝试验证其解决方案(用蓝色标出)。这一案例表明,长思考训练能够提升模型的复杂推理能力。

    对感知结果的反思的缺失可能导致推理错误。通过分析多个失败案例,我们发现有时 Virgo未能反思其感知结果,这可能导致整个推理过程的失败。下图中展示了一个典型案例,其中 Virgo 错误地感知了 9 月份拥有“高中学历”的失业人数(用红色标出)。导致其得出错误结论,认为 8 月和 9 月都是满足问题要求的答案。尽管 Virgo 意识到结果的不合理性并开始反思其推理过程(用蓝色标出),但它并未质疑其感知结果的正确性。因此,错误的结论被反复生成,最终导致错误答案。这一案例表明,从仅文本指令迁移而来的慢思考多模态大模型在感知反思能力上可能存在局限性。未来的模型设计应注重同时具备对感知结果和推理过程进行反思的能力。

    4. 研究意义

    我们的研究表明,慢思考推理能力可以通过文本指令迁移到复杂多模态任务上。通过文本指令上的训练,模型可以有效地生成长思维链以解决多模态问题,在各个任务上取得了提升。
    此外,我们同时发现了这种基于文本指令的慢思考能力迁移是比直接蒸馏多模态指令更加有效的,为未来在不同多模态领域任务上的推理能力增强提供了可行的途径。

    5.总结
    在本文中,我们提出了一种简单而有效的方法来实现慢思考推理系统。我们的一个核心发现是,通过简单地使用文本慢思考数据对MLLM进行微调,一个训练好的MLLM可以在多模态任务上显现出强大的慢思考能力。我们在四个具有挑战性的多模态推理基准测试上进行了广泛的实验,结果表明,与业界推理系统相比,我们的方法取得了极具竞争力的性能。除此之外,我们还研究了不同因素对这种迁移的慢思考能力的影响,如文本数据的数据量与长度分布。
    我们认识到,当前的研究仅是构建多模态慢思考系统旅程中的第一步。未来的工作将致力于拓展更多样化的、更具挑战性的多模态问题集,并探索更加系统化和科学的方法来进一步强化MLLM的推理能力。


    备注:昵称-学校/公司-方向/会议(eg.ACL),进入技术/投稿群


    id:DLNLPer,记得备注呦

    深度学习自然语言处理
    一个热衷于深度学习与NLP前沿技术的平台,期待在知识的殿堂与你相遇~
     最新文章