.. _llm_base: LLM建模的基本流程 ================= 在前面的章节中,我们介绍了Transformer的自回归生成机制和Diffusion的迭代去噪范式。实际上,\ **大语言模型(Large Language Model, LLM)本质上是规模化的Transformer模型**\ ,通过将Transformer架构扩展到数十亿甚至数万亿参数规模,并在海量文本数据上进行训练,展现出了令人惊叹的语言理解和生成能力。 从Transformer到LLM的演进,不仅仅是参数规模的增长,更重要的是\ **训练范式的系统化**\ 。早期的Transformer模型(如BERT、GPT-2)主要关注单一的预训练目标,而现代LLM(如GPT-3、GPT-4、LLaMA等)则发展出了一套完整的“预训练-指令微调-偏好对齐”三阶段训练流程,使得模型不仅能够生成流畅的文本,还能够理解复杂的指令、遵循人类意图、完成多样化的任务。 然而,将LLM应用于推荐系统并非简单地“套用”现成的语言模型,而是需要理解LLM建模的核心原理,并针对推荐场景进行适当的\ **改造和优化**\ 。本节将系统介绍LLM建模的基本流程,重点关注那些与生成式推荐密切相关的技术环节,为后续章节中端到端生成式推荐算法的介绍奠定基础。 LLM建模的三阶段范式 ------------------- 当前主流的LLM建模遵循\ **“预训练-指令微调-偏好对齐”**\ 三阶段范式,这一范式最早在InstructGPT中得到系统化的阐述 :cite:`ouyang2022training` ,并被后续的GPT-4、Claude、LLaMA等模型广泛采用。这三个阶段各有明确的目标和训练策略,共同构成了一个完整的模型能力构建体系。理解这三个阶段的核心思想和技术细节,对于掌握生成式推荐的实现至关重要。 .. _instructgpt_three_stages: .. figure:: ../img/InstructGPT.png :width: 600px InstructGPT后训练三阶段流程 如上图所示,InstructGPT论文给出了基于预训练模型之上的\ **后训练(post-training)**\ 流程,展示了使模型从“能生成文本”到“能遵循人类意图”的三个递进步骤。\ **第一步(Step 1)**\ 是收集示范数据并进行监督微调(SFT):人类标注者针对给定的提示词(prompt)编写高质量示范输出,这些数据用于对预训练模型做有监督微调,使模型初步学会遵循指令。\ **第二步(Step 2)**\ 是收集对比数据并训练奖励模型(RM):对同一提示词,让模型生成多个不同输出,标注者对这些输出进行排序(从最优到最差),这些偏好数据用于训练奖励模型,使其能够自动评估输出质量。\ **第三步(Step 3)**\ 是使用强化学习优化策略:以奖励模型作为反馈信号,通过近端策略优化(PPO)算法持续改进模型的生成策略,同时通过KL散度约束防止模型偏离参考模型(reference model)过远,确保训练稳定性。 预训练:语言能力基础 ~~~~~~~~~~~~~~~~~~~~ **预训练(Pre-training)**\ 是LLM建模的第一阶段,也是最耗费计算资源的阶段。预训练的目标是让模型在\ **大规模无标注文本数据**\ 上学习通用的语言表示和生成能力。这一阶段完全依赖\ **自监督学习**\ ,即通过数据本身构造训练信号,无需人工标注。 **训练目标:因果语言建模** 现代LLM(如GPT系列、LLaMA)主要采用\ **因果语言建模(Causal Language Modeling, CLM)**\ 作为预训练目标,也称为\ **下一个token预测(Next Token Prediction)**\ : .. math:: \mathcal{L}_{\text{CLM}} = -\sum_{i=1}^{n} \log p_\theta(x_i | x_{