
Molmo 和 PixMo: 开放权重和开放数据的最先进的多模态大模型
当今最先进的多模态模型仍然是专有的。最强大的开放权重模型严重依赖来自专有 VLM 的合成数据以实现良好的性能,有效地将这些封闭模型提炼成开放模型。因此,社区仍然缺乏关于如何从头开始构建高性能 VLM 的基础知识。我们提出了 Molmo,一个新的 VLM 家族,在开放性方面处于其类别中的最先进水平。我们的关键创新是使用基于语音的描述从人类标注者收集的全新、高度详细的图像字幕数据集。为了支持各种用户交
摘要
当今最先进的多模态模型仍然是专有的。 最强大的开放权重模型严重依赖来自专有 VLM 的合成数据以实现良好的性能,有效地将这些封闭模型提炼成开放模型。 因此,社区仍然缺乏关于如何从头开始构建高性能 VLM 的基础知识。 我们提出了 Molmo,一个新的 VLM 家族,在开放性方面处于其类别中的最先进水平。 我们的关键创新是使用基于语音的描述从人类标注者收集的全新、高度详细的图像字幕数据集。 为了支持各种用户交互,我们还引入了用于微调的多样化数据集混合,其中包括野外问答和创新的 2D 指向数据。 我们方法的成功依赖于对模型架构细节的精心选择、经过良好调整的训练管道,最重要的是,我们新收集的数据集的质量,所有这些都将发布。 Molmo 家族中最好的 72B 模型不仅在开放权重和数据模型类别中优于其他模型,而且在学术基准测试和人类评估方面,与 GPT-4o、Claude 3.5 和 Gemini 1.5 等专有系统相比也具有优势。
我们将在不久的将来发布所有模型权重、字幕和微调数据以及源代码。 可以在 https://molmo.allenai.org 上获得选定的模型权重、推理代码和演示。
1介绍
除了文本之外,还可以处理图像的大语言模型 (LLM) 的扩展带来了令人印象深刻的多模态能力,例如生成全面的图像描述和准确回答复杂的可视化问题。 然而,这些视觉语言模型 (VLM) 中性能最佳的模型仍然是专有的,既没有模型权重、数据,也没有代码公开发布。
为了促进科学探索,许多研究工作试图在 开放 模型中复制类似的能力。 早期作品,例如 LLaVA [15],产生了完全公开的权重和训练数据,但现在已明显落后于最先进技术。 最近,更强大的开放权重模型倾向于更少开放的数据:训练数据可能是专有的(e.g.,[5])或者,在发布数据的情况下,严重依赖由专有系统生成 合成 数据,例如 e.g.,模型在像 ShareGPT4V [7] 这样的数据集上进行训练,该数据集使用 GPT-4V [25] 生成大量详细的图像标题。 因此,生成的 VLM 实际上是 蒸馏 的专有 VLM,科学界仍然缺少关于如何从头构建高性能 VLM 的基础知识。
在这项工作中,我们介绍了 Molmo (Multimodal Open Language Model)系列最先进的开放 VLM,其中发布了模型权重 以及 发布的视觉语言训练数据,不依赖于来自其他 VLM 的合成数据,包括专有 VLM。 这一成果是在一个简单的训练流程中实现的,在这个流程中,我们将一个独立预训练的现成视觉编码器和语言模型连接起来,并共同训练生成的 VLM 以从新收集的详细、高质量、密集的图像描述数据集中生成标题。 联合训练后,我们遵循标准实践,使用监督微调来生成一个指令遵循模型。 与其他当代开放 VLM 不同,我们避免了涉及冻结模型各个部分的多个预训练阶段,并依赖于大规模弱配对的图像-文本数据,这些数据通常比我们的高质量数据大三个数量级(e.g.,[5, 4])。 我们方法的成功依赖于对模型架构细节的仔细选择,一个经过良好调整的训练流程,以及最重要的是我们新数据集的质量,统称为 PixMo (Pixels for Molmo),所有这些都将被发布。
在实践中,从人类标注者那里收集密集字幕数据集具有挑战性。 如果要求写一个图像描述,结果通常只提到一些显着的视觉元素 [8]。 如果强制执行最少字数,标注者要么花费太长时间打字,使收集变得不经济,要么从专有 VLM 中复制粘贴响应,绕过了我们避免蒸馏的目标。 因此,开放研究社区一直在努力创建这样的数据集,而不依赖于来自专有 VLM 的合成数据。 我们的关键创新是一种简单但有效的数据收集策略,它避免了这些问题:我们要求标注者用 语音 描述图像 60 到 90 秒,而不是要求他们写描述。 我们提示标注者详细描述他们看到的所有内容,包括对空间位置和关系的描述。 根据经验,我们发现使用这种模式切换“技巧”,标注者在更短的时间内提供了更详细的描述,并且对于每个描述,我们收集了音频收据(i.e.,标注者的录音),证明没有使用 VLM。
在训练我们的模型以生成密集标题后,我们使用监督训练数据在广泛的用例上对它们进行微调。 此数据混合包含标准学术数据集以及几个新收集的数据集,包括一个高度多样化的问卷集,它捕捉了用户在野外可能会问模型的问题,以文档为中心的问答数据,模拟时钟读取数据,以及一个独特的新的数据源,它将语言与带有二维点的图像联系在一起。 这种新颖的指向数据使我们的模型能够通过指向支持答案的像素来更自然地回答一些问题,提高了计数精度(模型通过指向来计数),我们相信它将开启一个重要的未来方向,其中 VLM 使代理 (e.g., 机器人,网络代理) 能够通过在其环境中指向来 行动,e.g., 指向导航路标,指向要拾取的物体,或指向要按下的用户界面按钮。
我们在 11 个学术基准上评估了 Molmo 模型系列,并通过人工评估,使我们能够根据用户偏好对模型进行排名。 我们最有效的模型 MolmoE-1B,基于 OLMoE-1B-7B [24] 专家混合 LLM,在学术基准和用户偏好方面都几乎与 GPT-4V 的性能相匹配。 Molmo-7B-O 和 Molmo-7B-D,分别基于 OLMo-7B [10] 和 Qwen2 7B [33],在学术基准和用户偏好方面都舒适地位于 GPT-4V 和 GPT-4o 之间。 我们最好的 Molmo-72B 模型,基于 Qwen2 72B,取得了最高的学术基准得分,并在人工偏好排名中位居第二,仅次于 GPT-4o。 我们最好的模型优于许多最先进的专有系统,包括 Gemini 1.5 Pro 和 Flash,以及 Claude 3.5 Sonnet。
图 1: Molmo 架构遵循将语言模型与视觉编码器相结合的简单且标准的设计。 其强大的性能得益于经过精心调整的训练管道和我们新的 PixMo 数据。
2架构
我们的模型架构(图 1)遵循将语言模型与视觉编码器相结合的简单且标准的设计 (e.g., [15])。 它包含四个组件:(1)一个预处理器,它将输入图像转换为一组多尺度、多裁剪图像;(2)一个 ViT 图像编码器,它独立地将这些图像中的每一个映射到一组视觉符元;(3)一个连接器,它使用 MLP 将视觉符元投影到语言模型的输入维度,然后对视觉符元进行池化以减少其数量;以及 (4) 一个仅解码器的 Transformer LLM [30, 26]。
从此模板中,我们构建了一个模型系列,该系列通过视觉编码器和 LLM 的选择来参数化。 鉴于这些选择,随后的训练数据和配方对于所有模型都是相同的(除了优化器学习率)。 对于视觉编码器,我们所有发布的模型都使用 OpenAI 的 ViT-L/14 336px CLIP 模型 [27],该模型提供一致良好的结果(虽然该模型使用封闭数据,但可以从头开始复制,如 MetaCLIP [32] 所示;我们使用 OpenAI 的模型,因为它是在更高分辨率图像上训练的)。 对于LLM,我们提供各种规模和开放程度的选择:完全开放的OLMo-7B-1024(2024年10月预发布的主干,将在稍后发布),完全开放的OLMoE-1B-7B(我们最高效的模型),开放权重的Qwen2 7B,以及开放权重的Qwen2 72B(我们性能最好的模型)。
图2: (左)11个学术基准的平均得分。 参见表 1 的每个基准的结果。 (右)来自我们人类偏好评估的Elo评分。
3数据和训练
从独立预训练的视觉编码器和LLM开始,我们的训练过程很简单,仅包含两个阶段:(1)使用 PixMo-Cap 进行的多模态预训练,我们的新收集的字幕数据,以及(2)使用学术数据集和我们新收集的监督 PixMo-⋆ 数据集族进行的监督微调。 在这两个阶段中,所有模型参数都会更新。 我们没有使用RLHF。
第1阶段:字幕生成。
在此阶段,我们将视觉编码器和LLM与我们随机初始化的连接器连接起来,并在字幕生成任务上训练所有模型参数。 我们收集了 PixMo-Cap 训练数据用于此阶段,如下所示。
我们首先根据一组多样化的 ∼70 个高级主题(例如。,路标,表情包,食物,绘画,网站,模糊照片,等等。)来获取网络图片,对于每张图片,我们要求三位标注者详细描述图片,至少说 60 秒(在收集的后期阶段,我们将时间延长到 90 秒,并使用每张图片一位标注者;我们发现这样做效率更高,而不会降低质量)。 提示标注者在他们的描述中回答一些简单的问题:
-
乍一看,图片是什么?_
-
图片中有哪些物体,以及它们的数量?_
-
文本中说了什么?_
-
物体的方位在哪里?_
-
哪些细微细节值得注意?_
-
背景里有什么?_
-
风格和颜色是什么样的?_
然后,使用现成的语音转文字系统将标注者的音频转录成文本,然后使用纯语言 LLM 处理转录的文本以提高文本质量(e.g。,删除口语化表达,规范风格)。 我们还通过让纯语言 LLM 将三个原始转录总结成一个描述来创建第四个图像描述。
我们的训练过程使用所有四个图像 LLM 处理的转录(如果可用)作为自然数据增强的一种形式。 总共,我们在 712k 张不同的图像上进行了训练,包含 ∼1.3M 个标题(包括增强)。
第 2 阶段:监督微调。
在完成字幕训练后,我们在监督训练数据的混合集上对所有模型参数进行微调。 这种混合包括常见的学术数据集和几个新的 PixMo 数据集,将在下面介绍。
-
PixMo-AskModelAnything:我们收集了这些数据,旨在使模型能够回答各种问题,涵盖用户在实际应用中可能会问的问题。 为了创建图像-问题-答案三元组,我们让标注者与纯语言 LLM 合作。 首先,标注者会从一个大型池中选择一张图像,然后写一个关于它的问题。 我们使用第 1 阶段模型为图像生成密集字幕,并将该字幕、图像的 OCR 输出(来自非 VLM,现成的 OCR 模型)和问题传递给纯语言 LLM。 大语言模型 (LLM) 提供了一个答案(再次强调它没有访问图像),标注者可以接受或拒绝该答案。 如果被拒绝,他们会描述答案的错误之处,并要求 LLM 修复它。 标注者重复此过程,直到答案可以接受为止。 对于一些数据,我们要求标注者根据特定提示提问,包括一些不寻常的要求,例如要求将答案倒着写(使用 Unicode 可以实现)。 该数据集包含 162k 个问答对和 73k 张图像。
-
PixMo-Points:我们收集了指向数据,该数据实现了三个目标:(1)使模型能够指向文本描述的任何事物,(2)使模型能够通过指向进行计数,以及(3)使模型能够在回答问题时使用指向作为一种自然的视觉解释形式。 为了收集用于前两个目标的数据,我们要求人工标注者指向图像中的某样东西,写下它的描述,然后指向图像中它的每一个实例(使指向详尽)。 我们还收集了“不存在”数据,以便模型可以学习在被问及图像中_不存在_的事物时做出适当的响应。 该数据也自然地使我们能够训练模型以指向作为一种思维链形式来回答计数问题。 我们从 428k 张图像中收集了 2.3M 个问答对。 为了使指向成为一种解释形式,我们遵循了 PixMo-AskModelAnything 管道,但对其进行了扩展,以便标注者可以将文本标注的指向列表传递给 LLM。 然后提示 LLM 使用这些指向(如果合适)来支持其答案。 我们从 29k 张图像中收集了 79k 个问答对。
-
PixMo-CapQA:我们通过提示仅使用图像的真实标题来询问和回答问题的仅语言 LLM,从 165k 张图像中生成了另外 214k 个问答对。 为了增加多样性,我们创建了一个高级主题和风格列表,并要求模型使用它们。
-
PixMo-Docs:我们提示 LLM 为 255k 张包含图表、文档、表格和图表等文本和图形密集的图像生成代码。 然后,我们提示 LLM 根据对代码的权限访问(图像未被使用)生成 230 万个问答对。
-
PixMo-Clocks:我们构建了一个新的合成模拟时钟数据集,其中包含有关时间的问题和答案。 这些图像渲染自 ∼50 种不同的手表和一个多样化的 ∼160,000 个真实表盘风格的集合,这些风格具有随机选择的时刻。 我们收集了 826,000 个样本。
-
学术数据集:VQA v2 训练集(COCO 2014 子集) [9]、TextVQA 训练集 [29]、OK-VQA 训练集 [19]、ChartQA 训练集(人类和增强样本均衡) [20]、DocVQA 训练集 [21]、InfographicVQA 训练集 [22]、AI2D 训练集(透明和不透明标签框) [13]、A-OKVQA 训练集 [28]、AndroidControl 训练集 [14]、ScienceQA 训练集 [16]、TabMWP 训练集 [17]、ST-VQA 训练集 [6]、TallyQA 训练集 [3]、DVQA 训练集 [11]、FigureQA 训练集 [12] 和 PlotQA 训练集 [23]。
图 3: VLM 开放性比较。 我们根据三个模型组件(VLM 及其两个预训练组件,LLM 主干和视觉编码器)的两个属性(开放权重、开放数据和代码)来描述 VLM 的开放性。 除了开放与封闭之外,我们使用“蒸馏”标签来表示用于训练 VLM 的数据包含由另一个专有 VLM 生成的图像和文本,这意味着该模型在没有对专有 VLM 的依赖的情况下无法被复制。
4评估
表 1: 学术基准结果涵盖十个常用的数据集,加上一个新收集的计数基准 Flickr Count,该基准侧重于在比 CountBenchQA 更具挑战性的自然图像中进行计数。 我们将模型分为四组:(顶部) 专有模型,只能通过 API 调用访问;(上中) 模型已发布权重但数据封闭;(下中) 模型已发布权重和发布训练数据,请注意,其中一些模型 (†) 通过在专有 VLM 生成的合成数据上训练,从其他模型蒸馏而来;(底部) Molmo 模型系列。
视觉语言模型的评估正在快速发展,新的学术基准不断出现。 这些基准测试非常适合评估特定技能,但要在这些基准测试中取得良好成绩通常需要以基准测试特有的风格回答问题。 这些答案通常很短,在对话环境中效果不佳。 因此,学术基准测试只能部分反映模型的性能。 为了补充这些基准测试,我们进行了人工评估,使我们能够根据用户偏好对模型进行排名。
为了进行学术基准测试,我们试图收集所有模型在一组 11 个常用的学术基准测试上的结果。 1 我们优先使用作者自己发布的数字(如果可用),但很多数字缺失。 如果结果不可用,我们会尝试从其他技术报告或公共排行榜(例如 OpenVLM 排行榜)中找到先前报告的最佳值。 最后,如果仍然缺少值,我们会自己计算。 我们注意到,在实践中计算结果很困难。 对于固定模型,在给定基准测试上的结果可能会有很大差异 (e.g,10 个百分点),具体取决于评估方式的细节。 更复杂的是,在许多情况下,关键的评估细节(例如使用什么提示或如何处理数据)可能不可用,这使得很难重现已发布的结果。 这些问题强调了开放评估的重要性。
我们还避免在声称的“零样本”性能(通常针对封闭数据模型报告)和明确在基准训练集上训练的模型的监督性能之间进行强烈的区分。 监督训练和零样本迁移之间的区别很模糊,因为人们可以策划新的数据源,这些数据源可以作为任何给定基准的文字训练数据的有效代理。 当训练数据未公开时,社区无法评估零样本迁移声明。
图 4: 我们的 Elo 人工偏好评估使用了 15k 个图像和文本提示对。 我们查询了每个 VLM 的响应,并将所有 VLM 配对产生的图像-文本-响应三元组呈现给一组 ∼870 个人工标注者,他们对每一对进行了偏好排序,总共对 27 个模型进行了 325k 对比较,使其成为迄今为止最大的多模态模型人工偏好评估。 作为参考,我们的 ELO 排名基于比 Chatbot Arena (LMSYS) 用于视觉模型的投票多 3× 倍。
为了进行人工评估,我们收集了一组多样化的 15k 个图像和文本提示对,并查询了一组 VLM 以获取响应。 然后,我们对所有 VLM 配对产生的图像-文本-响应三元组进行采样并呈现给一组 ∼870 个人工标注者,他们对每一对进行了偏好排序。 在所有模型对中,我们收集了超过 325k 个偏好评分 (∼每个模型对 450 个匹配项)。 基于这些偏好排序,我们使用 Bradley-Terry 模型计算了 Elo 排名,方法遵循 LMSYS Org 的 Chatbot Arena 的方法 [1]。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。
这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
】
更多推荐
所有评论(0)