全部语种
分享
文章来源:关注大模型的 机器之心
苹果也在搞自己的大型多模态基础模型,未来会不会基于该模型推出相应的文生图产品呢?我们拭目以待。
今年以来,苹果显然已经加大了对生成式人工智能(GenAI)的重视和投入。此前在 2024 苹果股东大会上,苹果 CEO 蒂姆・库克表示,今年将在 GenAI 领域实现重大进展。此外,苹果宣布放弃 10 年之久的造车项目之后,一部分造车团队成员也开始转向 GenAI。
如此种种,苹果向外界传达了加注 GenAI 的决心。目前多模态领域的 GenAI 技术和产品非常火爆,尤以 OpenAI 的 Sora 为代表,苹果当然也想要在该领域有所建树。
今日,在一篇由多位作者署名的论文《MM1: Methods, Analysis & Insights from Multimodal LLM Pre-training》中,苹果正式公布自家的多模态大模型研究成果 —— 这是一个具有高达 30B 参数的多模态 LLM 系列。
论文地址:https://arxiv.org/pdf/2403.09611.pdf
该团队在论文中探讨了不同架构组件和数据选择的重要性。并且,通过对图像编码器、视觉语言连接器和各种预训练数据的选择,他们总结出了几条关键的设计准则。具体来讲,本文的贡献主要体现在以下几个方面。
首先,研究者在模型架构决策和预训练数据选择上进行小规模消融实验,并发现了几个有趣的趋势。建模设计方面的重要性按以下顺序排列:图像分辨率、视觉编码器损失和容量以及视觉编码器预训练数据。
其次,研究者使用三种不同类型的预训练数据:图像字幕、交错图像文本和纯文本数据。他们发现,当涉及少样本和纯文本性能时,交错和纯文本训练数据非常重要,而对于零样本性能,字幕数据最重要。这些趋势在监督微调(SFT)之后仍然存在,这表明预训练期间呈现出的性能和建模决策在微调后得以保留。
最后,研究者构建了 MM1,一个参数最高可达 300 亿(其他为 30 亿、70 亿)的多模态模型系列, 它由密集模型和混合专家(MoE)变体组成,不仅在预训练指标中实现 SOTA,在一系列已有多模态基准上监督微调后也能保持有竞争力的性能。
具体来讲,预训练模型 MM1 在少样本设置下的字幕和问答任务上,要比 Emu2、Flamingo、IDEFICS 表现更好。监督微调后的 MM1 也在 12 个多模态基准上的结果也颇有竞争力。
得益于大规模多模态预训练,MM1 在上下文预测、多图像和思维链推理等方面具有不错的表现。同样,MM1 在指令调优后展现出了强大的少样本学习能力。
构建高性能的 MLLM(Multimodal Large Language Model,多模态大型语言模型) 是一项实践性极高的工作。尽管高层次的架构设计和训练过程是清晰的,但是具体的实现方法并不总是一目了然。这项工作中,研究者详细介绍了为建立高性能模型而进行的消融。他们探讨了三个主要的设计决策方向:
1、消融设置
由于训练大型 MLLM 会耗费大量资源,研究者采用了简化的消融设置。消融的基本配置如下:
为了评估不同的设计决策,研究者使用了零样本和少样本(4 个和 8 个样本)在多种 VQA 和图像描述任务上的性能:COCO Cap tioning 、NoCaps 、TextCaps 、VQAv2 、TextVQA 、VizWiz 、GQA 和 OK-VQA。
2、模型架构消融试验
研究者分析了使 LLM 能够处理视觉数据的组件。具体来说,他们研究了(1)如何以最佳方式预训练视觉编码器,以及(2)如何将视觉特征连接到 LLM 的空间(见图 3 左)。
3、预训练数据消融试验
通常,模型的训练分为两个阶段:预训练和指令调优。前一阶段使用网络规模的数据,后一阶段则使用特定任务策划的数据。下面重点讨论了本文的预训练阶段,并详细说明研究者的数据选择(图 3 右)。
有两类数据常用于训练 MLLM:由图像和文本对描述组成的字幕数据;以及来自网络的图像 - 文本交错文档。表 2 是数据集的完整列表:
研究者收集了之前的消融结果,确定 MM1 多模态预训练的最终配方:
为了提高模型的性能,研究者将 LLM 的大小扩大到 3B、7B 和 30B 个参数。所有模型都是在序列长度为 4096、每个序列最多 16 幅图像、分辨率为 378×378 的情况下,以 512 个序列的批量大小进行完全解冻预训练的。所有模型均使用 AXLearn 框架进行训练。
他们在小规模、9M、85M、302M 和 1.2B 下对学习率进行网格搜索,使用对数空间的线性回归来推断从较小模型到较大模型的变化(见图 6),结果是在给定(非嵌入)参数数量 N 的情况下,预测出最佳峰值学习率 η:
通过专家混合(MoE)进行扩展。在实验中,研究者进一步探索了通过在语言模型的 FFN 层添加更多专家来扩展密集模型的方法。
要将密集模型转换为 MoE,只需将密集语言解码器替换为 MoE 语言解码器。为了训练 MoE,研究者采用了与密集骨干 4 相同的训练超参数和相同的训练设置,包括训练数据和训练 token。
关于多模态预训练结果,研究者通过适当的提示对预先训练好的模型在上限和 VQA 任务上进行评估。表 3 对零样本和少样本进行了评估:
监督微调结果
最后,研究者介绍了预训练模型之上训练的监督微调(SFT)实验。
他们遵循 LLaVA-1.5 和 LLaVA-NeXT,从不同的数据集中收集了大约 100 万个 SFT 样本。鉴于直观上,更高的图像分辨率会带来更好的性能,研究者还采用了扩展到高分辨率的 SFT 方法。
监督微调结果如下:
表 4 展示了与 SOTA 比较的情况,「-Chat」表示监督微调后的 MM1 模型。
首先,平均而言,MM1-3B-Chat 和 MM1-7B-Chat 优于所有列出的相同规模的模型。MM1-3B-Chat 和 MM1-7B-Chat 在 VQAv2、TextVQA、ScienceQA、MMBench 以及最近的基准测试(MMMU 和 MathVista)中表现尤为突出。
其次,研究者探索了两种 MoE 模型:3B-MoE(64 位专家)和 6B-MoE(32 位专家)。在几乎所有基准测试中,苹果的 MoE 模型都比密集模型取得了更好的性能。这显示了 MoE 进一步扩展的巨大潜力。
第三,对于 30B 大小的模型,MM1-30B-Chat 在 TextVQA、SEED 和 MMMU 上的表现优于 Emu2-Chat37B 和 CogVLM-30B。与 LLaVA-NeXT 相比,MM1 也取得了具有竞争力的全面性能。
不过,LLaVA-NeXT 不支持多图像推理,也不支持少样本提示,因为每幅图像都表示为 2880 个发送到 LLM 的 token,而 MM1 的 token 总数只有 720 个。这就限制了某些涉及多图像的应用。
图 7b 显示,输入图像分辨率对 SFT 评估指标平均性能的影响,图 7c 显示,随着预训练数据的增加,模型的性能不断提高。
图像分辨率的影响。图 7b 显示了输入图像分辨率对 SFT 评估指标平均性能的影响。
预训练的影响:图 7c 显示,随着预训练数据的增加,模型的性能不断提高。
更多研究细节,可参考原论文。