当下的 LLM 训练主要围绕几种算法展开,包括预训练 / 继续预训练、监督微调(SFT)和基于人类反馈的强化学习微调(RLHF,如 PPO/DPO)。这些算法通过分阶段优化,逐步提升模型的通用性、任务适配性和人类偏好对齐能力。

预训练 / 继续预训练 (Pretrain)

预训练是通过无监督学习在海量通用文本数据上训练模型,使其掌握语言的语法、语义和世界知识。例如,GPT-3 在 45TB 文本上学习预测下一个 token,形成基础语言理解能力。继续预训练则是在基础模型上引入特定领域数据(如医学文献、法律条文),进一步增强专业知识,同时保留通用能力,例如 BioBERT 在生物医学语料上的二次训练。

优缺点

  • 优点:

    1. 泛化能力强, 可以迁移到多种下游任务, 减少反复训练成本.

    2. 无需标注, 基于自监督学习 (掩码语言建模, 因果语言建模) 高效利用无标注数据.

    3. 继续预训练能够针对性提升领域知识, 特别适用于故事生成或法律条文生成等强调语法和语言风格的场景.

  • 缺点:

    1. 相比监督微调, 继续预训练计算成本较高, 特别是在大型模型上.

    2. 数据偏差可能导致模型生成偏见.

适用性

  • 适用:

    1. 需构建通用语言能力的场景 (如文书润色, 故事生成).

    2. 领域数据丰富但标注成本高.

  • 不适用:

    1. 对领域专业性要求极高且数据稀疏的场景.

    2. 需严格遵循特定输出格式的结构化输出任务.

监督微调 (Supervised Finetune)

监督微调是在预训练模型基础上,使用人工标注的任务特定数据(如 “prompt-answer” 对)进行有监督训练,使其掌握具体任务逻辑。例如,ChatGPT 通过 SFT 学习遵循用户指令生成连贯回答。

优缺点

  • 优点:

    1. 在通用能力基础上, 显著提升特定任务性能.

    2. 广泛使用参数高效微调技术 (如 LoRA, Prefix-Tuning), 可在有限算力设备上完成大型模型适配.

    3. 在结构化输出任务上表现优异, 可控制输出风格和领域术语.

  • 缺点:

    1. 依赖高质量标注数据, 小样本场景可能过拟合 (但某些 SFT 任务上, 过拟合并不是坏事).

    2. 数据标注成本高, 需要人类专家介入数据标注.

    3. 难以覆盖复杂或隐含的人类偏好 (如创造性写作的 “语感”).

适用性

  • 适用:

    1. 任务明确且有高质量标注数据的场景 (如 Json 格式化输出, 文本摘要, 知识库系统等).

    2. 需快速适配新领域的场景 (如 Agentic 格式化输出任务).

  • 不适用:

    1. 任务目标模糊或依赖主观判断的场景 (如小说创作, 剧本生成).

    2. 数据噪声大或标注困难的场景.

强化学习 / 人类反馈强化学习 (RLHF, 即 PPO / DPO)

RL 通过引入规则奖励人类反馈, 引导语言模型生成更符合要求或用户偏好的内容.

优缺点

  • 优点:

    1. 显著对齐人类专家偏好.

    2. 可处理复杂偏好或学习隐含模式, 在建模隐含模式上显著优于监督学习.

    3. DPO 算法略过奖励模型训练, 通过对比学习简化流程并提升稳定性.

  • 缺点:

    1. 训练不稳定, 易出现奖励崩溃或策略退化, 需要大量时间优化训练算法.

    2. 计算成本高, PPO 需多次采样生成输出, 推理资源消耗数倍于监督微调.

适用性

  • 适用:

    1. 多目标优化问题 (例如平衡写作的 “创新性” 和 “逻辑性”).

    2. 隐含目标优化问题, 任务目标不清晰或评判标准的主观性强, 最终评价体系难以被归纳.

    3. 强调泛化能力的场景, 相比监督微调, RL 有显著的泛化优势, 模型通常不会在强化学习中过拟合.

  • 不适用:

    1. 任务规则明确可归纳的场景, 更适合使用提示词方法.

    2. 资源受限场景, 强化学习需要时间与算力支撑.