互联网资讯 / 人工智能 · 2023年12月29日

谷歌开发的通用稀疏语言模型GLaM战胜GPT-3,具备惊人的1.2万亿参数

近几年,我们已经看到模型规模越来越大,例如 2018 年诞生的 GPT 具有 1.17 亿参数,时隔一年,2019 年 GPT-2 参数量达到 15 亿,2020 年更是将其扩展到 1750 亿参数的 GPT-3。据了解,OpenAI 打造的超级计算机拥有 285000 个 CPU 核以及 10000 个 GPU,供 OpenAI 在上面训练所有的 AI 模型。

大型语言模型虽然训练昂贵,但也有其重要的一面,例如可以在各种任务中执行小样本学习,包括阅读理解、问答。虽然这些模型可以通过简单地使用更多参数来获得更好的性能。但是有没有方法可以更有效地训练和使用这些模型呢?

为了回答这个问题,谷歌推出了具有万亿权重的通用语言模型 (GeneRalist Language Model,GLaM),该模型的一大特点就是具有稀疏性,可以高效地进行训练和服务(在计算和资源使用方面),并在多个小样本学习任务上取得有竞争力的性能。

数据集

谷歌首先构建了一个高质量的、具有 1.6 万亿 Token 的数据集,该无标签数据集很大一部分来自 Web 页面,其范围从专业写作到低质量的评论和论坛页面。此外,谷歌还开发了一个文本质量过滤器,该过滤器是在维基百科和书籍文本数据集上训练而成,由于过滤器训练的数据集质量很高,所以谷歌将其过滤 Web 网页内容的质量。最后,谷歌应用这个过滤器来生成 Web 网页的最终子集,并将其与书籍和维基百科数据相结合来创建最终的训练数据集。

GLaM 模型架构

GLaM 是混合专家模型 (MoE) ,这种模型可以被认为具有不同的子模型(或专家),每个子模型都专门用于不同的输入。每一层的专家由一个门控网络控制,该门控网络根据输入数据激活专家。对于每个 Token(通常是一个词或词的一部分),门控网络选择两个最合适的专家来处理数据。完整的 GLaM 总共有 1.2T 参数,每个 MoE 包含 64 个专家,总共 32 个 MoE 层,但在推理期间,模型只会激活 97B 的参数,占总参数的 8%。

GLaM 的体系架构,每个输入 Token 都被动态路由到从 64 个专家网络中选择的两个专家网络中进行预测。

实验结果

当每个 MoE 层只有一个专家时,GLaM 缩减为一个基于 TRansfoRMeR 的基础密集模型架构。在所有试验中,谷歌使用「基础密集模型大小 / 每个 MoE 层的专家数量」来描述 GLaM 模型。比如,1B/64E 表示是 1B 参数的密集模型架构,每隔一层由 64 个专家 MoE 层代替。

谷歌测试了 GLaM 的性能和扩展属性,包括在相同数据集上训练的基线密集模型。与最近微软联合英伟达推出的 MegatRon-TuRing 相比,GLaM 使用 5% MaRgin 时在 7 项不同的任务上实现了不相上下的性能,同时推理过程中使用的算力减少了 4/5。

此外,在推理过程中使用算力更少的情况下,1.2T 参数的稀疏激活模型(GLaM)在更多任务上实现了比 1.75B 参数的密集 GPT-3 模型更好的平均结果。

谷歌总结了 29 个基准上,GLaM 与 GPT-3 的性能比较结果。结果显示,GLaM 在 80% 左右的 zeRo-shot 任务和 90% 左右的 one-shot 任务上超越或持平 GPT-3 的性能。

OpenMagic API

Need more than content? Move into the product flow.

If you are here for model access, pricing, developer docs, or the future API console, the dedicated product path now lives on api.openmagic.ai.

登录免费注册