LLM二、大模型如何训练
·
下面给你一份可工程化、可落地、带经验沉淀的 “大模型训练全景图”。内容覆盖数据、模型、训练、对齐、评估、工程化六大维度,适合作为团队内部的训练方法论。
一、训练的本质:在数据与算力之间寻找最优解
大模型训练不是 “堆参数”,而是一个由数据驱动、架构约束、算力限制共同决定的工程问题。
核心公式:模型能力 = f (数据质量 × 数据量 × 架构合理性 × 训练稳定性 × 对齐质量)
其中:
- 数据决定上限
- 架构决定效率
- 训练决定能否逼近上限
- 对齐决定是否可用
二、数据:决定模型上限的第一要素
1. 数据来源
- 公开网页(Common Crawl、CCNet)
- 书籍(BookCorpus、Gutenberg)
- 论文(arXiv)
- 代码(GitHub)
- 高质量垂直数据(法律、医疗、金融等)
- 人工标注数据(SFT、RLHF)
2. 数据质量要求
- 低噪音
- 低重复
- 低偏见
- 高信息密度
- 领域多样性
经验:
- 数据清洗比数据量更重要
- 100B 高质量 Token > 1T 低质 Token
- 重复数据会导致模型 “过拟合式退化”
3. 数据处理流程
- 去重(MinHash、SimHash)
- 去噪(规则 + 模型过滤)
- 过滤低质内容(垃圾文本、广告、色情、暴力)
- Tokenization(BPE、WordPiece、SentencePiece)
- 构建训练样本(上下文窗口切块)
三、模型架构:决定训练效率与推理成本
1. 主流架构
- Decoder-only(GPT、Llama、Qwen)
- Encoder-only(BERT)
- Encoder-Decoder(T5、Gemini)
- MoE(Mixture of Experts)(GLaM、Qwen3、GLM-4)
经验:
- 通用大模型:Decoder-only 占主导
- 多模态:Encoder-Decoder 更灵活
- 成本敏感场景:MoE 是未来方向
2. 关键架构参数
- 参数量(模型能力的基础)
- 层数(影响表达能力)
- 注意力头数(影响并行性与长距离捕捉)
- FFN 隐藏层维度(影响模型容量)
- 上下文窗口长度(影响任务适配)
- 归一化方式(LayerNorm / RMSNorm)
- 激活函数(GELU、SiLU)
经验:
- 增大上下文窗口比增大参数量更能提升任务表现
- RMSNorm + SiLU 是目前最稳定的组合
- Grouped-Query Attention(GQA)显著降低推理成本
四、训练流程:大模型训练的三大阶段
阶段 1:预训练(Pre-training)
目标:让模型学习语言规律、世界知识、基础逻辑。
核心任务:
- 自回归预测下一个 Token
训练要点:
- 学习率:1e-4 ~ 3e-4(视模型大小调整)
- 优化器:AdamW
- 权重衰减:0.1
- 梯度累积:解决单卡算力不足
- 混合精度训练(FP16/BF16)
- 分布式训练策略:
- 数据并行(DP)
- 张量并行(TP)
- 流水线并行(PP)
- 3D 并行(DeepSpeed、Megatron-LM)
经验:
- 预训练最容易失败的点是 “训练不稳定”
- 梯度爆炸 / 消失通常来自学习率过大或数据噪声
- 预训练不是越久越好,验证集困惑度下降停止即可
阶段 2:监督微调(SFT,Supervised Fine-tuning)
目标:让模型学会遵循指令,完成特定任务。
数据:
- 高质量指令 - 输出对
- 领域数据(如医疗、法律、代码)
训练方式:
- 全参数微调(效果最好但成本高)
- PEFT(LoRA、Adapter)(成本低、效果好)
经验:
- LoRA rank=8~64 是最佳区间
- 指令数据质量比数量更重要
- SFT 容易过拟合,要控制训练步数
阶段 3:对齐(Alignment)
目标:让模型输出符合人类偏好、安全、可用。
主流方法:RLHF(基于人类反馈的强化学习)
流程:
- 收集人类偏好数据(好 / 差回答排序)
- 训练奖励模型(RM)
- 使用 PPO 等算法优化策略模型
- (可选)RLAIF:用 AI 生成偏好数据降低成本
经验:
- RLHF 是最容易 “训坏模型” 的阶段
- 奖励模型过拟合会导致模型输出 “讨好型” 内容
- 必须加入安全对齐(Safety Alignment)
五、训练中的关键工程问题
1. 算力与分布式训练
- 常用 GPU:A100、H100、L40
- 训练框架:DeepSpeed、Megatron-LM、ColossalAI
- 关键技术:
- ZeRO(显存优化)
- 混合精度训练
- 梯度检查点(节省显存)
经验:
- 显存永远不够,要提前规划模型并行策略
- 张量并行维度最好是 2 的幂
2. 训练稳定性
常见问题:
- 梯度爆炸
- 训练 loss 不下降
- 模型发散(NaN)
- 过拟合
解决方法:
- 降低学习率
- 梯度裁剪
- 更换归一化方式
- 提高数据质量
- 增加 warmup 步数
3. 训练监控
必须监控:
- train loss / val loss
- 梯度范数
- 学习率变化
- 显存占用
- 模型输出示例(人工检查)
经验:
- 监控比调参更重要
- 人工抽查模型输出能提前发现退化
六、评估:判断模型是否 “可用”
评估维度:
- 通用能力(MMLU、GSM8K、HumanEval)
- 中文能力(C-Eval、AGIEval)
- 安全性(TruthfulQA、SafetyBench)
- 人类评估(偏好排序)
经验:
- 自动指标只能参考
- 真正决定模型质量的是 “人类评估”
七、训练大模型的经验总结(最重要)
- 数据质量决定上限,不要盲目堆数据量
- 模型越大越需要高质量数据
- 预训练是基础,SFT 是关键,RLHF 是灵魂
- 训练不稳定时优先检查数据,而不是调参
- 显存永远不够,要提前规划并行策略
- 对齐阶段最容易毁掉模型,必须谨慎
- 评估要结合自动指标 + 人工反馈
- 训练大模型是工程问题,不是科研问题
更多推荐
所有评论(0)