在「造车」与「AI」两条截然不同的赛道上,苹果在今年毅然决定取消搞了十多年的电动车项目,而宣布:公司将于 2024 年在生成式人工智能领域“开辟新天地”。
果不其然,在战略方向定下之后,他们的动作很快。
一方面,据彭博社最新报道,苹果收购了一家来自加拿大专门研究基于视觉技术的 AI 初创公司 DarwinAI。虽然苹果及 DarwinAI 尚未宣布这笔交易,但是根据 LinkedIn 部分专家资料显示,这家初创公司团队的几名成员于 1 月份已经加入了苹果的机器学习团队。
另一方面,在 3 月 14 日,也有不少网友发现苹果在 30 位研究员的加持下,带着一款名为 MM1 的多模态大模型强势入场。
苹果的取名也一如既往地简单好记:M1 是自家的芯片,那 MM1 就是自己的大模型。
此外,苹果更是一上来便说明,自己走了和现在开源、闭源大模型不同的分享路线,正如其论文名称所示,其直接在论文中分享了关于 MM1 多模态大语言模型的预训练方法、分析和启示。
论文地址:https://arxiv.org/pdf/2403.09611.pdf
1、因业界的“不透明性”,苹果发布多模态大模型——MM1
所谓多模态,是指在各种格式(如图像文件、视频文件和音频文件以及纯文本数据)上训练的大规模语言模型。
之所以发布 MM1,苹果研究团队在论文中指出,主要原因是因为现在很多 AI 公司在 AI 模型的学习方法上有着“不透明性”。
行业中现有的 MLLM(Multimodal Large Language Model,多模态大型语言模型)主要分为两类:闭源模型和开放模型。
- 闭源模型往往虽然可用,但外界对其数据模型、模型架构和训练细节所知甚少。
- 至于开放模型,很多公司会将模型参数连同数据模型和训练配置的详细说明一起发布,从而使社区能够在此基础上更进一步微调。
但是在苹果团队看来,无论是开放式的还是封闭式的,大多数的模型对于他们所使用的算法设计选择的过程几乎什么都没有公开,特别是关于多模态预训练。
为了在这一领域进一步研究,苹果研究团队认为,当务之急是分享如何建立这样模型的方法。
所以,一不做二不休,苹果发表了这篇论文,不仅带来了 MM1,还在论文中直接记录了 MLLM 的构建过程,也试图尽可能地去分享制定设计的经验教训。
2、300 亿参数的 MM1 可以用来干些什么?
研究人员在论文中解释道,通过在模型架构决策和预训练数据选择上执行小规模消融实验,以及通过对图像编码器、视觉语言连接器和各种预训练数据选择进行细致全面的分析,他们发现了一些关键的设计经验。
- 苹果研究团队证明了在大规模多模态预训练中,与其他已发布的预训练结果相比,使用图像字幕、交错图像文本和纯文本数据的组合对于在多个基准测试中实现最先进(SOTA)的少量测试结果至关重要。
- 此外,图像编码器、图像分辨率和图像标记数量具有重大影响,而视觉语言连接器设计的重要性则相对较小。
详细来看,在建模方面,研究人员发现设计的重要性按照以下顺序来:图像分辨率、视觉编码器的损耗和容量,以及视觉编码器的预训练数据。
此外,研究人员使用三种不同类型的预训练数据:图像字幕、交错图像文本和纯文本数据。由此看到,当涉及到少样本和纯文本性能时,交错和纯文本训练数据是至关重要的,而对于零样本性能,字幕数据最为重要。
在监督微调(SFT)后,无论是在预训练中使用的评估上,还是在更多基准上,这些趋势都保持不变。这表明,在预训练中发现的能力和建模决策在微调后得以保留。
最后,通过使用更大的 LLM(从 3B、7B 到 30B)以及探索混合专家模型(MoE)(从使用 64 位专家的 3B MoE,到使用 32 位专家的 7B MoE)来扩展苹果的模型,从而建立了 MM1,这是一个多模态模型系列,参数多达 300 亿。
由于进行了大规模的多模态预训练,MM1 有不错的图像识别和推理能力。更具体地说,Apple MM1 非常擅长在用户输入的图像和文本中寻找“规则”。
就如下图所示,当用户给出排列的图像,并注明每张上传的图像有关的“对象”和“对象编号”的文本:
- 第一张照片:1 只泰迪熊,1 个智能手机。
- 第二张照片:2 只猫的图像。
- 第三张照片:3 本书、1 个花瓶和 1 个玻璃杯。
除此之外,MM1 还具有:
(a) 统计对象并遵循自定义格式,输出文本
(b) 参照图像的某些部分并执行 OCR 识别
(c) 展示有关日常物品的常识和文字知识
(d) 执行基本的数学功能。
经过指令调整后,MM1 还具有很强的少量学习能力。
比如说下图,上传一张照片,MM1 可以给出具体的数量、识别图片的数值、动物种类等等。
同时,还能输入多张图片。比如下图:
Q:“识别图片中是什么数字显示在蛋糕上。然后算出总和。”
MM1-30B-Chat:第一个图像显示的是一个蛋糕上的数字 3,第二个图像显示的是一个蛋糕上的数字 4。和为 7。
Q:我向你展示一幅图像,你需要预测当图像旋转 180 度时显示的字母或数字。
MM1-30B-Chat:W,9
Q:我给你看几张图,你的任务是回答我的问题。估计每张图像的温度(以摄氏度为单位)。也提供理由。
MM1-30B-Chat:
- 海滩上带伞的图像:25-30摄氏度。伞撑起来了,人们都在海滩上,暗示着一个温暖、阳光灿烂的日子。
- 飞机飞越雪地的图像:-20至-30摄氏度。飞机正飞越一片白雪覆盖的地区,地面上有车辆,说明冬天天气寒冷。
- 草地上的动物吃草的图像:15-20摄氏度。动物在吃草,这通常发生在较温和的天气条件下。草是绿色的,进一步表明温带气候。
从示例看来,整体效果还是不错的。据苹果研究员透露,MM1 这些模型的性能优于大多数相关研究。特别是,预训练模型 MM1 是 SOTA,在少样本设置下的字幕和视觉问题解答(VQA)任务中,无论是小尺寸还是大尺寸,其性能都优于 Emu2、Flamingo 和 IDEFICS。经过 SFT 处理后,最终模型在 12 个既定的多模态基准测试中取得了具有竞争力的性能。
3、MM1 是如何构建出来的?
那么,MM1 究竟是怎么“造”出来的?苹果研究员首先从三个维度展开了分享:
- 架构:研究员研究了不同的预训练图像编码器,并探索了将 LLM 与这些编码器连接起来的各种方法。
- 数据:他们还考虑了不同类型的数据及其相对混合权重。
- 训练程序:探讨了如何训练 MLLM,包括超参数以及在哪个阶段训练模型的哪些部分。
起步阶段,由于训练一个大型 MLLM 需要大量的资源,研究员采用了一种简化的消融设置。
具体来看,研究员使用一个较小的模型基础配置,并在此基础上进行删减。每次修改一个组件,无论是架构模块还是数据源,然后评估设计选择对每个组件的影响。这样,研究员就能得出最终的模型-数据配置,并在模型参数和训练时间方面进行扩展。
消融的基本配置如下:
- 图像编码器:在 DFN-5B 和 VeCap-300M 上使用 CLIP loss 的 ViT-L/14 模型;图像大小为 336×336。
- 视觉语言连接器:C-Abstractor,含 144 个图像标记。
- 预训练数据:混合字幕图像(45%)、交错图像文本文档(45%)和纯文本数据(10%)。
- 语言模型:1.2B Transformer 解码器语言模型。
为了评估不同的设计决策,研究者在各种 VQA 和字幕任务中使用了零样本和少样本(4 个样本和 8 个样本)性能:COCO Cap tioning、NoCaps、TextCaps、VQAv2、TextVQA、VizWiz、GQA和 OK-VQA。
模型架构消融
在这项工作中,研究员分析了使 LLM 能够处理视觉数据的组件,分析如何用最佳方式预训练视觉编码器,以及如何将视觉特征连接到 LLM 的空间。
过去,大多数 MLLM 都使用 CLIP 预训练图像编码器,而最近的研究也开始探索使用纯视觉自监督模型(如 DINOv2)作为图像编码器。在这里,苹果研究员主要消除了图像分辨率和图像编码器预训练目标的重要性。他们使用的是 2.9B LLM(而不是 1.2 B),以确保有足够的容量来使用一些较大的图像编码器。
在实验过程中,研究人员发现,将图像分辨率从 224 提高到 336,所有架构的所有指标都提高了约 3%。将模型大小从 ViT-L 增加到 ViT-H,参数增加了一倍,但性能提升不大,通常不到 1%。最后,加入 VeCap-300M (一个合成字幕数据集)后,在少量拍摄的情况下,性能提升超过 1%。
在 VL 连接器维度,研究人员发现视觉标记数和图像分辨率最重要,而 VL 连接器的类型影响不大。下图显示的结果表明,随着视觉标记数量或图像分辨率的增加,零样本和少样本的性能都会提高。
这一点,与之前很多专家发现的情况有所不同,即不同的架构设计似乎并不能最终产生更强的模型。经过指令调整后,所有三种架构在 336px 和 114 token 设置下都取得了非常相似的结果。
大规模和适合任务的数据对训练高性能模型至关重要。通常,模型的训练分为两个阶段:预训练和指令调整。前一阶段使用网络规模的数据,而后一阶段则使用特定任务策划的数据。
有两类数据通常用于训练 MLLM:由图像和成对文本描述组成的字幕数据;以及来自网络的交错图像-文本文档。需要注意的是,字幕数据往往包含相对较短的文本,与图像的相关性较高。
相反,交错数据中的文本篇幅更长、种类更多,但与周围图像的相关性平均较低。最后,苹果研究人员还采用了包括纯文本数据,以帮助保留底层 LLM 的语言理解能力。以下是所有数据集:
预训练数据消融
在预训练数据消融环节,研究员使用了与消融模型相同的模型设置,唯一不同的是,在这里训练了 200k 步,以充分利用大规模数据训练。
最终,研究员总结出以下经验:
- 数据经验 1:交错数据有助于提高少样本和纯文本性能,而字幕数据则能提高零样本性能。
- 数据经验 2:纯文本数据有助于实现少样本和纯文本性能
- 数据经验 3:精心混合图像和文本数据可获得最佳的多模态性能,并保留较强的文本性能。
- 数据经验 4:合成数据有助于少量学习
根据以上,苹果研究员最终确定了 MM1 多模态预训练的最终方法:
- 图像编码器:使用了分辨率为 378x378px 的 ViT-H 模型,并在 DFN-5B 上使用 CLIP 目标进行了预训练。
- 视觉语言连接器:由于视觉标记的数量最为重要,因此研究员使用了具有 144 个 token 的 VL 连接器。实际架构似乎不太重要,其选择了 C-Abstractor。
- 数据:为了保持零样本和少样本的性能,研究员采用了 45% 交错图像-文本文档、45% 图像-文本对文档和 10% 纯文本文档这样的组合数据。
为了提高模型性能,研究员将 LLM 的大小扩展到 3B、7B 和 30B 个参数。
底层 LLM 在同一纯文本数据集上进行内部训练。由于 LLM 和视觉编码器都经过了预训练,研究员将它们作为 MM1 的初始化,并在上述数据组合上进行了 200k 步(约 100B 标记)的多模态预训练。
所有模型都是在序列长度为 4096、每个序列最多 16 幅图像(分辨率为 378×378)、批量大小为 512 个序列的情况下完全不冻结地进行预训练的。所有模型均使用 AXLearn 框架进行训练。
最终,研究员通过适当的提示对字幕和 VQA 任务中的预训练模型进行了评估。得到如下结果:
请注意,研究员只将其模型与较大的模型进行比较,例如,将 MM1 的 30B 模型与两个 80B 模型进行比较。
说到“少量”性能,MM1 优于所有已发表的预训练 MLLM。在字幕基准和 VizWiz-QA 基准中,我们看到了 30B 的卓越性能。在 VQAv2、TextVQA 和 OKVQA 上,我们的性能可与 Emu2 相媲美。在零样本性能方面 ,即使不进行指令微调,MM1 模型在所有模型规模的 TextCaps 上都表现良好,在大多数基准的小规模上与 Flamingo-3B 不相上下。
4、监督微调实验
除了以上,研究员还进行了监督微调(SFT,Supervised Fine-Tuning)实验。
根据下图结果显示,MM1-3B-Chat 和 MM1-7B-Chat 优于所有已列出的同尺寸模型包括 Google 的 Gemini Nano。
同时,在 VQAv2、TextVQA、ScienceQA、MMBench 以及最近的基准测试(MMMU 和 MathVista)中,MM1-3B-Chat 和 MM1-7B-Chat 的表现都不错。
其次,研究员还分析了两种 MoE 模型:3B-MoE(64 位专家)和 6B-MoE(32 位专家)。在几乎所有基准测试中,苹果的 MoE 模型比密集型模型取得了更好的性能。
再者,对于 30B 大小的模型,MM1-30B-Chat 在 TextVQA、SEED 和 MMMU 上的表现优于 Emu2-Chat37B 和 CogVLM-30B。不过,LLaVA-NeXT 不支持多图像推理,也不支持少量提示,因为每幅图像都表示为 2,880 个发送到 LLM 的标记,而苹果的标记总数只有 720 个。这就限制了某些涉及多图像的应用。
另外,苹果研究团队还研究了图像分辨率和预训练对 SFT 性能的影响,其结果如下。
5、MM1 尚未公开以什么样的形式对外
值得注意的是,苹果发布的这篇论文中,并没有提及 MM1 是否会发布。
然而,正如文章伊始所提及的,苹果已经停止了开发电动汽车,并收购了 DarwinAI。
此外,iPhone 的 Siri 首席执行官 Dag Kittlaus 已宣布,“Siri 将在 2024 年做一些很酷的新事情。然后加速并成为人工智能领域的真正力量。Apple 具有独特的优势,可以实现新的、有用的和意想不到的 LLM 用例。”
MM1 如今只是苹果正式对外的 AI 布局第一步,我们也期待它的进一步。
更多技术细节可详见论文报告:https://arxiv.org/pdf/2403.09611.pdf