当前位置: 首页 > news >正文

#Paper Reading# Apple Intelligence Foundation Language Models

论文题目: Apple Intelligence Foundation Language Models
论文地址: https://arxiv.org/pdf/2407.21075
论文发表于: arXiv 2024年7月
论文所属单位: Apple

论文大体内容
本文介绍了Apple AFM团队的2个基础大模型,分别可在服务端和客户端上运行。这两个大模型是Apple的基础模型,文中描述了从训练到评估模型的各个模块。

Motivation
这是Apple的基础大模型。

Contribution
①技术落地的完整性,本文详细描述了训练AFM的各个模块和步骤。
②提出了从基础模型扩展到具体任务的整体框架,用于Apple后续各个应用的落地。
③强调负责任的AI实践,包括整个流程的Principles,以及注重用户的隐私。


1. 本文主要介绍了Apple AFM组(Apple Foundation Model)的2个基础大模型,包括:
①AFM-on-device:3B参数的模型,运行于设备端;
②AFM-server:主LLM模型,用于对标GPT系列;
这两个基础模型主要提供2个应用场景:
①Coding model:在Xcode中提供给开发者使用;
②Diffusion model:在App中提供给用户使用,比如Messages App;

2. Apple对LLM开发时候遵守的Principles包括:
①用智能工具赋能用户
②代表我们的用户
③谨慎设计
④保护隐私
这几个Principles是公司文化的体现。

3. LLM整体架构采用了业界主流的Transformer架构,主要有以下几点选择:
①一个共享的输入/输出嵌入矩阵,节省内存;
②Pre-Normalization和RMSNorm;
③Q/K进行归一化,提升训练稳定性;
④GQA(Grouped-query attention),节省内存;
⑤SwiGLU激活函数[1];
⑥RoPE位置嵌入,支持更长的context;

4. LLM的整体尺寸信息如下,参数量计算公式是:N*(12*D*D+13*D),其中D=n*d。
-N是Transformer的层数
-n是MHA中head的数量
-d是MHA中每个头的dim

【Pre-training阶段】
5. 数据:
使用Applebot抓取的数据。本文指出数据的质量比数量更重要。
①网页数据:
-抽取正文
-使用启发式方法和模型进行安全性过滤来处理网页文本
-数据去重,使用n-gram哈希
-使用启发式方法和模型进行质量筛选
-对常用的基准数据集进行处理
②授权数据集:来自于出版商
③代码数据:来自于Github
④数学数据:网络爬取
⑤公开的高质量数据集
⑥分词器:BPE(byte-pair encoding)

6. 方法:
AFM Pre-training分为3个阶段:
①核心阶段:使用6.3T token训练,用了8192个TPUv4芯片,4096的序列长度
②延续阶段:弱化低质量数据集,强化高质量数据集,用了8192的序列长度
③context扩展阶段:提升context长度,用了32768的序列长度
优化器使用RMSProp。
其中AFM-on-device是AFM-server的蒸馏版本,使用了知识蒸馏和结构剪枝来降低模型大小。


【Post-Training阶段】
7. 数据:
包括人工标注数据和合成数据。本文指出数据的质量比数量更重要。
①人工标注数据
②合成数据:提升多样性

8. SFT(Supervised fine-tuning)
使用标注数据进行SFT。

9. RLHF
①iTeC(Iterative teaching committee)
该框架有效地结合了各种偏好优化算法,包括拒绝采样(RS)、直接偏好优化(DPO)以及在线强化学习(RL)。这使我们能够将RLHF的优势应用于各种规模的模型,同时提高它们的对齐性。
②MDLOO(Mirror Descent with Leave-One-Out estimation)
比PPO更有效。

10. 拒绝采样的理解[2]
①属于蒙特卡洛方法的一种,本质是通过一个提议分布(均匀分布或正态分布)q(x),来采样出目标分布p(x)。如果从q(x)中随机出来的 x <= p(x) 则采样,否则不采样。
②在LLM中使用拒绝采样的方式是让LLM生成多个答案,然后用 V3 判断哪个回答好,好的回答当作接下来的 SFT 数据,不断螺旋上升(DeepSeek R1[3])。

11. 基于基础模型扩展到具体任务:通过LoRA、量化进行微调,整体框架如下:

12. 效果评估
①Pre-Training阶段:主要使用了基准数据集MMLU(多选题Multi-subject multiple-choice)评估


②Post-Training阶段:主要使用了人工评估,能更接近于用户体验
-基准测试 HELM-Lite v1.5.0


-人工评估


-指令遵循


-工具使用


-写作


-数学:GSM8K、MATH


-摘要人工评估

13. Responsible AI(安全性)
①安全标准:该分类标准包含12个主要类别,下设51个子类别,其中包括“仇恨言论、刻板印象与诋毁性语言”、“歧视、边缘化与排斥”、“非法活动”、“成人色情内容”以及 “血腥暴力内容”。
②Pre-Training阶段:训练语料的的安全过滤、隐私信息过滤;
③Post-Training阶段:10%的数据用于对抗训练,与安全相关;
④防范恶意代码:将所有生成的代码视为不安全代码,代码只会在封闭的环境里执行
⑤Red Teaming:主动诱导、攻击的测试;
⑥安全性评估:本模型效果相比GPT等更优;


14. 这篇论文比较完整的展示了Apple LLM模型的各个环节,对大家了解LLM的工作有一些帮助,文章写的比较务实。整体来看是中规中矩,学术性的突破不多,更多是具体落地的工程实践。


参考资料
[1] 详解SwiGLU激活函数 https://zhuanlan.zhihu.com/p/31289994147
[2] 拒绝采样 https://blog.csdn.net/jteng/article/details/54344766
[3] DeepSeek R1 https://blog.csdn.net/John159151/article/details/147687702

以上均为个人见解,因本人水平有限,如发现有所错漏,敬请指出,谢谢!

http://www.xdnf.cn/news/1118863.html

相关文章:

  • 硬件工程师笔试面试高频考点汇总——(2025版)
  • ROS2中的QoS(Quality of Service)详解
  • Lucene原理
  • Linux | 数据库操作基础
  • 从文本中 “提取” 商业洞察“DatawhaleAI夏令营”
  • MCP 服务开发到发布
  • 1.1.5 模块与包——AI教你学Django
  • 大模型微调(一):基于Swift框架进行自我认知微调(使用Lora微调Qwen3-8B模型)
  • 系规备考论文:论IT服务部署实施方法
  • 17.使用DenseNet网络进行Fashion-Mnist分类
  • 【数据结构】图 ,拓扑排序 未完
  • INA226 数据手册解读
  • HTTP与HTTPS详解
  • 闲庭信步使用图像验证平台加速FPGA的开发:第十二课——图像增强的FPGA实现
  • opencv4.12 vs2022 cmake contrib编译
  • 基于MATLAB的Lasso回归的数据回归预测方法应用
  • 零基础完全理解视觉语言模型(VLM):从理论到代码实践
  • 【Mysql作业】
  • 从零开始学习深度学习—水果分类之PyQt5App
  • C++高频知识点(十三)
  • 掌握系统设计的精髓:12个核心设计模式的通俗解读
  • sql:sql在office中的应用有哪些?
  • 谷歌在软件工程领域应用AI的进展与未来展望
  • 数智管理学(三十三)
  • AI生成单词消消乐游戏. HTML代码
  • Opencv---blobFromImage
  • NO.4数据结构数组和矩阵|一维数组|二维数组|对称矩阵|三角矩阵|三对角矩阵|稀疏矩阵
  • 在conda的环境中安装Jupyter及其他软件包
  • SpringBoot单元测试类拿不到bean报空指针异常
  • python函数快捷的传变量地址