写点什么

极客说|微软新模型:Phi-4 来了

  • 2024-12-27
    北京
  • 本文字数:4027 字

    阅读完需:约 13 分钟

大小:1.78M时长:10:23
极客说|微软新模型:Phi-4 来了

Phi-4 在仅有 140 亿(14B) 个参数的情况下,通过创新的训练方法和高质量的数据,展现出了媲美甚至超越一些更大规模模型的性能。本文将详细介绍 Phi-4 的架构、特点、训练方法,以及在实际应用和评测基准中的表现。


后续 Phi-4 的测试会放到这个 repo 的 LLM 目录下:

https://github.com/xinyuwei-david/david-share.git

看指标测能力





下面测三道题,对比 o1 和 Phi-4。

第一题


Phi-4


o1


第二题


Phi-4

o1

第三题


Phi-4

o1


要求五个连续偶数的平均数,已知它们的和为90,下面我们逐步解答。// MSDN_InfoQ_KeyPart1 = "Microsoft”
步骤1:设未知数
设这五个连续的偶数为:
第一个偶数:( n - 4 )
第二个偶数:( n - 2 )
第三个偶数:( n )
第四个偶数:( n + 2 )
第五个偶数:( n + 4 )
(因为偶数之间相差2,所以相邻的偶数可以这样表示)
步骤2:列方程求和
根据题目,五个数的和为90:
[
(n - 4) + (n - 2) + n + (n + 2) + (n + 4) = 90
]
步骤3:简化方程
合并同类项:
[
5n = 90
]
步骤4:求解 n
[
n = \frac{90}{5} = 18
]
步骤5:求出五个偶数
第一个偶数:( 18 - 4 = 14 )
第二个偶数:( 18 - 2 = 16 )
第三个偶数:( 18 )
第四个偶数:( 18 + 2 = 20 )
第五个偶数:( 18 + 4 = 22 )
步骤6:计算平均数
平均数等于总和除以数量:
[
\text{平均数} = \frac{14 + 16 + 18 + 20 + 22}{5} = \frac{90}{5} = 18
]
答案:这五个连续的偶数的平均数是 18。
复制代码


这样看的话,Phi-4 的推理能力还是可以的。


Phi-4 模型架构


基于 Transformer 的解码器架构

Phi-4 采用了基于 Transformer 的解码器(Decoder-only) 架构,与 GPT 系列模型类似。这种架构利用自注意力机制(Self-Attention Mechanism),能够有效捕捉文本序列中的长期依赖关系,擅长处理自然语言生成任务。


参数规模与层数

  • 参数总量:140 亿(14B) 个参数。

  • 模型层数:40 层


上下文长度

  • 初始上下文长度:4,096 个 Token。

  • 中期训练扩展:在中期训练阶段,Phi-4 的上下文长度扩展到了 16,000 个 Token(16K),提高了模型处理长文本的能力。


词汇表与分词器

  • 分词器:采用了 OpenAI 的 tiktoken 分词器,支持多语言,并具有更好的分词效果。

  • 词汇表大小:100,352,包括了一些预留的未使用 Token。


注意力机制与位置编码


全局注意力机制

Phi-4 使用了全注意力机制(Full Attention),即对整个上下文序列进行自注意力计算。这与前代模型不同,Phi-3-medium 采用了 2,048 Token 的滑动窗口,而 Phi-4 则直接对 4,096 Token(初始)和 16,000 Token(扩展后)的上下文进行全局注意力计算,提高了模型对长距离依赖的捕捉能力。


旋转位置编码(RoPE)

为了支持更长的上下文长度,Phi-4 在中期训练中调整了旋转位置编码(Rotary Position Embeddings, RoPE) 的基频:

  • 基频调整:将 RoPE 的基频增加到 250,000,以适应 16K 的上下文长度。

  • 作用:RoPE 有助于模型在长序列中保持位置编码的有效性,使得模型能够在更长的文本中保持良好的性能。


训练策略与方法


数据质量优先的理念

Phi-4 的训练策略以数据质量为核心。与其他主要使用互联网有机数据(如网页内容、代码等)进行预训练的模型不同,Phi-4 在整个训练过程中战略性地引入了合成数据


合成数据的生成与应用

合成数据在 Phi-4 的预训练和中期训练中扮演了关键角色:

  • 多种数据生成技术

    多代理提示(Multi-Agent Prompting):利用多个语言模型或代理共同生成数据,丰富了数据的多样性。

    自我修正流程(Self-Revision Workflows):模型生成初始输出后,进行自我评估和修正,迭代提升输出质量。

    指令反转(Instruction Reversal):从已有的输出生成对应的输入指令,增强模型的指令理解和生成能力。

  • 合成数据的优势

    结构化和渐进式学习:合成数据可以精确控制难度和内容,逐步引导模型学习复杂的推理和问题解决能力。

    提高训练效率:合成数据的生成可以针对模型的薄弱环节,提供针对性的训练数据。

    避免数据污染:由于合成数据是生成的,避免了训练数据中包含评测集内容的风险。


有机数据的精细筛选和过滤

除了合成数据,Phi-4 还注重从多种来源精心挑选和过滤高质量的有机数据

  • 数据来源:包括 Web 内容、书籍、代码库、学术论文等。

  • 数据过滤

    去除低质量内容:使用自动化和手动方法,过滤掉无意义、错误、重复或有害的内容。

    防止数据污染:采用混合 n-gram 算法(13-gram 和 7-gram)进行去重和去污染,确保训练数据不包含评测集的内容。


数据混合策略

Phi-4 在训练数据的组成上进行了优化,具体配比如下:

  • 合成数据:占 40%。

  • 网络改写数据(Web Rewrites):占 15%,对高质量的 Web 内容进行改写,生成新的训练样本。

  • 有机 Web 数据:占 15%,精选过的有价值的 Web 内容。

  • 代码数据:占 20%,包括公开代码库和生成的代码合成数据。

  • 目标获取数据(Targeted Acquisitions):占 10%,包括学术论文、专业书籍等高价值内容。


多阶段训练流程

训练阶段

  • 目标:建立模型的基础语言理解和生成能力。

  • 数据量:约 10 万亿(10T) 个 Token。


中期训练阶段

  • 目标:扩展上下文长度,提升长文本处理能力。

  • 数据量:2,500 亿(250B) 个 Token。


后训练阶段(微调)

  • 监督微调(SFT):使用高质量的多领域数据进行微调,改进模型的指令遵循能力和回答质量。

  • 直接偏好优化(DPO):利用 关键 Token 搜索(Pivotal Token Search, PTS) 等方法,进一步优化模型的输出。


创新的训练技术


关键 Token 搜索(Pivotal Token Search, PTS)

PTS 方法是 Phi-4 训练过程中的一大创新:

  • 原理:通过识别在生成过程中对答案正确性有重大影响的关键 Token,针对性地优化模型在这些 Token 上的预测。

  • 优势

    提高训练效率:将优化重点放在对结果影响最大的部分,事半功倍。

    改善模型性能:有助于模型在关键决策点上做出正确选择,提高整体输出质量。


改进的直接偏好优化(DPO)

  • DPO 方法:直接使用偏好数据进行优化,使模型的输出更符合人类的偏好。

  • 创新点

    结合 PTS:在 DPO 中引入 PTS 生成的训练数据对,提高优化效果。

    评估指标:通过对模型在关键 Token 上的表现进行评估,更精确地衡量优化效果。


模型特点与优势


卓越的性能

  • 小模型,大能力:虽然参数规模仅为 14B,但 Phi-4 在多个评测基准上表现出色,尤其是在推理和问题解决任务上。


优异的推理能力

  • 数学和科学问题解决:在 GPQA、MATH 等基准测试中,Phi-4 的得分甚至超过了其教师模型 GPT-4o。


长上下文处理能力

  • 上下文长度扩展:通过在中期训练中将上下文长度扩展到 16,000 个 Token,Phi-4 能够更有效地处理长文本和长距离依赖。


多语言支持

  • 覆盖多种语言:训练数据包括了 德语、西班牙语、法语、葡萄牙语、意大利语、印地语、日语 等多种语言。

  • 跨语言能力:在翻译、跨语言问答等任务上表现出色。


安全性和合规性

  • 负责任的 AI 原则:开发过程中严格遵循微软的负责任 AI 原则,注重模型的安全性和道德性。

  • 数据去污染和隐私保护:采用严格的数据去重和过滤策略,防止训练数据中包含敏感内容。


评测基准与性能表现


外部评测基准

Phi-4 在多个公开的评测基准上展现了领先的性能:    

  • MMLU(多任务语言理解):在复杂的多任务理解测试中取得了优异的成绩。

  • GPQA(研究生水平的 STEM 问答):在高难度的 STEM 问答中表现突出,得分超过了一些更大规模的模型。

  • MATH(数学竞赛):在数学问题解决方面,Phi-4 展现了强大的推理和计算能力。

  • HumanEval / HumanEval+(代码生成):在代码生成和理解任务中,Phi-4 的得分超越了同规模的模型,甚至接近更大规模的模型。


内部评测套件(PhiBench)

为了深入了解模型的能力和不足,团队开发了专门的内部评测套件 PhiBench

  • 多样化的任务:包括代码调试、代码补全、数学推理、错误识别等。

  • 指导模型优化:通过对 PhiBench 的成绩分析,团队能够有针对性地改进模型。


安全性与责任


严格的安全对齐策略

Phi-4 的开发遵循微软的负责任 AI 原则,在训练和微调过程中注重模型的安全性和道德性:

  • 防范有害内容:通过在后训练阶段加入安全微调数据,减少模型生成不当内容的概率。

  • 红队测试和自动评估:进行了广泛的红队测试和自动化的安全评估,覆盖数十种潜在的风险类别。


数据去污染和防止过拟合

  • 强化的数据去污染策略:使用混合的 13-gram 和 7-gram 算法,去除训练数据中可能与评测基准重叠的内容,防止模型过拟合。


训练资源与时间


训练时间

虽然官方报告未明确指出 Phi-4 的总训练时间,但考虑到:

  • 模型规模:14B 参数。

  • 训练数据量:预训练阶段 10T Token,中期训练 250B Token。

可以推测,整个训练过程耗费了相当长的时间。


GPU 资源消耗

GPUs

1920 H100-80G

Training time

21 days

Training data

9.8T tokens


应用与局限性


应用场景

  • 问答系统:Phi-4 在复杂的问答任务中表现出色,适用于各类智能问答应用。

  • 代码生成与理解:在编程任务中有优异表现,可用于代码辅导、自动生成和调试等场景。

  • 多语言翻译与处理:支持多种语言,适用于全球化的语言服务。


潜在局限性

  • 知识截止性:模型的知识截止于训练数据,对于训练后发生的事件可能不了解。

  • 长序列挑战:虽然上下文长度扩展到了 16K,但在处理更长的序列时,可能仍然存在挑战。

  • 风险控制:尽管采取了严格的安全措施,但模型可能仍会受到对抗性攻击或意外生成不当内容。


Phi-4 的成功展示了数据质量和训练策略在大型语言模型发展中的重要性。通过创新的合成数据生成方法、精心的训练数据混合策略以及先进的训练技术,Phi-4 在保持较小参数规模的情况下,实现了卓越的性能:

  • 推理能力突出:在数学、科学和编程等领域表现优异。

  • 长文本处理:扩展的上下文长度,使模型在长文本处理任务中具有优势。

  • 安全和责任:严格遵循负责任 AI 原则,确保模型的安全性和道德性。


Phi-4 为小参数量模型的发展树立了新的标杆,证明了通过专注于数据质量和训练策略,即使在较小的参数规模下,也能实现卓越的性能


参考论文:

/https://www.microsoft.com/en-us/research/uploads/prod/2024/12/P4TechReport.pdf


更多精彩内容请点击下载

《Azure OpenAI 生成式人工智能白皮书》

《利用 AI 和 DevOps 重新定义开发人员体验》

《SAP on Microsoft Cloud》

《智能GitHub Copilot副驾驶®提示和技巧》

2024-12-27 16:1011548

评论

发布
暂无评论
发现更多内容

Zebec生态持续深度布局,ZBC通证月内翻倍或只是开始

西柚子

大数据时代下的企业网络安全

镭速

数字山河一盘棋:2023新华三如何发力商业市场?

脑极体

新华三

Zebec官方辟谣“我们与Protradex没有任何关系”

西柚子

数据隔离方案

Y

MAR:针对动作识别的视频掩码建模

Zilliz

2023年Web安全最详细学习路线指南,从入门到入职(含书籍、工具包)【建议收藏】

网络安全学海

黑客 网络安全 信息安全 渗透测试 WEB安全

GitHub标星30K+的Java面试八股文长啥样?

小小怪下士

Java 程序员 面试

数据服务门槛再提升,这个“TOP1玩家”凭何再度领军?

澳鹏Appen

人工智能 自动驾驶 智能驾驶 数据标注

关于云原生,我问了ChatGPT几个问题......

拓维信息

DevOps 云原生 ChatGPT

大势前瞻!文旅还是短视频,你弯道超车风口在这了

引迈信息

创业 投资 短视频 旅游 创业项目风口

一款互联网SaaS产品都包含哪些内容

Y

软件测试/测试开发 | 黑盒测试方法论—因果图

测试人

软件测试 自动化测试 测试开发 测试用例 测试方法

阿凡达(Avata)泰山众筹系统开发部署技术

薇電13242772558

智能合约 dapp

做好产业数字化助手,腾讯云助力贝壳实现降本增效与业务创新

科技热闻

【深度挖掘 RocketMQ底层源码】「底层源码挖掘系列」抽丝剥茧贯穿RocketMQ的消费者端的运行核心的流程(Pull模式-下)

洛神灬殇

RocketMQ 消息队列 源码解析 原理解析

2023-02-22:请用go语言调用ffmpeg,保存mp4文件的视频帧,每帧用ppm图片保存。

福大大架构师每日一题

golang ffmpeg 福大大

模块七作业

张贺

架构训练营

架构实战营模块1作业

新耀东方-2023第二届上海网络安全博览会暨高峰论坛 SCSF-SHANGHAI CYBER SECURITY FAIR AND SUMMIT FORUM 2023

Anthony

网络安全 信息安全 大数据 开源

乌托邦UTO系统开发NFT技术

薇電13242772558

NFT

白鲸开源发布迁移工具 Airphin 并开源,2 步迁移 Airflow 至 Dolphinscheduler

白鲸开源

Apache 开源 Apache DolphinScheduler airflow Airphin

10 个值得掌握的 reduce 技巧

devpoint

JavaScript reduce 数组方法

好用的录屏工具值得免费拥有

穿过生命散发芬芳

录屏工具

2023 版最新大数据面试宝典

五分钟学大数据

大数据 大数据面试

netstat与ss

飞翔

K8S发布应用步骤详解

tiandizhiguai

云原生 k8s

软件测试/测试开发 | 黑盒测试方法论—场景法

测试人

软件测试 自动化测试 测试开发 测试用例 测试方法

Zebec官方辟谣“我们与Protradex没有任何关系”

股市老人

极客说|微软新模型:Phi-4 来了_微软_微软中国MSDN_InfoQ精选文章