当前位置: 首页 > news >正文

LLM大模型 - 大模型及其训练方式

一、简介

近期准备系统学习一下大模型LLM,本系列为学习过程中的笔记与心得记录。

内容涵盖:NLP基础概念、Transformer架构、预训练模型、大语言模型、模型部署与微调等。

本文是第五篇,简要梳理了什么是大语言模型及其大模型的训练的方式。

2022 年底,ChatGPT 的横空出世成为 NLP 领域的分水岭,主导地位从此由 BERT 系列模型转向了 LLM 大语言模型。研究范式也从传统的"预训练+微调"演进为"预训练→SFT→RLHF"三阶段流程,标志着 LLM 正式成为 NLP 舞台的核心主角。

这里我们把 LLM 的定义、能力和训练流程梳理清楚。

二、什么是 LLM

2.1 定义

LLM,Large Language Model,大语言模型。说白了就是参数更多、训练数据更大的语言模型。

架构和预训练任务跟传统模型差不多——基本都是 Decoder-Only + CLM,但参数量从 BERT 的几亿跳到了几百亿甚至上千亿,训练数据从几十亿 token 扩到了几万亿 token。量变引起了质变,模型展现出了传统 PLM 完全不具备的能力。

一般来说,包含数百亿参数、在数 T token 语料上预训练的模型才算 LLM。广义上从十亿参数(如 Qwen3-1.5B)到千亿参数(如 Grok-314B)都算,关键看有没有涌现能力

2.2 LLM 的核心能力

LLM 和传统预训练模型 PLM 最大的区别不只是参数大,而是展现出了几种全新的能力。

2.2.1 涌现能力

区分 LLM 和传统 PLM 最显著的特征。同样的架构和训练任务,某些能力在小模型中不明显,但在大模型中突然爆发——类似物理学中的相变,量变引起质变。

涌现能力是目前业界和学界对 LLM 保持高度关注的核心原因。虽然 LLM 目前的能力和通用人工智能(AGI)还有不小的差距,但在涌现能力的作用下,随着研究的不断深入、高质量数据的不断涌现、更高效的模型架构和训练框架的出现,LLM 终将具备通用智能所需的全部能力,从而给人类生活带来质变。

2.2.2 上下文学习

GPT-3 首次引入。不需要微调,只需要在 prompt 里给几个示例,模型就能完成任务。

传统 PLM 解决下游任务的范式是预训练→微调:收集训练数据、准备算力、微调模型。以 BERT(0.5B 参数)为例,有监督微调一般需要 10G 以上显存,训练数据则需要 1k~数十k 条人工标注样本,获取成本不低。上下文学习把这个流程简化成了:构造几个示例扔进 prompt 就行。GPT-4 在大部分任务上通过调整 prompt 或给 1~5 个示例,就能超过传统 PLM 微调的效果,算力和数据成本大幅降低。

这个能力正在引发 NLP 研究范式的变革——从预训练-微调转向 Prompt Engineering。

2.2.3 指令遵循

通过指令微调训练后,LLM 能理解并遵循从未见过的指令来执行任务。不需要提前教模型每件事怎么做,只需要在指令微调阶段混合多种指令训练泛化能力,LLM 就能处理用户的绝大部分需求。

ChatGPT 之所以能火出圈,核心就是指令遵循能力——它不再是只能给研究者用的理论模型,而是能服务各行各业的通用工具。写作文、编程序、批改试卷、阅读报纸,只要你说清楚需求,它就能干。

目前大火的 Agent、WorkFlow,以及未来可能出现的全能助理,本质依赖的都是 LLM 的指令遵循能力。

2.2.4 逐步推理

逻辑推理一直是 NLP 的难点。传统模型很难解决涉及多个推理步骤的复杂任务,但 LLM 通过思维链(Chain-of-Thought,CoT)推理策略,可以利用包含中间推理步骤的提示来解决问题。

这个能力让 LLM 可以处理复杂的逻辑任务,向"可靠的"智能助理迈出了关键一步。有研究推测,这种能力可能是通过代码训练获得的。

2.3 LLM 的特点

除了核心能力,LLM 还有一些值得关注的特点。

多语言支持。因为预训练语料本身就是多语言的,LLM 天生具备多语言能力。不过英文语料质量最高、占比最大,大部分模型英文能力优于中文。国内针对中文优化的模型(文心一言、通义千问等)在中文场景表现更好。

长文本处理。传统 PLM 最大上下文一般是 512 token,LLM 训练时就支持 4K、8K 甚至 32K。加上 RoPE 等位置编码的长度外推能力,推理时还能处理更长的文本。比如 InternLM 在 32K 上预训练,通过 RoPE 能处理 200K 的上下文。

拓展多模态。给 LLM 加上图像编码器和 Adapter 层,在图文数据上微调,就能支持图文问答甚至生成。多模态大模型是一个重要研究方向。

幻觉问题。LLM 会一本正经地胡说八道——捏造不存在的论文、编造虚假的事实。这是 LLM 的固有缺陷,在医学、金融等强调精准的领域可能造成严重后果。RAG、prompt 限制等方法能缓解但无法根除。

三、如何训练一个 LLM

训练一个完整的 LLM 需要三个阶段:Pretrain(预训练)、SFT(有监督微调)、RLHF(人类反馈强化学习)。

用一个类比来理解:Pretrain 是给学生教所有基础知识,SFT 是教他怎么读题、怎么解题,RLHF 是让他不断练习、老师批改、纠正错误。

3.1 Pretrain——赋予知识

预训练是 LLM 训练最核心也是工程量最大的一步。用海量无监督文本对随机初始化的模型参数进行训练,任务还是 CLM(Causal Language Model)——预测下一个 token。

LLM 的预训练和传统预训练模型非常类似,但其还具备一些独有的特点:

3.1.1 参数量和数据量的跃升

和传统 PLM 相比,LLM 预训练的体量有数量级的差距:

模型hidden_layershidden_size注意力头数参数量预训练数据量
BERT-base12768120.1B3B
BERT-large241024160.3B3B
Qwen-1.8B242048161.8B2.2T
LLaMA-7B324096327B1T
GPT-3961228896175B300B

OpenAI 提出了 Scaling Law:C ~ 6ND(C 为计算量,N 为模型参数,D 为训练 token 数)。实验得出训练 token 数应该是模型参数的 1.7 倍,LLaMA 更是提出 20 倍效果最优。

3.1.2 算力需求庞大

预训练一个 LLM 的算力消耗极其庞大。百亿级模型需要 1024 张 A100 训练一个多月,十亿级也需要 256 张 A100 训练两三天。单卡根本放不下,必须用分布式训练。

分布式训练的核心思路是两种并行:

数据并行:模型能放进单卡,但需要加速训练。每张卡上放完整的模型副本,处理不同的数据批次,前向传播后汇总梯度、更新参数。

模型并行:模型太大单卡放不下。把模型拆分到多张卡上,每张卡放不同的层或不同的部分。

在此基础上还演化出张量并行、3D 并行、ZeRO 等更高效的方式。目前主流框架包括 Deepspeed、Megatron-LM、ColossalAI,其中 Deepspeed 用得最广。

Deepspeed 的核心策略是 ZeRO 和 CPU-offload。CPU-offload 的思路是将部分显存占用(如优化器状态)卸载到 CPU 内存中,从而进一步释放 GPU 显存,让单卡能承载更大的模型。

3.1.3 Deepspeed 的 ZeRO 策略

ZeRO 是一种显存优化的数据并行方案。它把显存占用分为两类:

  • 模型状态:模型参数、模型梯度和 Adam 优化器状态。假设模型参数量为 1M,在混合精度训练下,该部分需要 16M 空间存储,其中 Adam 状态参数就占了 12M——也就是说优化器状态是显存占用的大头。
  • 剩余状态:激活值、缓存、显存碎片。

ZeRO 提了三种递进的优化策略:

策略分片内容每卡显存占用
ZeRO-1Adam 状态参数最高,但通信最少
ZeRO-2Adam 状态 + 梯度居中
ZeRO-3Adam 状态 + 梯度 + 模型参数最低,但通信最多

分片越多,每卡显存越少,但通信开销越大。具体用哪个策略,要根据算力和模型体量动态决定。

3.1.4 预训练数据

LLM 的知识绝大部分在预训练阶段学会,所以预训练语料需要覆盖多种来源、多种领域:

数据集占比大小
CommonCrawl67.0%3.3 TB
C415.0%783 GB
Github4.5%328 GB
Wikipedia4.5%83 GB
Books4.5%85 GB
ArXiv2.5%92 GB
StackExchange2.0%78 GB

数据配比是预训练的"核心秘籍",不同配比会很大程度影响模型性能。训练中文 LLM 更难——高质量语料大部分是英文,开源中文预训练数据集(SkyPile 150B、yayi2 100B 等)和英文有明显差距。

数据质量比体量更重要。预训练数据处理一般包括三步:

  1. 文档准备:从爬取的网站提取纯文本,过滤有害 URL,确定语种
  2. 语料过滤:去除低质量、无意义、有毒内容(乱码、广告等)。可以用模型分类器过滤,也可以用人工定义的质量指标
  3. 语料去重:大量重复文本会显著影响泛化能力。基于 hash 算法或子串匹配计算文档相似度,去除高度相似的文档

经过高质量处理的 627B SlimPajama 数据集效果比 1T 的 RedPajama 更好,证明了数据质量的价值。

3.2 SFT——激发能力

预训练后的 LLM 像一个博览群书但不求甚解的书生——什么都能接上话,但不理解问题本身。这是因为 CLM 训练的是预测下一个 token 的能力,和下游任务或用户指令没有对齐。

SFT(Supervised Fine-Tuning,有监督微调)就是教这个书生怎么用知识。

3.2.1 指令微调

SFT 的核心是指令微调——训练数据是各种类型的用户指令和对应的回复:

input: 告诉我训练一个 LLM 包括哪几个阶段?output: 训练LLM包括三个阶段,分别是预训练、监督微调 和 强化学习。

和传统微调的区别在于:传统 PLM 要针对每个下游任务单独微调(分类任务微调一次,实体识别再微调一次),LLM 的 SFT 训练的是通用指令遵循能力,一次微调覆盖所有任务。

3.2.2 指令数据

SFT 的数据质量和配比同样关键。OpenAI 的 InstructGPT 使用了十种指令类型:

指令类型占比
文本生成45.6%
开放域问答12.4%
头脑风暴11.2%
聊天8.4%
文本转写6.6%
文本总结4.2%
文本分类3.5%
其他3.5%
特定域问答2.6%
文本抽取1.9%

人工标注数据成本极高,ChatGPT 的成功很大程度归功于高质量人工标注。为降低成本,可以用 GPT-4 生成指令数据——Alpaca 数据集就是用 ChatGPT 基于种子 prompt 自动生成的。

指令数据集一般包含三个字段:

{ "instruction": "将下列文本翻译成英文:", "input": "你是我最好的朋友。", "output": "You are my best friend."}

3.2.3 SFT 的训练格式

SFT 本质上还是 CLM 训练,但需要让模型学会区分指令和回复。LLaMA 的 SFT 格式:

### Instruction:将下列文本翻译成英文:你是我最好的朋友。### Response:You are my best friend.

注意:模型预测的不只是 output,而是整个 input + output,只是 input 部分不参与 loss 计算。

3.2.4 多轮对话

模型的多轮对话能力完全来自 SFT。构造多轮对话样本的方式有三种:

方式一:只拟合最后一轮回复——会丢失中间信息。

input=<prompt_1><completion_1><prompt_2><completion_2><prompt_3><completion_3> output=[MASK][MASK][MASK][MASK][MASK]<completion_3>

方式二:N 轮对话构造成 N 个样本——大量重复计算。

input_1 = <prompt_1><completion_1> output_1 = [MASK]<completion_1> input_2 = <prompt_1><completion_1><prompt_2><completion_2> output_2 = [MASK][MASK][MASK]<completion_2> input_3=<prompt_1><completion_1><prompt_2><completion_2><prompt_3><completion_3> output_3=[MASK][MASK][MASK][MASK][MASK]<completion_3>

方式三(最优):一轮对话中拟合所有回复,每轮回复前用 MASK 标记:

input = <prompt_1><completion_1><prompt_2><completion_2><prompt_3><completion_3>output = [MASK]<completion_1>[MASK]<completion_2>[MASK]<completion_3>

注意:这里的[MASK]表示对应位置不参与 loss 计算(即模型不需要预测这些位置),不是BERT 预训练中用来遮蔽输入的<MASK>token。模型只需要预测每轮的 completion 部分,prompt 部分的 loss 被 mask 掉了。

之所以可以以第三种方式来构造多轮对话样本,是因为 LLM 本质还是进行的 CLM 任务,进行单向注意力计算,因此在预测时会从左到右依次进行拟合,前轮的输出预测不会影响后轮的预测。目前大部分 LLM 都用这种方式做多轮对话 SFT。

3.3 RLHF——对齐人类偏好

SFT 让模型学会了遵循指令,但 RLHF(Reinforcement Learning from Human Feedback) 才是 ChatGPT 相较于 GPT-3 的核心突破。从功能上说,预训练赋予知识,SFT 对齐指令,RLHF 对齐人类价值观——让模型达到安全、有用、无害的标准。

3.3.1 训练奖励模型(RM)

RM(Reward Model)用来拟合人类偏好,给 LLM 的回复打分。本质上是一个文本分类模型——输入文本,输出一个标量奖励。

训练数据是人工标注的偏好对比:

{ "prompt": "如果你打算从商店偷东西,你觉得早上好还是晚上好?", "chosen": "这是违法的事情,我不能提供建议", "rejected": "考虑晚上的人口贩运和监控摄像头的差别..."}

训练时,prompt 分别和 chosen、rejected 拼接,进入模型输出标量奖励,然后最大化 chosen 和 rejected 的奖励差异来计算 loss。

为什么不直接用标量奖励训练?因为标注者之间有价值观差异,数值奖励会放大这些差异,导致训练不稳定。用排名(偏好对比)更鲁棒。

RM 的模型可以和 LLM 不一样大。比如 OpenAI 用 175B 的 LLM 配 6B 的 RM。

3.3.2 PPO 训练

PPO(Proximal Policy Optimization,近端策略优化)是 RLHF 的核心算法,训练过程中包括四个模型:

模型来源是否更新参数
Actor ModelSFT 后的 LLM 初始化更新(这就是最终的 LLM)
Ref ModelSFT 后的 LLM 初始化不更新
Reward Model训练好的 RM 初始化不更新
Critic Model训练好的 RM 初始化更新

训练流程:

  1. 输入一个 prompt,Actor Model 和 Ref Model 分别生成回复
  2. Actor Response 和 Ref Response 计算 KL 散度,防止模型更新太远丢失预训练和 SFT 的能力:

其中 是 Actor Model 的输出分布, 是 Ref Model 的输出分布, 是控制 KL 散度影响的权重参数。

  1. Actor Response 输入 Reward Model 和 Critic Model 打分,Reward Model 输出标量奖励,Critic Model 输出累加奖励
  2. 结合 KL 散度和两个模型的打分计算奖励函数:

其中 是控制 KL 散度权重的参数, 是控制下一个样本打分影响的参数, 是 Critic Model 的打分, 是 Reward Model 的打分。

  1. 根据奖励函数分别计算 actor loss 和 critic loss,更新 Actor Model 和 Critic Model 的参数(两者的更新方法不同)

为什么需要四个模型?Ref Model 和 Reward Model 不更新参数,是为了限制模型不要偏离太远——如果更新太激进,可能会丢失 Pretrain 和 SFT 阶段学到的知识和能力。

四个模型的显存占用很大。如果 RM 和 LLM 都用 7B,PPO 过程大概需要 240G 显存(4 张 80G A100)。

3.3.3 DPO——更简单的替代方案

RLHF 的门槛太高了。DPO(Direct Preference Optimization,直接偏好优化)提出了一个更简单的方案:把强化学习问题转化为监督学习,直接学习人类偏好。

DPO 只需要两个 LLM 就能完成训练,不需要单独训练 RM,也不需要跑 PPO 的复杂流程。训练过程和 SFT 类似,但优化目标不同——DPO 通过数学推导证明了可以直接从偏好数据中学习最优策略,无需中间的 RM。

DPO 是 RLHF 的低门槛平替,效果在很多场景下接近甚至持平 RLHF。

四、总结

LLM 是参数规模达百亿级以上、在海量语料上训练的语言模型,量变引发了质变——涌现能力带来了上下文学习、指令遵循和逐步推理等传统模型不具备的全新能力。训练一个完整的 LLM 分三步走:预训练在海量无监督文本上赋予模型基础知识,是工程量最大的一步;SFT 通过指令微调教会模型理解并遵循人类指令,激发其通用任务能力;RLHF 利用人类偏好数据训练奖励模型、再通过 PPO 优化让模型的行为与人类价值观对齐。三个环节环环相扣,数据质量和配比在每个阶段都至关重要——GPT-3 参数虽大但未引起轰动,而 ChatGPT 改变世界的关键,正在于 SFT 和 RLHF 这两步对齐工作。

学AI大模型的正确顺序,千万不要搞错了

🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!

有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!

就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋

📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇

学习路线:

✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经

以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!

我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

http://www.jsqmd.com/news/1144848/

相关文章:

  • React Loadable:给 React 应用做代码分割的老牌方案
  • ResNet-50 PyTorch 迁移学习实战:CIFAR-10 数据集 5 分钟达到 92% 准确率
  • 为知笔记导出到本地 Markdown,老笔记也能重新用起来
  • C语言操作符和输入输出函数
  • HTML打包EXE多实例共享进程:多开更快还能共享登录
  • 从一条用户评论到Browser Bridge的新功能-Tab隔离
  • 基于Java的助老助残服务平台
  • C++之获取内存地址std::addressof
  • AI能改变秋冬服装行业吗?很多企业已经给出了答案
  • 三分钟安装Claude Code 最新版安装教程----简单易懂版本
  • CentOS 企业网络管理入门实战:打通网络理论与服务器实操壁垒
  • 光储充微电网系统降本增效实战指南
  • CV、语言感知(ASR/TTS)、多模态,就能理解AI是如何“看到”与“听到”世界的
  • 2026年TMS系统选型攻略:避开这5个坑,选对系统让运输成本直降20%
  • 微信读书官方 Skill:装完能干什么?
  • Linux的i2c驱动是怎么识别到设备并且匹配设备的
  • 免费解锁Wand专业版完整功能:开源增强工具完全指南
  • TC78H651AFNG与MK64FN1M0VDC12的直流有刷电机驱动方案解析
  • 已知链中心距用节数算中间电机摆放位置 常量弧长 三链轮弦长模型算法
  • 网盘直链下载助手完整教程:8大网盘一键获取真实下载链接终极指南
  • BUUCTF rsa
  • 【1985-2025年】城市/农村/乡村/城镇边界矢量数据|全球高分辨率|逐年更新|SHP格式
  • 你的数据正在“裸奔”吗?一文看懂2026年网络安全新威胁与自救指南
  • TensorFlow 2.x 自定义训练循环实战:对比 fit 方法,Loss 下降速度提升 15%
  • R 4.3.1 + RStudio 2024.09 双平台安装:Windows 11 与 macOS Sonoma 全流程对比
  • 让 Git 提交自动带「Verified」徽章:GitHub SSH 签名免 ssh-agent 实战
  • 2026年7月探寻四川信誉优良的GEO优化运营商
  • 2026年AI大模型接口加速站全维度测评:主流服务商性能成本与适配能力综合排名
  • Java 转大模型开发:落地清单
  • 番茄钟规划:鸿蒙AI应用开发实战——AI时间管理,效率提升看得见