要说 ChatGPT 拉开了大模型竞赛的序幕,那么 Meta 开源 Llama 系列模型则掀起了开源领域的热潮。在这当中,苹果似乎掀起的水花不是很大。不过,苹果最新放出的论文,传神社区看到其在开源领域做出的贡献。近日,苹果发布了 OpenELM,共四种变体(参数量分别为 270M、450M、1.1B 和 3B),这是一系列基于公开数据集进行预训练和微调的模型。OpenELM 的核心在于逐层缩放,即 OpenELM 中的每个 Transformer 层都有不同的配置(例如,头数和前馈网络维度),导致模型每层的参数数量不同,从而实现了更有效的跨层参数分配。
值得一提的是,苹果这次发布了完整的框架,包括数据准备、训练、微调和评估程序,以及多个预训练的 checkpoint 和训练日志,以促进开源研究。
OpenELM模型的技术细节和特点:
1:超小规模模型
OpenELM着眼于超小规模模型,提供270M、450M、1.1B和3B四个不同参数规模的版本,每个规模都包含预训练和指导版本。相对于微软Phi-3 Mini的38B和谷歌Gemma的20B,OpenELM的运行成本更低,可以在手机、笔记本电脑等设备上运行,无需依赖云服务器支持。
2:独特的架构
OpenELM采用纯解码器Transformer架构,这也是微软Phi-3 Mini和其他LLM的基础。它由多个相互连接的层组成,每个层都负责接收、处理和传递信息,最终输出响应。与传统LLM不同的是,OpenELM中每个Transformer层都有不同的配置,包括注意力头数和前馈网络维度等,使得每层参数数量不同。这种逐层缩放的设计能更有效地利用参数预算,提高模型精度。
苹果采用了逐层缩放的方法来实现参数的非均匀分配。标准的Transformer层通常由多头注意力(MHA)和前馈网络(FFN)组成,而OpenELM通过调整每个Transformer层的注意力头数和FFN乘法器,使得模型能够更灵活地调整参数,从而达到更好的效果。
3:预训练与数据集
对于预训练,苹果使用公共数据集。具体来说,他们的预训练数据集包含 RefinedWeb、deduplicated PILE、RedPajama 的子集和 Dolma v1.6 的子集,总计约 1.8 万亿个 token 。
苹果使用自家开源的 CoreNet 库(以前称为 CVNets ,专门用于训练深度神经网络)训练 OpenELM 变体,训练过程迭代了 35 万次。最终训练出了 OpenELM 四种变体(参数量为 270M、450M、1.1B 和 3B)。
-
论文推荐:https://opencsg.com/daily_papers/B2WkdbvEhXV6
-
项目地址:https://github.com/apple/corenet
-
论文标题:OpenELM: An Efficient Language Model Family with Open-source Training and Inference Framework
-
传神社区模型地址:
-
https://opencsg.com/models/MagicAI/OpenELM-3B-Instruct
-
https://opencsg.com/models/MagicAI/OpenELM-270M-Instruct
-
https://opencsg.com/models/MagicAI/OpenELM-450M-Instruct
-
https://opencsg.com/models/MagicAI/OpenELM-1_1B-Instruct
“ 关于OpenCSG
开放传神(OpenCSG)成立于2023年,是一家致力于大模型生态社区建设,汇集人工智能行业上下游企业链共同为大模型在垂直行业的应用提供解决方案和工具平台的公司。
关注OpenCSG
加入传神社区