25年3月谷歌发布开源 Gemma 3,Technical Report。

请添加图片描述

Gemma 3,是 Gemma 系列轻量级开放模型中的多模态成员,其规模从 10 亿到 270 亿个参数不等。此版引入视觉理解能力、更广泛的语言覆盖范围和更长的上下文(至少 128K 个tokens)。还更改模型的架构,减少在长上下文中往往会爆炸的 KV-缓存内存。这是通过增加局部与全局注意层的比例并保持局部注意的跨度较短来实现的。Gemma 3 模型经过蒸馏训练,无论是预训练版还是指令微调版,其性能都优于 Gemma 2。特别是,后训练方法显著提高数学、聊天、指令遵循和多语言能力,使 Gemma3-4B-IT 与 Gemma2-27B-IT 相媲美,而 Gemma3-27B-IT 在基准测试中可与 Gemini-1.5-Pro 相媲美。

Gemma 开放语言模型的最新版(Gemma Team,2024a),与 Gemini 前沿模型系列(Gemini Team,2023)共同设计。这个新版的大小与 Gemma 2(Gemma Team,2024b)相当,但增加一个 1B 模型。这些模型旨在在标准消费级硬件上运行,例如手机、笔记本电脑和高端 GPU。此版为 Gemma 系列带来几项新功能;即多模态、长上下文和多语言性,同时保留或超越以前版本的性能。

在多模态方面,大多数 Gemma 3 模型与定制版的 SigLIP 视觉编码器(Zhai,2023)兼容。语言模型将图像视为由 SigLIP 编码的软 token 序列。将视觉嵌入压缩为固定大小的 256 个向量来降低图像处理的推理成本。编码器以固定分辨率工作,从 LLaVA(Liu,2024)中汲取灵感,使用平移和扫描 (P&S) 方法实现灵活的分辨率。

第二个主要的架构改进,是将上下文大小增加到 128K 个 token,而不会降低性能。长上下文的一个挑战是推理期间 KV-缓存的内存爆炸。为了减少这个问题,在每个全局层之间插入多个局部层,并为本地层分配较小的跨度,只有 1024 个 token。因此,只有全局层关注长上下文,每 5 个局部层有 1 个全局层。

预训练优化配方类似于 Gemma 2,但在架构设计上有一些修改。用与 Gemini 2.0 相同的token化器,并且还重新审视数据混合,改进模型的多语言能力,同时引入图像理解。所有 Gemma 3 模型都经过知识蒸馏训练(Hinton,2015)。

在后训练中,专注于提高数学、推理和聊天能力,以及整合 Gemma 3 的新功能、长上下文和图像输入。用一种后训练方法,其可以提高所有能力,包括数学、编码、聊天、指令遵循和多语言。由此产生的 Gemma 3 指令调整模型既强大又通用,远远优于其前版。

如图所示一个与 Gemma 3 27B IT 模型进行视觉交互的示例:

请添加图片描述

Gemma 3 模型遵循与先前迭代相同的通用解码器专用Transformer架构(Vaswani,2017),大多数架构元素与前两个 Gemma 版本相似。用带 RMSNorm (Zhang 和 Senrich,2019)的预-规范和后-规范下分组查询注意 (GQA)(Ainslie,2023)。受 Dehghani(2023)、Wortsman(2023)和 Chameleon Team(2024)的启发,用 QK-norm 取代 Gemma 2 的软上限。

局部/全局层的 5:1 交错。在局部滑动窗口自注意(Beltagy,2020)和全局自注意(Luong,2015)之间交替使用,每个全局层有 5 个局部层,从局部层开始作为模型的第一层。

长上下文。Gemma 3 模型支持 128K 个 token 的上下文长度,但 1B 模型除外,该模型有 32K 个 token。将全局自注意层的 RoPE 基频从 10k 增加到 1M,并将局部层的频率保持在 10k。遵循类似于 Chen(2023)的位置插值的过程,扩展全局自注意层的跨度。

视觉模态

视觉编码器。用 SigLIP 编码器 (Zhai,2023) 的 400M 变型,这是一个使用 CLIP 损失 (Radford,2021) 变型训练的 Vision Transformer (Dosovitskiy,2020)。Gemma 视觉编码器将调整为 896 x 896 的方形图像作为输入,并根据视觉助手任务的数据进行微调。为简单起见,在 4B、12B 和 27B 模型之间共享视觉编码器,并在训练期间保持其冻结。

平移和扫描 (P&S)。Gemma 视觉编码器以 896 × 896 的固定分辨率运行。这会导致在处理非方形纵横比和高分辨率图像时出现伪影,导致文本不可读或小物体消失。在推理过程中使用自适应窗口算法解决这个问题。该算法将图像分割成大小相等的不重叠裁剪部分,覆盖整个图像,然后将其调整为 896×896 像素以将其传递给编码器。此窗口仅在必要时应用,并控制最大裁剪数量。这是仅用于推理时间的优化,可以禁用以加快推理速度。

预训练

遵循与 Gemma 2 类似的方法,通过知识蒸馏进行预训练。

训练数据。在比 Gemma 2 稍大的 token 预算上对模型进行预训练,即在 Gemma 3 27B 上使用 14T token,在 12B 版本上使用 12T token,在 4B 版本上使用 4T token,在 1B 版本上使用 2T token。token 的增加解释预训练期间使用的图像和文本的混合。还增加多语言数据的数量以提高语言覆盖率。添加单语和并行数据,并使用受 Chung (2023) 启发的策略来处理语言表示的不平衡。

Token化器。用与 Gemini 2.0 相同的token化器:一个具有分割数字、保留空格和字节级编码的 SentencePiece token化器(Kudo & Richardson,2018)。生成的词汇表有 262k 个条目。此token化器对于非英语语言更加平衡。

过滤。用过滤技术来降低不必要或不安全的言论风险,并删除某些个人信息和其他敏感数据。从预训练数据混合物中净化评估集,并通过最大限度地减少敏感输出的扩散来降低背诵风险。还应用受 Sachdeva(2024)启发的质量重加权步骤来减少低质量数据的出现。

蒸馏。每个 token 抽取 256 个 logit,按教师概率加权。学生通过交叉熵损失学习这些样本中的教师分布。教师的目标分布对于非抽样的逻辑向量设置为零概率,并重规范化。

量化-觉察训练

除了原始检查点,还以不同的标准格式提供模型的量化版。这些版是通过使用量化-觉察训练 (QAT) (Jacob,2018) 对每个模型进行少量步骤(通常为 5,000)微调而获得的。用非量化检查点的概率作为目标,并调整数据以匹配训练前和训练后分布。基于最流行的开源量化推理引擎(例如 llama.cpp),专注于三种权重表示:每通道 int4、每块 int4 和切换 fp8。

计算基础设施

用 TPUv4、TPUv5e 和 TPUv5p 训练模型。每个模型配置都经过优化,以最大限度地缩短训练步骤时间。对于视觉编码器,预计算每个图像的嵌入,并直接使用嵌入进行训练,不会增加语言模型的训练成本。

优化器状态使用 ZeRO-3 的实现进行分片(Ren,2021)。对于multi-pod 训练,用 Barham(2022)的 Pathways 方法在数据中心网络上让数据副本减少。用 Jax(Roberts,2023)和 Pathways(Barham,2022)的“单控制器”编程范式,以及 GSPMD 分区器(Xu,2021)和 MegaScale XLA 编译器(XLA,2019)。

与之前的方法相比,预训练模型通过改进的后训练方法转变为指令调整模型。

技术。后训练方法依赖于来自一位大 IT 教师的改进版知识蒸馏(Agarwal,2024;Anil,2018;Hinton,2015),以及基于改进版 BOND(Sessa,2024)、WARM(Ramé,2024b)和 WARP(Ramé,2024a)的 RL 微调阶段。

强化学习目标。用各种奖励函数来提高帮助力、数学、编码、推理、指令遵循和多语言能力,同时最大限度地减少模型危害。这包括从使用人类反馈数据、代码执行反馈(Gehring,2024)和解决数学问题的真实奖励(DeepSeek-AI,2025;Lambert,2024)训练的加权平均奖励模型(Ramé,2024b)中学习。

数据过滤。仔细优化训练后使用的数据,以最大限度地提高模型性能。过滤显示某些个人信息、不安全或有毒的模型输出、错误的自我识别数据和重复示例的示例。包括鼓励更好的上下文归因、对冲和拒绝最小化幻觉的数据子集也会提高事实性指标的性能,而不会降低模型在其他指标上的性能。

[BOS] token。对于 PT 和 IT 模型,文本都以 [BOS] token开头,需要明确添加该token,因为文本“[BOS]”不映射到 [BOS] token。例如,Flax 有一个选项 add_bos = True,可以在token化时自动添加此token。

PT 与 IT 格式。所有模型共享相同的token化器,其中一些控制token专用于 IT 格式。一个关键的区别是 PT 模型在生成结束时输出 token,而 IT 模型在生成结束时输出 <end_of_turn>。因此,微调任一模型类型也需要添加各自的结束token。

大语言模型可能会生成训练中使用的某些文本近似副本(Biderman,2023;Carlini,2021,2022;Ippolito,2022;Nasr,2023)。之前有几份报告发布审计报告,通过测量记忆率来量化这种风险(Anil,2023;Chowdhery,2022;Gemini Team,2023,2024;Gemma Team,2024a、b;LLaMa Team,2024)。此“记忆率” 定义为使用以下设置,与训练数据匹配的模型生成与所有模型生成之比。遵循 Gemma Team(2024b)中描述的方法对其进行测量。具体来说,对均匀分布在不同语料库中的大量训练数据进行子采样,并使用长度为 50 的前缀和长度为 50 的后缀测试此内容的可发现提取(Nasr,2023)。如果后续的所有tokens都与源后缀匹配,文本表示为“全记忆”,如果它们匹配的编辑距离达到 10%,则表示“大致记忆”。

如图比较 Gemma 和 Gemini 模型的记忆率;这些模型按时间倒序排列,最新的 Gemma 3 模型在左侧。Gemma 3 模型记忆长篇文本的速度比以前的模型低得多(请注意对数 y 轴)。4B、12B 和 27B 模型之间的记忆率只有微小差异,其中 1B 的记忆率低于这些较大的模型。此外,更大比例的文本被描述为近似记忆,与精确记忆相比,近似记忆相对增加,平均大约为 24 倍。

请添加图片描述

还研究各种生成可能包含个人信息的速率。为了识别潜在的个人信息,使用 Google Cloud 敏感数据保护 (SDP) 服务。SDP 使用广泛的检测规则来识别可能包含个人信息的文本。SDP 旨在具有高召回率,并且不考虑信息可能出现的上下文,这会导致许多误报。因此,很可能高估被归类为记忆的输出中包含的潜在个人信息真实数量。SDP 还提供广泛的严重性级别:低、中、高。如果 SDP 将文本归类为任何严重程度的个人信息,将文本归类为个人信息。在所有 Gemma 3 模型中均未观察到被归类为记忆的输出中包含个人信息。这表明,在被归类为记忆的输出中,个人数据的比例很低,低于检测阈值。

Gemma 和其他模型的性能 VS 大小比较如图所示:

请添加图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐