当前位置: 首页 > article >正文

Llama 3.2 Vision Molmo:多模态开源生态系统基础

编者按: 视觉功能的融入对模型能力和推理方式的影响如何?当我们需要一个既能看懂图像、又能生成文本的 AI 助手时,是否只能依赖于 GPT-4V 这样的闭源解决方案?

我们今天为大家分享的这篇文章,作者的核心观点是:多模态语言模型领域正处于快速发展阶段,Llama 3.2 Vision 和 Molmo 等开源模型的出现为构建开放的多模态生态系统奠定了重要基础。

本文分享了来自 Meta 的 Llama 3.2 Vision 和 AI2 的 Molmo 模型的主要技术架构及其特点,同时比较了它们与众多多模态大模型的性能表现。文中介绍在多数视觉领域测试中, Molmo 表现更优,Llama 3.2 V 在 MMMU 等文本相关任务中表现更好,目前多模态模型的开源定义仍需进一步探讨和完善,但 Molmo 是目前最接近开源的视觉模型。同时还探究了视觉功能的融入对模型能力和推理方式的影响。

尽管目前在评估工具、数据集等方面还存在不足,但开源模型已经展现出与闭源模型相媲美的潜力,这预示着多模态 AI 领域即将迎来新的发展机遇。

作者 | Nathan Lambert

编译 | 岳扬

多模态语言模型领域相比纯语言模型,显得定义更为不明确、未解决的问题更多,同时也有更多空间让人们发挥创意。在语言模型领域,存在一系列明确的任务和行为,那些前沿实验室正试图通过例如 OpenAI o1 这样的创新训练方法,在最为棘手的推理问题上取得突破。然而,无论是前沿实验室(frontier labs)还是小型实验室(small labs),都在探索多模态模型的应用方向。AI如何“感知”和理解外部世界?拥有一系列强大的开放式模型(open models)对于该领域全面且公开、透明的发展至关重要——这是实现积极成果的两个关键条件(译者注:这两个条件应当是指全面、公开透明的发展)。

目前,多模态语言模型研究大多是通过 late-fusion 模型进行的,即基于语言主干网络(language backbone)和图像编码器(image encoder)(很可能也是 GPT-4V 所使用的方法)进行初始化。 这种对基础语言模型的微调方式虽然成本较高,但实际上计算成本并没有人们想象的那么难以承受。虽然存在多种模型架构[1],但由于 late-fusion 这一架构的稳定性和可预测性,成为了当下研究的热门选择。Molmo 和 Llama 3.2 V 就是通过这种方法训练而成的。

通过在多模态数据集上预训练的 early-fusion 模型来扩展数据的预期效果尚未显现。或许只有当这些模型在 GPT-5 级别的计算集群上进行测试时,它们的真正优势才会显现出来。

Late-fusion 的多模态方法激发了我们对如何将基础语言模型转型升级为多样化输出形式的深入探索。回顾过去几年我们在模型微调领域所采用的各种技术,从 RLHF 开始,到多模态 late-fusion 模型,再到像 o1 这样的创新模型,我们意识到模型还有大量表达潜能等待我们去发掘。一些基本问题仍然值得关注,比如“多模态训练会对 GSM8k 或 IFEval 这样的标准文本评测基准造成何种影响?”在对模型进行视觉方面的微调之后,那些主要用于评估模型知识水平的标准测试,例如 MMLU(Massive Multitask Language Understanding)测试,并没有发生较大变化。

这个领域对我来说同样新颖。本文的主要介绍对象是 Ai2 的一个重要模型版本——Molmo[2](开放式多模态语言模型),以及 Meta 的新模型 Llama 3.2 Vision。两者都推出了一套不同规模的四个模型。它们的性能表现相当,但 Molmo 在开放程度上更胜一筹。

Meta 发布了 Llama 3.2 的早期版本,包括 1B、3B、11B-Vision 和 90B-Vision[3],并在博客文章中透露了一些训练过程的细节[4](文章中还有相关链接)。11B 模型可能是基于 Llama 3 8B 模型的改进版,而 90B 模型则是在 Llama 3 70B 模型的基础上发展而来的。

Ai2 推出了基于 Qwen 2 72B 打造的 Molmo 72B,基于 Qwen 2 7B 的 Molmo-7B-D,即将问世的基于 OLMo 7B 版本的 Molmo-O,以及基于 OLMoE 并拥有 1B 活跃参数的 Molmo-E。

Molmo 系列模型采用 Apache 2.0 许可协议,而 Meta 模型则采用了 Llama 3.2 社区许可协议,该许可协议对模型的使用施加了一些较为严格的限制。

这不禁让人思考,人工智能领域的发展将何去何从。实际上,重头戏是 1B 和 3B 参数规模的 Llama 模型。小型语言模型的市场需求持续攀升,而且随着这些模型能力的不断提升,市场潜力还在不断扩大。我会反复探讨这一话题,但今天我们聚焦的是多模态。

01 Llama Vision:面向大众开发者的多模态模型

自 Llama 3 报告[5]发布以来,Meta 已经明确表示这些模型不久将面世(欧盟地区除外)。Meta 正在将它们应用到 Meta AI 以及旗下的增强现实(AR)/虚拟现实(VR)设备,例如 RayBan 智能眼镜。这些模型非常可靠,比封闭实验室的小型模型更胜一筹,后者的活跃参数通常估计在 60B 范围内。

关于这些模型的具体信息相对较少。若欧盟地区的用户尝试从 Meta AI 的官方页面下载模型,将会看到我在 HuggingFace 平台上看到的地理限制锁🔒。

其他用户可在 Meta AI 中获取这些模型。不过还有个更重要的消息,还有一些具有更丰富文档和更高开放性的模型可供使用(且不受地理限制)。

02 Molmo:与 Llama Vision 相当的一个(大部分)开源的模型

Molmo 是 Ai2 最新推出的开源语言模型[6],它附有一份初步的技术报告[7],用户可以免费体验模型 demo[8],而且即将公开相应的数据集。该项目的宗旨是构建开源语言模型,让任何人都有机会参与或理解构建现代 AI 模型的最关键部分。Molmo 模型是在 Qwen2 和 OLMo 的架构基础上,结合了 CLIP 编码器[9]进行训练的。但尽管有了这个数据开放的 CLIP 版本[10],研究团队并没有选择这个版本,而是放弃使用它,转而选择另一种版本,因为后者下游性能更卓越。请注意,Mistral 的 Pixtral 模型[11]和 Llama 模型都训练了自己的编码器。相关博客文章清晰地阐述了这些组成部分是如何协同工作的:

该模型架构采用了将语言模型与图像编码器结合的简洁而标准的设计。整个模型由四个主要部分组成: (1) 一个预处理器,将输入的单张图像转换成一系列不同尺度(multiscale)和不同裁剪方式(multi-crop)的图像集合; (2) 一个 ViT 图像编码器,独立地将这些图像转换成一系列视觉 tokens; (3) 一个连接器,负责将视觉 tokens 转换为适合语言模型输入的维度,并通过池化技术减少视觉 tokens 数量; (4) 一个仅包含解码器的 Transformer 大语言模型(LLM)。

论文中对该模型结构进行了详细的概述。

请留意,在这些模型的两个训练阶段中,所有的模型参数都会得到更新,而不是保持不变。此外,这些模型在训练过程中并未采用RLHF(基于人类反馈的强化学习)或偏好调优技术(preference tuning)。就我们针对视觉模型所设定的基准测试而言,Molmo 模型在性能上可与 GPT、Claude 以及 Gemini 模型相媲美。

相较于 Llama 3.2 V 模型,Molmo 在多数视觉领域的表现更胜一筹。以下是对各个基准测试得分情况的概述:

  • MMMU 测试中,Llama模型的得分高出6分;
  • MathVista 测试中,Molmo模型的得分领先1分;
  • ChatQA 测试中,Molmo模型的得分高出2分;
  • AI2D 测试中,Molmo模型的得分领先4分;
  • DocVQA 测试中,Molmo模型的得分高出3分;
  • 而在 VQAv2 测试中,两者的得分相近,或者 Molmo 稍占优势(Llama 3.2 的博客文章中对这一处的报告不够明确)。

以下是 Reddit 上的用户 LocalLlama[12] 对评估结果的独立复现。

依我看,这一点也基本符合各组织的追求目标,Llama 3.2 V 在文本方面表现更佳,或许优势还相当明显,但在图像方面,Molmo 则更胜一筹。特别是在识别图像中的指向性特征和读取时钟等任务上,Molmo 的表现尤为出色。

正如我将在本文后续部分进一步探讨的,基准测试并不能全面反映这些模型的实力。Molmo 对开源和科学界做出了巨大贡献,但探讨这些模型的行为特性同样重要。Molmo 具备一项独特的功能,是其同等级模型所不具备的 —— 那就是能够指向参考图片中的特定像素。 例如,我向 Molmo 询问了一张我的照片中自行车的位置[13]。

这种指向性功能是多模态模型在 web agents 应用中最显著的优点。一旦在模型训练时融入了足够的 web 数据,它就能迅速掌握浏览所有常规网页的能力。

当模型被要求对同一张图片进行描述时,它给出了一个相当详尽的描述[14],而且相当标准:

图片是一张 Zoom 通话的截屏,图片被黑色边框和白色内框所环绕。在右上角,有一个小窗口显示另一位参与者,他留着胡须,戴着眼镜和耳机,身穿一件黑色T恤。他坐在壁炉前,壁炉台上摆放着照片和书籍。主画面中的年轻男子有着短短的棕色头发和蓝色的眼睛,面带微笑,穿着一件点缀着白色圆点的蓝色衬衫。他坐在一个白色墙壁、带窗台窗户的房间里,背后是一个黑色的架子。架子上陈列着各式物品,墙上还挂着一个自行车轮胎。屋内还摆放了几幅装框的画作。屏幕顶端显示着文件名……

这种详细的描述得益于新数据集 PixMo 的直接影响,该数据集被用于训练 Molmo 模型。PixMo 的价值远远超出这些早期模型。这个数据集的创新之处在于,它让标注人员通过音频而非文字来对图片做出回应(类似于这篇关于局部化叙述的研究[15]),这使得他们的数据标注更加富有创造性和描述性。事实上,数据标注人员们非常喜欢这些任务(比如提供指向数据),以至于他们主动要求完成更多任务。激发数据标注人员的高度参与度是任何人工数据流程(human data pipeline)的目标,而这在我所见过的案例中是前所未有的。这个数据集有数百万个样例,涉及各种各样的图像。

我们所掌握的有关 Llama 3.2 V 的少数技术细节之一是,它是在 “6B(图像,文本)对” 上进行训练的,其中大部分可能是合成数据。而 Molmo 则是通过主要由人类产生的数百万份数据进行训练。

对于 OLMo 模型,包括 Molmo 在内,最关键的差异化因素和战略是其开放性(openness)。随着对“开源 AI”定义的讨论进行,像这些多模态模型(例如 CLIP)就是很好的案例,可以用来检验或“压力测试”我们对开源 AI 的理解。以下是对 Molmo 模型及其同类模型的开放性比较 —— Llama 3.2 V 的开放性与其他所有权重开源模型(open-weight models)相似。

这些模型都采用了没有开放数据的视觉编码器(主要是 OpenAI 的 CLIP),但也有开源的替代方案。公开图像数据风险较高(可能会涉及像 CSAM 这样的敏感问题),而且过程复杂。Molmo 模型是基于非开源模型进行微调的(并对参数进行了更新),根据开源倡议的最新定义,它们并不能算作开源。但如果 Molmo 只是公开数据的嵌入,而不是原始图像或文本数据,那么这种做法是否能让模型满足开源要求。这就引出了一个问题:当核心权重保持不变并且公开嵌入数据时,模型的开源性是否依旧符合标准?

这与根据其他语言模型(包括非公开模型)的合成输出训练出的模型可被视为开源的定义是一样的。在同时使用多个模型和数据流的领域,开源 AI 的定义还需要进一步的探讨。 对于仅使用文本进行预训练的模型,其“开源”定义原则上是合理的,只需要在一些细节上做出调整。然而,当涉及到微调和多模态时,情况变得更加复杂,因此还需要更多的讨论。

基于这些原因,我不会直接宣称“Molmo 是开源的”,但它无疑是目前最为接近开源的视觉模型。从定义上讲,生态系统中最开放的实验室在战略上与开源的差距微乎其微。

03 视觉功能的融入对模型能力和推理方式的影响

视觉功能的增加可以被视为一种微调问题,让我不禁要问,当前顶级模型在处理带图像和不带图像的相同提示词时会有怎样的表现。在幕后会将 query 路由给不同的模型。对于那些不是 early fusion 模型的,比如 GPT-4 和 Claude,除了推理成本之外,带有视觉元素几乎肯定会对性能有所影响 —— 否则,所有的模型都将是视觉模型。而对于像 GPT-4o 这样能够原生处理图像数据的模型,这一测试并不适用。

最直接的比较方法就是查看模型的标准版本和视觉版本对文本任务进行评估的差异。然而,在目前已经发布的模型中,进行这种直接比较的寥寥无几。即便有,也通常只限于部分评估。在撰写本文的过程中,我做了一个还算不错但并不完全详尽的调查,发现对比数据不足,因此没法用具体的数字支撑一个有说服力的论点。我的直觉是,在模型中加入视觉处理会使得模型在训练完成之后通过各种方法(如微调、优化等)实现的性能提升(我们在 ChatBotArena 等平台上观察到的)变得更加难以实现。

本实验旨在观察 GPT-4 和 Claude 3.5 Sonnet 在处理中等难度的推理或编程任务时,能否在有图像干扰的情况下正确地忽略非相关信息。实验结果显示,当明确指示模型忽略某些信息时,它们都能轻松做到,并且在后续询问图像相关问题时,仍能准确理解图像内容。图像的引入可能会导致模型更容易出现之前模型在处理类似任务时遇到的那些典型问题或错误。

我首先提出了一个我经常使用的简单推理问题:“月球能装下多少高尔夫球?”无论是附有图像还是无图像的 ChatGPT4 ,它们的推理过程几乎相同,得出的答案也非常接近。

另一方面,Claude 的视觉系统在这个例子中(见下图右侧)显得有些力不从心。Claude 给出的回应,更像是一种巧妙的回避,而不是像往常那样尝试解答这个常见的概念性问题。

这个任务难度似乎不够,于是我决定挑战一个编程问题,要求 LLM 阐述解题思路,然后为其编写一个 Python 脚本 —— 一个语言模型的基本训练脚本。首先未提供给 ChatGPT 相关图像,这也在情理之中,对于实际开发来说,其作用有限。

ChatGPT 对带有图像的提示词的回应不够详尽,也不够周全。

而 Claude 所给出的两次回答在内容上几乎无二致。

这个结论并不让人意外。模型的图像输入不那么成熟,因此我们看到了更多去年常见的典型问题或不足之处。

更值得关注的问题是未来这种情况会有显著改善,还是维持现状?像 o1 这样的特性获得的认可度,明显高于更优质的视觉输入。在 AI 模型领域,语言仍然是核心, 如果没有明确的任务来挑战视觉的极限 ,就很难证明视觉输入具有变革性。语言依然是这个生态系统的命脉。

对于 Molmo 而言,由于缺乏标准的文本指令调优和 RLHF(基于人类反馈的强化学习),在进行推理任务时,给人的感觉与以往熟悉的模型大相径庭。我们清楚,需要在所有 OLMo 模型上不断优化这类任务。

然而,Molmo 还有一些 Claude 和 ChatGPT 所不具备的特殊功能。我们期待这些功能能够证明其使用价值。如果想要体验这些模型,还有一个选择是 Vision Arena[16],但需要注意的是,它的某些功能接口出现了问题,而且其运行速度不及原生的本地应用程序。

04 多模态语言模型:正处于快速发展阶段的前端

Molmo 项目与我之前关注的纯文本模型项目的进展相比,最显著的区别在于多模态模型生态系统的成熟度较低。 尤其是在模型训练完成后的行为研究方面,我们缺少评估工具、数据集、开放的基准模型 —— 总之,一切都非常缺乏。我在今年年初就这个问题发表了自己的看法,特别是对于开放流程(open pipelines)中多模态 RLHF 的不明确性[17],遗憾的是,至今变化不大。这就导致了一个现象:某些可以说是“开源”的模型几乎能与像 GPT-4o 这样的闭源模型相媲美。

需要明确的是,虽然技术报告中对模型的基准测试讨论颇多,但与潜在的研究空间相比,这些讨论仅仅是触及了表面。许多评估工作是将传统语言模型的理念,如解释概念或识别内容,迁移到视觉领域。 而对于视觉模型来说,我们需要的是全新的基准测试方向。对于视觉语言模型,SWE-Bench 的对等基准测试会是什么?我推测可能会出现 SWE-Bench-Vision,但我们还需要开发更多无法与文本模型相对应的新测试类别。

在使用多模态模型时,我发现并不清楚应该用它们来做什么。这些模型在信息提取和加工处理等方面确实强大。我就经常用 Claude 或 ChatGPT 来复制表格内容或重新编写代码生成图表。除了前面提到的用途之外,还有很多功能,特别是场景描述(scene captioning),虽然展示出来的时候非常吸引人,让人印象深刻,但并不是我们日常生活中会经常使用到的功能。

曾经,视觉语言模型的效果并不理想。但现在,它们的性能得到了大大增强,更重要的是,它们现在可以被大规模公开使用,这无疑会促进其被更广泛地采用。而随着使用率的提升,就有了发展的反馈回路。以下是对这一论点的详细解释。

特别是,Meta 采取了将“开源 AI”的品牌与 Llama 模型挂钩的策略,这一行动提升了 Llama 模型在业界的可信度,从而促使更多开发者更加重视此类模型。

在未来的多模态语言模型中,唯一尚未解决但肯定会重要的应用是理解网页元素。 Web agents 成为了阻碍生成式 AI 产品大规模部署的最后几道关卡之一。 我们之所以尚未见到更多的 web agents,可能是因为当前的生态系统过于依赖封闭模型,而这些模型很难获得执行相关操作所需的权限(尤其是在企业级应用中)。随着技术能力的提升,我们有理由相信,权重开源模型(open-weight models)将会得到快速的推广和应用。推动多模态模型发展的原因似乎更多是市场、技术、行业趋势等方面的因素,而非仅仅是为了推广本地多模态模型 —— 这一点我们可以向 Adept 公司进行探讨。随着权重开源模型和近乎开源模型((nearly) open-source models)的增多,AI 领域的加速发展指日可待。

Thanks for reading!

Hope you have enjoyed and learned new things from this blog!

About the authors

Nathan Lambert

ML researcher making sense of AI research, products, and the uncertain technological future. PhD from Berkeley AI. Experience at Meta, DeepMind, HuggingFace.

END

本期互动内容 🍻

❓Molmo 模型的“像素级指向功能”给您带来了哪些启发?您认为这个功能在未来可能催生什么样的创新应用?

🔗文中链接🔗

[1]https://lilianweng.github.io/posts/2022-06-09-vlm

[2]https://molmo.allenai.org/blog

[3]https://huggingface.co/collections/meta-llama/llama-32-66f448ffc8c32f949b04c8cf

[4]https://ai.meta.com/blog/llama-3-2-connect-2024-vision-edge-mobile-devices/?utm_source=twitter&utm_medium=organic_social&utm_content=video&utm_campaign=llama32

[5]https://arxiv.org/abs/2407.21783

[6]https://www.interconnects.ai/p/olmo

[7]https://molmo.allenai.org/paper.pdf

[8]https://molmo.allenai.org/

[9]https://huggingface.co/openai/clip-vit-large-patch14-336

[10]https://github.com/mlfoundations/open_clip

[11]https://mistral.ai/news/pixtral-12b/

[12]https://www.reddit.com/r/LocalLLaMA/comments/1fpb4m3/molmo_models_outperform_llama_32_in_most_vision/

[13]https://molmo.allenai.org/share/963de0d0-9069-4a14-ad5a-8e4bc0863136

[14]https://molmo.allenai.org/chat/d1917496-1581-4ca5-8bda-1f4216d1ea1e

[15]https://arxiv.org/abs/1912.03098

[16]https://huggingface.co/spaces/WildVision/vision-arena

[17]https://www.interconnects.ai/i/140525309/multimodal-rlhf-questions-ideas-and-resources

原文链接:

https://www.interconnects.ai/p/molmo-and-llama-3-vision


http://www.kler.cn/a/375796.html

相关文章:

  • Linux内核与用户空间
  • python openai API token超限制
  • Java EasyExcel 导出报内存溢出如何解决
  • 【Flask】四、flask连接并操作数据库
  • 动态威胁场景下赋能企业安全,F5推出BIG-IP Next Web应用防火墙
  • Unity3D Shader实现法线贴图功能详解
  • 《双指针篇》---移动零
  • 「Mac畅玩鸿蒙与硬件20」鸿蒙UI组件篇10 - Canvas 组件自定义绘图
  • Spring Boot 与 Vue 共筑电影院选票新体验
  • Kong Gateway 指南
  • HTML 基础标签——链接标签 <a> 和 <iframe>
  • Javaweb 实验4 xml
  • 国内百家SRC平台
  • 20241102解决荣品PRO-RK3566开发板刷Rockchip原厂的Buildroot使用荣品的DTS出现
  • Vue基础知识——async指令、scope和样式穿透
  • Maven(20) 如何使用Maven进行版本管理?
  • npm入门教程18:npm发布npm包
  • CVPR2024:完全测试时域适应​​​​(Test-time Adaptation)的目标检测
  • [实战-12] flinkSql 时间属性
  • 互联网技术比游戏后端技术领先十年吗?
  • Android Pair
  • Yocto中的DISTRO和MACHINE的含义与机制
  • 使用 Java 实现从搜索引擎批量下载图片
  • 【STM32】内存管理
  • D55【python 接口自动化学习】- python基础之模块与标准库
  • solidity中的Error和Modifier详解