|
Phi-4 在仅有 140 亿(14B)个参数的情况下,通过创新的训练方法和高质量的数据,展现出了媲美甚至超越一些更大规模模型的性能。本文将详细介绍 Phi-4 的架构、特点、训练方法,以及在实际应用和评测基准中的表现。
后续 Phi-4 的测试会放到这个 repo 的 LLM 目录下: https://github.com/xinyuwei-david/david-share.git
要求五个连续偶数的平均数,已知它们的和为90,下面我们逐步解答。
步骤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 采用了基于 Transformer 的解码器(Decoder-only)架构,与 GPT 系列模型类似。这种架构利用自注意力机制(Self-Attention Mechanism),能够有效捕捉文本序列中的长期依赖关系,擅长处理自然语言生成任务。 参数总量:140 亿(14B)个参数。 模型层数:40层
Phi-4 使用了全注意力机制(Full Attention),即对整个上下文序列进行自注意力计算。这与前代模型不同,Phi-3-medium 采用了 2,048 Token 的滑动窗口,而 Phi-4 则直接对 4,096 Token(初始)和 16,000 Token(扩展后)的上下文进行全局注意力计算,提高了模型对长距离依赖的捕捉能力。 为了支持更长的上下文长度,Phi-4 在中期训练中调整了旋转位置编码(Rotary Position Embeddings, RoPE)的基频:
Phi-4 的训练策略以数据质量为核心。与其他主要使用互联网有机数据(如网页内容、代码等)进行预训练的模型不同,Phi-4 在整个训练过程中战略性地引入了合成数据。 合成数据在 Phi-4 的预训练和中期训练中扮演了关键角色:
多种数据生成技术: 多代理提示(Multi-Agent Prompting):利用多个语言模型或代理共同生成数据,丰富了数据的多样性。 自我修正流程(Self-Revision Workflows):模型生成初始输出后,进行自我评估和修正,迭代提升输出质量。 指令反转(Instruction Reversal):从已有的输出生成对应的输入指令,增强模型的指令理解和生成能力。
合成数据的优势: 结构化和渐进式学习:合成数据可以精确控制难度和内容,逐步引导模型学习复杂的推理和问题解决能力。 提高训练效率:合成数据的生成可以针对模型的薄弱环节,提供针对性的训练数据。 避免数据污染:由于合成数据是生成的,避免了训练数据中包含评测集内容的风险。
除了合成数据,Phi-4 还注重从多种来源精心挑选和过滤高质量的有机数据:
Phi-4 在训练数据的组成上进行了优化,具体配比如下: 合成数据:占 40%。 网络改写数据(Web Rewrites):占 15%,对高质量的 Web 内容进行改写,生成新的训练样本。 有机 Web 数据:占 15%,精选过的有价值的 Web 内容。 代码数据:占 20%,包括公开代码库和生成的代码合成数据。 目标获取数据(Targeted Acquisitions):占 10%,包括学术论文、专业书籍等高价值内容。
预训练阶段:
目标:建立模型的基础语言理解和生成能力。 数据量:约 10 万亿(10T)个 Token。
中期训练阶段:
后训练阶段(微调): 监督微调(SFT):使用高质量的多领域数据进行微调,改进模型的指令遵循能力和回答质量。 直接偏好优化(DPO):利用关键 Token 搜索(Pivotal Token Search, PTS)等方法,进一步优化模型的输出。
关键 Token 搜索(Pivotal Token Search, PTS) PTS 方法是 Phi-4 训练过程中的一大创新:
Phi-4 在多个公开的评测基准上展现了领先的性能: MMLU(多任务语言理解):在复杂的多任务理解测试中取得了优异的成绩。 GPQA(研究生水平的 STEM 问答):在高难度的 STEM 问答中表现突出,得分超过了一些更大规模的模型。 MATH(数学竞赛):在数学问题解决方面,Phi-4 展现了强大的推理和计算能力。 HumanEval / HumanEval+(代码生成):在代码生成和理解任务中,Phi-4 的得分超越了同规模的模型,甚至接近更大规模的模型。
为了深入了解模型的能力和不足,团队开发了专门的内部评测套件PhiBench: Phi-4 的开发遵循微软的负责任 AI 原则,在训练和微调过程中注重模型的安全性和道德性:
虽然官方报告未明确指出 Phi-4 的总训练时间,但考虑到:
可以推测,整个训练过程耗费了相当长的时间。 问答系统:Phi-4 在复杂的问答任务中表现出色,适用于各类智能问答应用。 代码生成与理解:在编程任务中有优异表现,可用于代码辅导、自动生成和调试等场景。 多语言翻译与处理:支持多种语言,适用于全球化的语言服务。
知识截止性:模型的知识截止于训练数据,对于训练后发生的事件可能不了解。 长序列挑战:虽然上下文长度扩展到了 16K,但在处理更长的序列时,可能仍然存在挑战。 风险控制:尽管采取了严格的安全措施,但模型可能仍会受到对抗性攻击或意外生成不当内容。
Phi-4 的成功展示了数据质量和训练策略在大型语言模型发展中的重要性。通过创新的合成数据生成方法、精心的训练数据混合策略以及先进的训练技术,Phi-4 在保持较小参数规模的情况下,实现了卓越的性能:
Phi-4 为小参数量模型的发展树立了新的标杆,证明了通过专注于数据质量和训练策略,即使在较小的参数规模下,也能实现卓越的性能。 |