大规模语言模型(LLM)

前言

2018 年OpenAI 在论文题为《Improving Language Understanding by Generative Pre-Training》提出的首个 GPT 系列模型, 其核心思想无监督预训练 + 有监督微调的两阶段范式,提升模型在多种自然语言理解(NLU)任务上的表现。

大模型范式

大模型已成为推动技术革新的核心引擎。随着参数规模从亿级迈向万亿级,大模型逐渐分化出三类技术范式:基座模型(Base Model)、聊天模型(Chat Model) 和指令模型(Instruct Model)。

  • Base模型:也被称为基座模型或平台模型 是通过在大量无标注数据上进行预训练,从而学习到广泛语言特征的模型。

    • 大规模预训练:利用海量数据集,学习语言结构和模式。
    • 泛化能力强:适用于多种NLP任务,如问答、文本分类、翻译等。
    • 可微调性:通过少量数据即可针对特定任务进行调整。
  • Chat模型: 即聊天模型,专为处理人机交互而设计。这类模型能够理解上下文,维持对话历史,生成连贯且情境相关的响应。

    • 上下文感知:理解对话历史,保持连贯性。
    • 互动性:能够进行多轮对话,解答复杂问题。
    • 创意生成:创作故事、诗歌或提供个性化建议
  • Instruct模型: 指令模型是能够理解和执行人类自然语言指令的模型。它们经过专门训练,能够识别并执行多样化的指令,从简单的查询到复杂的任务执行。

    • 指令解析:准确识别和理解复杂的自然语言指令。
    • 任务执行:能够完成查询、文档修改、设备控制等任务。
    • 定制化能力:在特定指令集上进行训练或微调。

简单来说: 基座模型像"知识库",聊天模型像"对话伙伴",而指令模型像"执行专家"‌

白话解释: 学习知识(base)-> 将知识与场景组织(chat) -> 明白意思执行(Instruct)

OpenAPI: GTP - chatGTP - InstructGPT

生成式语言模型 GPT

OpenAI 公司在 2018 年提出的生成式预训练语言模型(Generative Pre-Training,GPT)是

典型的生成式预训练语言模型(Base)之一。GPT 的模型结构如图2.3 所示,它是由多层 Transformer 组成的单向语言模型

采用的 Decoder-only架构 单向语言模型 保证输入文本每个位置只能依赖过去时刻的信息。

最大似然估计(MLE)和交叉熵损失函数在数学上是等价的,也可以基于马尔可夫假设,只使用部分过去词进行训练。预训练时通常使用随机梯度下降法进行反向传播,优化该负对数似然函数。

LLaMA(Large Language Model Meta AI)是由Meta(前身 Facebook)开发的一种大规模语言模型.与GPT等生成模型类似,LLaMA也只使用了Transformer的解码器,但基于Transformer进行了三个改进:

  1. 使用由RMSNorm 归一化函数
    • 相比LayerNorm,它省去了计算均值的步骤,计算量减少了约30%,训练速度更快
    • ‌训练更稳定‌:不依赖batch size,对小批量或动态批处理任务更友好,能有效缓解梯度消失问题。
  2. 激活函数更换为 SwiGLU:相比传统的ReLU或GLU,SwiGLU在训练稳定性和模型性能上表现更优
  3. 使用了旋转位置嵌入(Rotary Positional Embeddings,RoPE):一种巧妙的旋转操作,将**绝对位置信息(Learned Position Embedding)**转化为相对位置信息。它让模型在计算注意力时,能自动感知到"A词在B词前面3个位置"这样的相对关系,从而更好地捕捉长距离依赖。

指令微调

通过自监督语言模型预训练(Base模型),使得 GPT 模型具备了一定的通用语义表示能力 。下游任务微调(Downstream Task Fine-tuning)的目的是在通用语义表示的基础上,根据下游任务的特性进行适配(chat/Instruct模型)。下游任务通常需要利用有标注数据集进行训练.数据集使用 D D D 进行表示,每个样例由输入长度为 n n n 的文本序列 x = x 1 , x 2 , ⋅ ⋅ ⋅ , x n x = x_1, x_2, · · · , x_n x=x1,x2,⋅⋅⋅,xn 和对应的标签 y y y 构成。

混合专家模型 (Mixed Expert Models,MoEs)

在人工智能领域有一个潜规则:模型越大,效果越好。这就是所谓的大模型缩放定律。问题是,模型一旦变大,对算力和训练时间的消耗也会指数级上涨。于是就出现了一个核心问题:在算力有限的情况下,怎么用更少的训练成本支撑起更大的模型?

MoE 给出的解决思路很巧妙:让模型里的不同部分(被称为"专家")各自专注于不同的任务或数据类型。比如有的专家更擅长理解语法,有的专家更擅长推理。这样一来,每次处理输入时,并不是所有专家都要一起工作,而是通过一个门控网络(可以理解为一个路由器)来决定该把输入分配给哪些专家去处理。最后,把专家的结果组合起来,就能得到整体的输出。
这种方式的好处是显而易见的:参数规模可以无限扩展,但实际参与计算的部分却是有限的。正因如此,MoE 架构让拥有数万亿参数的超大模型成为可能。比如Switch Transformers就做到了惊人的1.6 万亿参数。

在现代大模型里,MoE 层通常被放在Transformer 的前馈网络(FFN)部分。因为随着模型变大,FFN 的参数量占比非常高,举个例子,PaLM 模型有 5400 亿参数,其中大约 90% 都集中在 FFN 层。MoE 正好能帮忙降低这一部分的计算压力。

从结构上看,一个 MoE 层通常包含:

  • 专家网络:每个专家就像一个小型的前馈神经网络。即 f i f_i fi 前馈层,其参数使用 W i W_i Wi 表示。对于给入的输入 X X X,其输出使用 f i ( X ; W i ) f_i(X;W_i) fi(X;Wi)表示
  • 门控网络:像"路由器"一样,决定输入该走哪条路,交给哪几个专家处理。其通常使用线性 Softmax(Linear-Softmax)网络构成,使用 Θ Θ Θ 表示其参数,其输出使用 G i ( X ; Θ ) G_i(X; Θ) Gi(X;Θ) 表示

根据门控方式的不同,MoE 又分为三种主要类型:

  • 稀疏 MoE(Sparse MoE):一次只激活少数几个专家,效率高。
  • 稠密 MoE(Dense MoE):所有专家一起工作,计算量大但表达力强。
  • 软 MoE(Soft MoE):通过加权的方式综合多个专家的意见。

稀疏混合专家模型

在混合专家模型(MoE)中,稀疏 MoE是应用最广的一种。它的核心思路很简单:

对于每个输入(比如一句话中的一个词),模型并挑选一小部分最合适的专家来工作。这个挑选过程由门控网络(Gating Network)来完成。它会给每个专家打分,然后只选出前K 个得分最高的专家来参与计算。最后,模型会把这几个专家的结果加权合并,作为最终输出.这个过程可以形式化的表示为:

  • 2.40 表示 门控网络挑选一小部分最合适的专家来工作
  • 2.39 表示 选出前K 个得分最高的专家来参与计算。其中 Rnoise是噪声项 添加噪声项 Rnoise 是训练稀疏混合专家层的一种常用策略,
    • 它能够为模型创造更多的探索空间,促使不同专家模块之间展开多样化的尝试与协作,挖掘出潜在的优化路径;
    • 通过打破可能出现的局部最优情况,提高了整个混合专家训练过程的稳定性
  • 3.28 表示 模型会把这几个专家的结果加权合并,作为最终输出.

稀疏混合专家模型中采用常规的门控策略时,分配给不同专家的词元可能需要一些共有知识

或信息才能处理。因此,多个专家可能会在各自的参数中获取同样的知识,进而导致专家参数出现冗余。如果构建专门用于捕捉并整合不同情境下共有知识的共享专家,那么其他专家之间的参数冗余情况将可能得到缓解。

由 Mixtral AI 公司推出的 Mixtral-8x7B 模型[66] 就采用了稀疏混合专家方式,与早期的 Mistral-7B 模型共享基础架构。Mixtral-8x7B 模型使用了稀疏混合专家层代替每个 Transformer 块中的前馈层,每个稀疏混合专家层包含 8 个专家网络,门控网络每次激活 2 个专家。但是在 Mixtral-8x7B 模型中没有引入噪声项 Rnoise,每个专家网络则使用了 SwiGLU 结构。由于采用了稀疏混合专家方式,虽然 Mixtral-8x7B 模型的总参数量大约 560 亿,但是每次仅使用 130 亿个活跃参数。并且,Mixtral-8x7B 模型在很多基准测试中,展现出了优于或等同于包含了 700 亿参数的 Llama-2-70B的性能。此外,众多大语言模型也都采用了稀疏混合专家架构,包括 Switch Transformer[67]、DeepSeekMoE[74]、AdaMoE[75]、Yuan 2.0-M32[76]、OpenMoE[77]、Qwen1.5-MoE-A2.7B[78] 等

稠密混合专家模型

和稀疏 MoE 不同,稠密混合专家模型(Dense MoE)的思路是:

对于每个输入,所有专家都会同时被激活,只是门控网络会给不同专家分配不同的权重。

换句话说,这就像一个团队开会时,不是只挑几个人发言,而是所有人都要发表意见,最后再根据每个人的重要性不同来综合结果。这个过程可以形式化的表示为:

  • 2.42, 所有人都要发表意见(都要执行2.41),最后再根据每个人的重要性不同来综合结果。
  • 2.41 表示 模型会把这几个专家的结果加权合并,作为最终输出.

从计算上看,这种方式有个明显的缺点:所有参数都要参与计算。所以,它并不能像稀疏 MoE 那样节省算力。也正因为如此,目前大语言模型里采用稠密 MoE 的并不多,主要代表有EvoMoE、MoLE、LoRAMoE和DS-MoE等。

稠密 MoE 的价值:和 LoRA 的结合

虽然稠密 MoE 在效率上不占优势,但研究人员发现,它在模型微调(fine-tuning)时有独特的价值。

大语言模型要想适应更多下游任务,通常需要做有监督微调。但是这里有个矛盾:

  • 如果大规模增加微调数据,模型会更适合特定任务;
  • 但这样可能会破坏模型原本学到的世界知识,出现"遗忘"现象。

为此,有研究人员提出了一个方案:把LoRA(低秩适配)和MoE结合起来,形成LoRAMoE。

LoRAMoE 的关键设计是:

  • 插件化设计:LoRA 以插件的形式加入模型,训练时主模型保持冻结不变。这样能保证原有的世界知识不被破坏,而所有改动都集中在插件里。

  • 专家分工:在模型的前馈网络旁边增加多个专家,每个专家像"插件"一样通过路由网络连接。一部分专家专注于提升下游任务的性能;另一部分专家专注于保持指令和主模型世界知识的一致性。

  • 局部平衡约束:

    • 避免某些专家"独占舞台",而其他专家被闲置;
    • 让路由均衡地关注不同专家,使得整个专家团队分工合理、互相配合。

这样一来,LoRAMoE 能够在保证模型原有知识完整性的同时,有针对性地提升下游任务表现,避免了"只顾眼前任务,却丢掉世界常识"的问题。

软混合专家模型

在 MoE 家族中,软混合专家模型(Soft MoE)介于稀疏和稠密之间,可以看作是一个折中方案。和稠密 MoE 类似,它同样会根据输入让门控网络给每个专家分配一个权重。但不同的是:它并不会让所有专家都单独去计算,而是先把所有专家的参数按照权重融合在一起,形成一个"虚拟专家",然后只用这个合并后的前馈层去做计算。这个过程可以形式化的表示为:

  • 2.44, 所有人都要发表意见,最后再根据每个人的重要性不同来综合结果。
  • 2.43 表示 通过门控网络动态加权‌( f m e r g e d 维护 f_{merged}维护 fmerged维护),只有部分专家(参数)被显著激活(执行2.44),其余专家(参数)的贡献被压缩到几乎为零

一种叫SMEAR的算法就采用了软 MoE 结构。它通过门控权重把不同专家的参数加权平均,得到融合后的前馈层,再用它来处理输入。

这样做的计算开销大约相当于一个普通前馈层(类似稀疏 MoE 激活一个专家的情况),远小于稠密 MoE 中"所有专家全算一遍"的情况。

不过,也不是完全免费:

软 MoE 在计算前需要把所有专家的参数加权平均,这一步还是会带来额外开销。

好在整体来看,它的计算成本依然明显低于稠密 MoE。

总结来说,软混合专家模型就像是"合并代表"机制:

  • 它避免了稠密 MoE 那种"全员上阵"的高昂成本;
  • 同时比稀疏 MoE 更加平滑、容易训练。

因此,软 MoE 在保持性能和节省算力之间,找到了一个不错的平衡点

强化学习

通过有监督微调,大语言模型已初步具备遵循人类指令并完成多类型任务的能力。然而该方

法存在显著局限:

  1. 需要构建海量指令-答案对数据集,高质量回复标注需耗费高昂人力成本;
  2. 交叉熵损失函数要求模型输出与标准答案逐字匹配,既无法适应自然语言的表达多样性,也难以解决输出对输入微小变动的敏感性,这在需要深度推理的复杂任务中尤为突出。

当前大语言模型中的强化学习技术主要沿着两个方向演进:

  • 基于人类反馈的强化学习(Reinforcement Learning from Human Feedback,RLHF),通过奖励模型对生成文本进行整体质量评估,使模型能自主探索更优的回复策略,并使得模型回复与人类偏好和价值观对齐。

    例如:ChatGPT 等对话系统,通过人类偏好数据训练奖励模型,结合近端策略优化(Proximal Policy Optimization,PPO)算法实现对齐优化。

  • 面向深度推理的强化学习框架,以 OpenAI 的 O 系列模型和 DeepSeek 的 R 系列为代表,通过答案校验引导模型进行多步推理。这类方法将复杂问题分解为**长思维链(Chain-of-Thought)**的决策序列,在数学证明、代码生成等场景中展现出超越监督学习的推理能力。

相比传统的监督学习,强化学习的优势非常明显:

  • 在RLHF的范式下,模型能通过"生成---反馈"的闭环不断进化,不再依赖唯一的标准答案。
  • 在深度推理的场景中,模型能主动探索推理路径,用价值函数评估来避免陷入局部最优,从而找到更好的解法。

简单来说,RLHF 更强调"对齐人类价值",而深度推理强化学习更注重"解决复杂问题"。两者结合,正在成为推动大语言模型进化的核心动力

强化学习概念

简单来说,强化学习(Reinforcement Learning,RL)研究的就是"一个智能体在环境中如何不断尝试,最后学会做出最佳决策"的过程。目标就是:让智能体在复杂又不确定的环境中,尽可能多地获取奖励。

强化学习的框架可以理解成由两部分组成:

  • 智能体(Agent):相当于学习者或决策者。
  • 环境(Environment):智能体所处的世界,包含规则和反馈。

在学习过程中,智能体不断和环境互动:它先观察到一个状态(State),再基于这个状态选择一个动作(Action)。动作会影响环境,环境则会返回一个新的状态,并给予奖励(Reward)。智能体的目标就是学会一套策略(Policy),用来指导自己在不同状态下采取什么行动,才能获得更多奖励。

举个生活化的例子:你教一只宠物狗玩飞盘。

  • 智能体:宠物狗就是"智能体"。
  • 环境:飞盘的飞行轨迹、速度,以及周围的情况。
  • 状态:飞盘此刻的位置和速度。
  • 动作:狗可以选择跑、跳,或者干脆站着不动。
  • 奖励:如果狗成功接住飞盘,就给它奖励(比如小零食);没接住,就没有奖励。

随着不断尝试,狗会逐渐学会一套"策略":在不同状态下采取什么样的动作,能更大概率接住飞盘。与此同时,它还会对不同动作的"价值"形成预估,比如它知道在某些角度和速度下提前起跳更容易成功。

智能体与环境的不断交互过程中,会获得很多观测 o i o_i oi。针对每一个观测,智能体会采取一个动作 a i a_i ai,也会得到一个奖励 r i r_i ri。可以定义历史 H t H_t Ht 是观测、动作、奖励的序列:
H t = o 1 , a 1 , r 1 , o 2 , a 2 , r 2 , ⋅ ⋅ ⋅ , o t , a t , r t Ht = o_1, a_1, r_1, o_2, a_2, r_2, · · · , o_t, a_t, r_t Ht=o1,a1,r1,o2,a2,r2,⋅⋅⋅,ot,at,rt

由于智能体在采取当前动作时会依赖它之前得到的历史,因此可以把环境整体状态 S t S_t St 看作关于历史的函数: S t = f ( H t ) S_t = f(H_t) St=f(Ht)

  • 整个状态空间使用 S S S表示

    • 当智能体能够观察到环境的所有状态时,称环境是完全可观测的(Fully Observed),这时观测 o t o_t ot等于 S t S_t St。
    • 当智能体只能看到部分观测时,称环境是部分可观测的(Partially Observed),这时观测 o t o_t ot是对状态的部分描述。
  • 在给定的环境中,有效动作的集合经常被称为动作空间(Action Space),使用 A A A 表示

    • 离散动作空间:动作数量有限。比如下围棋,落子只能选择棋盘上的361 个交叉点。
    • 连续动作空间:动作是连续的。比如机器人在平面上走路,它可以朝任意角度移动,而不是只能选几个方向。
  • 策略是智能体的"行动计划",决定它在某种状态下该做什么动作。

    • 随机性策略(Stochastic Policy):给每个可能动作分配一个概率。 比如:在状态 s 下,往左走的概率 0.3,往右走的概率 0.7。智能体会根据这个概率随机选择。
    • 确定性策略(Deterministic Policy):直接选择"最优动作"。 比如:在状态 s 下,智能体 100% 往右走。
  • 价值函数的值是对未来奖励的预测,可以用它来评估状态的好坏。

    • 状态价值函数: 价值函数可以只根据当前的状态 s 决定. 使用 V π ( s ) V_π(s) Vπ(s) 表示。
    • 动作价值函数: 根据当前状态 s 及动作 a,使用 Q π ( s , a ) Q_π(s, a) Qπ(s,a) 表示。

函数中会用到一个折扣因子 γ(0~1 之间),它用来平衡眼前奖励和长远奖励:

  • γ 越小,智能体更看重"眼前的好处"。
  • γ 越大,智能体更注重"长远收益"。

根据学习方式不同,强化学习里的智能体可以分为三类:

  1. 基于价值的智能体(Value-based Agent):专注于学习价值函数(V 或 Q),间接地推导出策略。代表算法:Q-Learning。
  2. 基于策略的智能体(Policy-based Agent):直接学习策略函数 πθ(a|s),输入状态 → 输出动作概率。不单独学习价值函数。代表算法:REINFORCE。
  3. 演员--评论员智能体(Actor-critic Agent)则是把基于价值的智能体和基于策略的智能体结合起来,既学习策略函数又学习价值函数,通过两者的交互得到最佳的动作,典型算法如 PPO。

强化学习与有监督学习的区别

  • 有监督学习:像按旅行指南走,一切明确,但缺乏灵活性。
  • 强化学习: 像自由探索陌生城市,虽然起初困难,但能学到更灵活、更长远的策略。

这正印证了《苦涩的教训》里的观点:少设计规则,多给模型自由,它自己会找到更优解

策略梯度方法

在强化学习里,智能体就像一个"学徒",它靠和环境不断互动、试错,逐渐学会怎么做决策。它的终极目标很明确:找到一条能够长期拿到最多奖励的最佳路径

传统方法(如 Q-learning)通常基于"价值函数"间接优化策

略------先评估动作的价值,再选择最优动作。然而,当面对高维或连续动作空间时(例如机器人控制、游戏角色复杂操作),这类方法可能面临计算瓶颈或难以收敛的问题。

策略梯度(Policy Gradient)。它不再绕弯子去算"值多少",而是直接把"策略"本身参数化(通常用神经网络来表示),然后一步到位地调整参数,让智能体更偏向选择那些能带来高回报的动作。可以把它想象成不断调节一个旋钮:哪些动作拿到的奖励高,就把它们出现的概率往上拧一点。

这一方法的优势在于能天然处理连续动作、随机策略以及部分观测环境,但也面临梯度估计方差大、训练不稳定等挑战。本节将从策略梯度的基础概念出发,回顾经典算法如 REINFORCE,PPO 等,并讨论在大模型时代流行的 GRPO,RLOO 等方法。

策略梯度方法是强化学习中一类重要的算法,它直接优化策略函数 π ( a ∣ s ; θ ) π(a|s; θ) π(a∣s;θ),以最大化预期的回报(累计奖励) R ( τ ) = ∑ t = 0 ∞ γ t r t R(τ ) = \sum_{t=0}^∞ γ^tr_t R(τ)=∑t=0∞γtrt,其中 θ 是策略的参数, γ是奖励折扣因子。

  • π θ ( a t ∣ s t ) π_θ(a_t|s_t) πθ(at∣st)即在t时间,状态 s t s_t st做出 a t a_t at动作
  • 6.5 表示 , 要轨迹 τ τ τ发生的概率是 P ( τ ; θ ) P(τ;θ) P(τ;θ)
  • R(τ) 是 轨迹 τ τ τ 发生的奖励
  • 6.6 表示是在 P ( τ ; θ ) 概率分布下 , P(τ;θ)概率分布下, P(τ;θ)概率分布下,轨迹 τ τ τ发生的期望(奖励)值 E τ − P ( τ ; θ ) E_{τ-P(τ;θ)} Eτ−P(τ;θ), 记为 J ( θ ) J(θ) J(θ)
  • 6.7是对6.6的θ变量求导,得出最大期望回报(最高点)

在策略梯度算法中,累积回报 R(t) 包含轨迹的随机性,受初始状态、后续动作选择和环境状态转移影响,不同轨迹间回报波动大,导致方差很大。直接用 R(t) 作为梯度更新权重,会使每一步梯度估计值不稳定,增加训练波动性,减缓策略收敛速度。

REINFORCE 算法

REINFORCE 算法是最基础的策略梯度方法之一,由 Ronald J. Williams 于 1992 年提出。其核心思想是通过蒙特卡洛采样方法直接估计策略梯度,利用轨迹的完整回报(Complete Return)来更新策略参数 θ,从而最大化期望累积奖励。


REINFORCE 简单直接,好理解;算法流程清晰,易于实现。策略是随机的,天生带探索性;但也有以下缺点:

  • 更新慢:必须等到整个轨迹结束才能更新一次,在长任务里特别低效;
  • 样本利用率低:每次更新都要重新采样,数据复用不够;
  • 不适合大规模任务:主要适合小型、离散动作空间的问题
近端策略优化算法PPO

为了克服蒙特卡洛方法的缺陷(高方差和完整轨迹依赖),研究者们提出了时序差分方法(Temporal Difference Methods,TD)。时序差分方法基于动态规划的思想,通过引入 Bootstrapping 机制,即利用当前的价值估计来更新自身,而不必等待完整的轨迹结束。这种方法允许在每个时间步进行更新,极大地提高了样本效率。

对于给定的状态 s t s_t st 和动作 a t a_t at,时序差分方法的基本更新公式为:


  • 6.24 广义优势函数 把 轨迹 τ τ τ发生的期望(奖励) 转换成 累计 增量 A ( s t , a t ) A(s_t,a_t) A(st,at)

便更新问题仍然存在,在实际更新策略参数 θ 的过程中,每次采样一批数据进行更新时,

概率分布 π θ ( a ∣ s ) π_θ(a|s) πθ(a∣s) 会发生变化。由于分布改变,之前采集的数据便不能在下一轮更新中再利用。

在策略梯度方法中有多种策略

  • 同策略(On-Policy)训练方法, 同一个智能体既负责与环境交互,也负责策略参数更新。
  • 异策略(Off-Policy)训练方法将这两个职能分开,即固定一个智能体与环境交互而不更新,另一个智能体则只负责从采集的数据中学习更新参数。

"异策略"这种方式可以重复利用历史数据。然而,由于两个智能体的分布不同,直接更新也会导致不稳定的训练。一种思路是调整这两个分布使它们保持一致,重要性采样(Importance Sampling)就是在这种思路下的重要技术。


  • 6.25 更新了策略后, 给采样结果加一个"权重"P(x)/Q(x),就能把偏差修正过来, 就可以使用历史的数据继续进行
  • 6.29 两种策略概率的比值如果差太远, 导致方差爆炸 为了解决这个问题,PPO(Proximal Policy Optimization)提出了一个简单又好用的招数:

    剪切 (Clip) 它会把这个比值限制在[1−ϵ,1+ϵ]之间(通常ϵ取 0.1 或 0.2), 避免策略在一次更新中变化过大。

强化学习流程

在对大语言模型进行有监督微调(SFT)之后,它们已经具备了基本的指令理解和多轮对话能力,可以和用户进行初步的交流。不过,由于这些模型的参数规模庞大、训练数据复杂,它们的行为有时难以预测。"如何让 AI 遵循人类价值观"就成了一个核心问题。

研究人员提出,模型的输出应该遵循3H 原则:

  • 有用性(Helpfulness):回答要对人有帮助。
  • 真实性(Honesty):回答要尽量准确可靠。
  • 无害性(Harmless):回答不能带来负面影响。

为了让模型逐渐学会遵循这些人类偏好,科学家们引入了一种方法------基于人类反馈的强化学习(RLHF)。主要分为奖励模型训练和近端策略优化两个步骤;

奖励模型训练

研究人员会收集一批由人类标注的"偏好数据",比如:对同一个问题,哪一条回答更好。奖励模型就通过这些数据学习人类的喜好,从而能为模型的输出打分。它的任务就是模拟人类偏好:有帮助的内容加分,有害或错误的内容减分。

奖励模型通常采用基于 Transformer 结构的预训练语言模型。在奖励模型中,移除最后一个非嵌入层,并在最终的 Transformer 层上叠加一个额外的线性层。无论输入的是何种文本,奖励模型都能为文本序列中的最后一个标记分配一个标量奖励值,样本质量越好,奖励值越大。

其中 σ 是 sigmoid 函数,r 代表参数为 ψ 的奖励模型的值, r ( x , y ) r (x, y) r(x,y) 表示针对输入提示 x 和输出 y预测出的单一标量奖励值。利用标量值可以对一对样本进行打分,分数差值 r ( x , y w ) − r ( x , y l ) r(x, y_w) − r(x, y_l) r(x,yw)−r(x,yl) 反映了两条回复的差异程度。公式上,可以理解为:

  • 如果首选样本打分比非首选样本高很多,模型就学对了;
  • 如果打分差值小于 0,说明模型把更差的答案评得更高,这是不理想的。

但现实中,由于人类的偏好带有主观性,这类数据集往往会带有噪声,导致奖励模型不可能做到"百分之百正确"。 有研究者引入了模仿学习(Imitation Learning)。这种方法不止是比较两个输出,而是让模型去模仿人类专家的答案。

具体做法是:在损失函数里加入一项"语言模型的自回归损失",让模型更倾向于生成接近人类标注的内容。通过一个系数来调节模仿的权重,这样既能保持比较式训练的优势,又能让模型学会"像人一样回答"。

在实际操作中,在语言模型损失上引入了系数 β r m β_{rm} βrm,以调节其影响。得到如下奖励模型损失:

还有一个问题是:如果奖励模型只追求高分,可能会让最终训练出的策略模型偏离原本的语言模型太远,变得"不稳"。为了解决这个问题,研究者引入了一个惩罚项------KL 散度。最终的奖励函数可以理解为:

总奖励 = 原始奖励 − 惩罚项(KL 散度)

它确保了强化学习策略的输出不会与奖励模型在训练阶段遇到的样本产生明显的偏差,从而维持了学习过程的稳定性和一致性。这种 KL 惩罚机制在整个学习过程中起到了平衡和引导的作用,有助于取得更加稳健和可靠的训练效果。

近端策略优化(PPO),

有了奖励模型之后,就可以把它当作"评委",指导语言模型继续学习。OpenAI 在 RLHF 中常用的一种强化学习算法是PPO(Proximal Policy Optimization,近端策略优化)。它的目标是在不断尝试和调整中,让模型逐步学会生成更符合人类期望的回答。

近端策略优化涉及以下四个模型。

  1. 策略模型(Policy Model),生成模型回复。
  2. 奖励模型(Reward Model),输出奖励分数来评估回复质量的好坏。
  3. 评论模型(Critic Model),预测回复的好坏,可以在训练过程中实时调整模型,选择对未来累积收益最大的行为。
  4. 参考模型(Reference Model),提供了一个 SFT 模型的备份,使模型不会出现过于极端的变化。

RLHF模型 训练的大致步骤是:

  • 环境采样: 策略模型根据输入生成多条回答,奖励模型给这些回答打分。策略模型初始值是:SFT模型
  • 优势估计: 借助评论模型和GAE(广义优势估计)方法,计算出每个回答的"优势值",也就是这条回答相比平均水平好多少。
  • 优化调整: 使用优势值来更新策略模型,让它更倾向于输出高分回答。同时,参考模型(SFT模型)会对比更新前后的差距,确保调整幅度不会过大,从而保持稳定, 即 KL散度约束。

评估模型与奖励模型 表面上是没关系, 但他们共同 优势估计 的输入, 而优势估计的输出影响着评估评估模型的更新.即两者协同工作,一个"裁判",一个"教练",共同提升AI性能。

推理模型强化学习

大语言模型发展过程中,提升推理能力是关键研究方向。DeepSeek 团队开展了基于纯强化学习。DeepSeek 的研究人员采用 GRPO 算法进行强化学习 提升模型推理能力.

Group Relative Policy Optimization(GRPO)是一种基于近端策略优化算法改进而来的优化算法,旨在解决传统 PPO 在计算资源和训练稳定性方面的问题。它通过创新的组奖励机制来估计基线,在不依赖独立价值模型的情况下实现高效训练,尤其适用于大型模型的优化。


DeepSeek-R1-Zero使用群相对策略优化(Group Relative Policy Optimization, GRPO)算法,舍弃了价值模型,通过从一组得分估计基线来优化策略模型

  • 完全避开价值网络:GRPO不再需要训练价值网络,大幅减少计算和内存开销。
  • 群体相对评估:针对同一问题,生成多个不同的回答,通过比较这些回答之间的相对质量来计算优势,而不是依赖绝对值预测。

其奖励建模采用基于规则的奖励 (Rule-based Reward)

我们预先定义一套明确的规则。例如,在数学问题中,如果LLM的答案与标准答案完全一致,或者推导过程中的某一步骤符合已知的数学公理或定理,就给予正奖励。反之,则给予负奖励或无奖励。

这种方式精确、可解释,但缺点是难以覆盖所有情况,尤其对于复杂的、开放式的数学问题,规则的制定本身就是一大挑战。其可扩展性也有限。

这限制了其在实际应用中的推广,促使研究人员进一步探索改进方案,从而引出 DeepSeek-R1 模型。全场景强化学习

  1. 对于推理数据,沿用 DeepSeek-R1-Zero 的方法,基于规则的奖励 (法治);
  2. 对于通用数据,采用奖励模型捕捉复杂场景下的人类偏好,构建类似 DeepSeek-V3的偏好对和训练提示分布。基于LLM的奖励 (Critic/人治)
  3. 不直接依赖大量人类的实时反馈来纠正每一个不良行为,而是预先设定一套指导原则或"宪法条款"。LLM首先会根据这些原则生成初始回答,然后进行自我批判和修正,确保其输出符合这些原则.基于"宪法AI"的LLM奖励 (Constitutional AI-LLM-based Reward) 例如,在数理任务中,宪法条款可能包括"确保每一步逻辑推导的严谨性"、"清晰地展示解题步骤"、"避免无根据的臆断"等。LLM会根据这些内部原则来调整其输出,并基于这种自我修正的过程来获得奖励信号。这旨在培养LLM更内在的"良好行为"模式。

混合奖励机制的优化:研究如何动态、自适应地组合这三种奖励,并评估不同组合对LLM学习效率、性能和泛化能力的影响。

总结

随着Transformer 架构的成功,人工智能不仅在语言处理上突飞猛进,在视觉、语音等领域也迎来了突破。如今,研究者们已经能够把"看"和"听"的能力与"语言"结合起来,形成了功能强大的视觉-语言模型和音频-语言模型。

在这些多模态模型中,常见的设计方式有几种:

  • 双编码器架构:就像给视觉和语言各自配备一个大脑,然后再把它们的理解结果对齐。
  • 融合架构:直接把不同模态的信息搅拌在一起,让模型在同一个空间中学习。
  • 编码器-解码器架构:一部分负责理解输入,另一部分则负责生成输出,类似翻译的过程。

随着研究的深入,这些架构也在不断进化。比如,引入混合模态注意力机制,让模型能更灵活地在图像、语音和文字之间建立联系;利用对比学习,帮助模型更好地区分和匹配不同模态的信息;再结合强化学习,让模型通过试错不断优化表现。根据不同的分类标准,大模型可以分为几种类型。

  • 按参数量分类 :将大模型分为大型、中型和小型。
  • 任务类型分类 : 将大模型分为生成式模型、判别式模型和混合模型。
    • 生成式模型主要用于生成内容,比如文本、图像和音视频。
    • 判别式模型则用于分类和预测任务,比如图像和文本分类。
    • 混合模型则结合了生成和判别的能力,可以执行更复杂的任务。
  • 按应用领域分类 : 可以分为自然语言处理模型、计算机视觉模型和语音处理模型。
    • 自然语言处理模型主要用于处理和理解人类语言,
    • 计算机视觉模型则用于处理图像或视频数据,
    • 语音处理模型则用于处理语音信号,包括语音识别和合成。
  • 按数据模态分类
    • 单模态模型只能处理一种类型的数据,比如文本或图像。
    • 多模态模型则能够同时处理多种数据类型,比如文本和图像。

站在巨人的肩膀上

一文了解大模型的三种类型

大规模语言模型:从理论到实践

LLaMA 超详细解读(paper & code)

混合专家模型的最新研究

语言模型强化学习中的法治人治德治:rule-based, LLM-based, constitutional reward

相关推荐
啊阿狸不会拉杆26 分钟前
《现代人工智能基础》个人解读分享
人工智能·ai·llm·aigc·agent·ml·dl
带娃的IT创业者28 分钟前
国内主流大模型API调用入门与对比:DeepSeek/智谱GLM/Kimi/千问完整指南
python·大模型·api调用·kimi·千问·deepseek·智谱glm
弗锐土豆34 分钟前
使用ollama运行本地大模型
llm·大语言模型·安装·ollama
华农DrLai1 小时前
什么是自动Prompt优化?为什么需要算法来寻找最佳提示词?
人工智能·算法·llm·nlp·prompt·llama
无极低码10 小时前
ecGlypher新手安装分步指南(标准化流程)
人工智能·算法·自然语言处理·大模型·rag
洛阳泰山15 小时前
MaxKB4j Docker Compose 部署指南
java·docker·llm·springboot·rag·maxkb4j
华农DrLai16 小时前
什么是Prompt工程?为什么提示词的质量决定AI输出的好坏?
数据库·人工智能·gpt·大模型·nlp·prompt
cuguanren18 小时前
MuleRun vs OpenClaw vs 网页服务:云端安全与本地自由的取舍之道
安全·大模型·llm·agent·智能体·openclaw·mulerun
马克Markorg18 小时前
OpenClaw架构学习与思考
大模型·agent·openclaw·小龙虾
大数据AI人工智能培训专家培训讲师叶梓18 小时前
FaithLens:8B 参数大模型幻觉检测器,性能超 GPT-4.1 且低成本可解释
大模型·llm·大模型幻觉·人工智能讲师·大模型讲师·大模型培训·llm幻觉