想象你是一位体操队的主教练。以往你会请一位“结果裁判”:运动员完成整套动作后,他只报一个总分——9.5 分。这个分数能告诉你“表现如何”,却说不清是哪个空翻角度偏了、哪次落地重心没稳住。于是你又请来一位“过程裁判”,他站在场边,每跳完一个动作立刻记录:这一步腾空高度不够、那一步落地很稳。有了过程裁判,你才知道该让运动员重点练什么。训练“过程奖励模型(PRM)”,就是在 AI 的推理模型里培养这样一位过程裁判——它不看最终答案,而是对推理链条上的每一步单独评判:这一步推导是否正确?这一步跳跃是否合理?这篇文章会带你走完 PRM 训练的完整路线:从步骤数据的准备、自动生成软标签,到模型架构设计、损失函数定义,再到训练后如何用这位“裁判”提升推理准确率。读懂它,你就掌握了一项让大模型“步步可查、错位可追”的关键技能。

岗位关联

掌握 PRM 训练方法,意味着你拥有了让大模型在推理中“步步可查、错位可定位”的能力——这是推理优化工程师与强化学习研究员的核心竞争力。

目录
  1. 可视化演示
  2. 1. PRM基础概念
  3. 2. 训练数据准备
  4. 3. 自动标注技术
  5. 4. 模型架构设计
  6. 5. 训练损失目标
  7. 6. 推理阶段应用
  8. AI 应用场景
  9. Python 演示
  10. 常见误区
  11. 面试题

可视化演示

本节配有交互动效(进入视口后自动加载,约 3KB)。

1. PRM基础概念

想象你请来两位裁判给运动员打分:结果裁判站在终点,等整套动作结束后给出一个总分;过程裁判则站在场边,运动员每完成一个动作就记录一条——“这个空翻腾空高度够”“这次落地膝盖弯了 15 度”。要让运动员真正进步,后者给出的信息密度远超前者。PRM(过程奖励模型)就是大模型世界里的“过程裁判”。

在推理模型的训练与评估中,很早就有“结果裁判”ORM(结果奖励模型)。它读完整条推理链,只输出一个分数判断最终答案对不对。问题在于:最终答案错时,你不知道是哪一步错的;答案对时,也不知道是不是“蒙对”的。PRM 把奖励从“整体”细化到“每一步”,让错误的定位从“整条链”缩小到“具体某一步”。

形式化地说,PRM 是一个打分函数:给定问题以及截至第 i 步的推理前缀,它输出一个 0 到 1 之间的分数,表示“第 i 步大概率是正确的”。训练完成后,这位裁判有三种典型上场方式:一是对多条候选推理链做离线择优,二是作为强化学习里的逐步奖励信号,三是作为错误定位工具,回溯到推理链中出错的具体步骤。

正如体操队有了过程裁判,才能把训练拆解成可逐项改进的动作单元;推理模型有了 PRM 这位“步步把关”的裁判,才知道该在哪一步回溯、在哪一步继续,而不是对着一个总分叹气。

ri=fθ(q,a1:i)\displaystyle r_i = f_{\theta}(q, a_{1:i})
第 i 步的过程奖励 = 打分网络对“问题 + 前 i 步推理历史”输出的正确性概率。
  1. 上下文输入$q$ 表示原始问题(如一道数学应用题),$a_{1:i}$ 表示从第 1 步到第 $i$ 步的推理前缀,二者构成了裁判做判断时的全部依据。
    q,a1:i\displaystyle q, a_{1:i}
  2. 评分函数$f_{\theta}$ 是参数为 $\theta$ 的神经网络(通常是大语言模型加打分头),它把上下文映射为一个实数,表示“这一步大概率对不对”。
    fθ(⋅)\displaystyle f_{\theta}(\cdot)
  3. 过程奖励输出$r_i$ 是第 $i$ 步的过程奖励,取值范围通常在 0 到 1 之间,越接近 1 代表该步越有可能是正确的。
    ri∈(0,1)\displaystyle r_i \in (0,1)

2. 训练数据准备

要训练一位合格的过程裁判,第一步是给他看大量带步骤评分的比赛录像。对 PRM 来说,这些“录像”就是带推理链的问答数据——比如数学题目的思维链(CoT,即模型一步步写下推导过程的文本)。

一条推理链长什么样?通常是一段自然语言,模型会“因为……所以……”地逐步推导。要变成训练样本,先要切分成步骤。最常见的切分信号是换行符——推理模型习惯一行写一步;其次是句号、分号等标点,以及“因此、由此可得”这类推理连接词。切分粒度决定了标签的精细程度:切得太粗,无法定位错误;切得太碎,标注成本飙升。

切分之后,每个步骤需要标记“对/错”。人工标注质量最高,但需要专家逐跳审查,成本昂贵;实际工程里通常先人工标注一小批高质量数据,再用来校验自动标注的结果。数据规模方面,公开工作一般使用数万到数十万条步骤级样本,质量比数量更重要——一份干净的数据集胜过十份噪声堆积的数据集。

教练手里的录像越清晰,裁判学得越准。同样,步骤切分是否合理、标注是否正确,直接决定 PRM 的上限——这是整个训练流程的地基。

a1:S=[s1,s2,…,sS]\displaystyle a_{1:S} = [s_1, s_2, \ldots, s_S]
一条推理链被切分为 S 个步骤的列表,之后的标注、评分都发生在“步骤”这个粒度上。
  1. 完整推理链$a_{1:S}$ 代表从第一步到第 $S$ 步的整条推理链,是切分前的原始对象。
    a1:S\displaystyle a_{1:S}
  2. 切分为列表方括号表示把连续文本分割成一个步骤序列,每次切分都发生在语义边界(换行、标点、连接词)处。
    [s1,s2,…,sS]\displaystyle [s_1, s_2, \ldots, s_S]
  3. 单个步骤$s_i$ 是第 $i$ 个步骤,它是独立的可标注、可打分的基本单元,对应推理中的一次推导。
    si\displaystyle s_i

3. 自动标注技术

请专家逐跳打分太贵了,于是教练想了个聪明办法:让一批见习裁判跟着运动员试跳,多数人跳对了,就认为这一步“值得肯定”。这就是蒙特卡洛自动标注的直觉——用模型自己的大量采样来代替昂贵的人工。

具体做法是:对于第 i 步,把该步骤之前的推理前缀当作起点,让生成模型继续采样 N 条完整续写,然后检查每条续写的最终答案是否正确。如果采样 20 条,其中 14 条最终答对了,那么这一步的软标签就是 14/20 = 0.7。

软标签是 0 到 1 之间的实数,它刻画的是“从这一步出发还能到达正确答案的概率”,比 0/1 硬标签更平滑、更抗噪。这套方案的代表作是 Math-Shepherd:对数学推理链做自动过程监督,在 GSM8K 和 MATH 数据集上显著提升了最佳候选链的选择准确率。

见习裁判可以无限量上岗,成本几乎为零。蒙特卡洛软标签让“过程监督数据”从奢侈品变成了可流水线生产的资源,这正是 PRM 能够大规模落地的前提。

y^i=1N∑k=1NI(第k条续写最终答对)\displaystyle \hat{y}_i = \frac{1}{N}\sum_{k=1}^{N}\mathbb{I}\left(\text{第}k\text{条续写最终答对}\right)
软标签等于 N 次续写中最终答对次数的比例,取值在 0 到 1 之间,本质是一个蒙特卡洛估计量。
  1. 多次续写采样从第 $i$ 步出发,独立采样 $N$ 条完整续写,下标 $k$ 从 1 遍历到 $N$。
    k=1,…,N\displaystyle k=1,\ldots,N
  2. 指示函数判定$\mathbb{I}(\cdot)$ 是“指示灯”,括号里的条件成立时取 1,不成立时取 0,用来统计“哪条续写最终答案正确”。
    I(第k条续写最终答对)\displaystyle \mathbb{I}(\text{第}k\text{条续写最终答对})
  3. 取平均得软标签对 $N$ 个 0/1 结果求平均,得到 0 到 1 之间的连续值 $\hat{y}_i$,作为第 $i$ 步的自动标注。
    y^i=1N∑k=1N⋯\displaystyle \hat{y}_i = \frac{1}{N}\sum_{k=1}^{N}\cdots

4. 模型架构设计

裁判的装备就是一个“好记性 + 计分板”的组合:基础模型负责记住并理解每一步的上下文,计分板(价值头)负责把理解变成分数。

PRM 通常复用一个大语言模型作为骨干,例如 Qwen、Llama、Mistral 系列。推理链以文本形式输入模型,模型在每一步末尾产出隐状态 h_i,它编码了“这一步之前发生了什么、这一步写了什么”的全部信息。基础模型越强,它对步骤语义的理解就越准确。

在这个隐状态之上,加一个轻量打分头:常见的是单层线性变换后接 sigmoid,把得分压到 (0,1) 区间。为什么不用 softmax?因为我们要对每一步独立打分,步骤数量不固定,sigmoid 正好给出“每一步对/错”的独立概率语义。有的实现会把每步的首尾 token 隐状态拼接后再送入打分头,以捕捉更完整的步骤边界信息。

好记性加计分板的组合,让 PRM 既能读懂长篇推理,又能把理解落成分数——就像裁判既看得懂整套动作,又能精准记录每个空翻的偏差。

y^i=σ(Whi+b)\displaystyle \hat{y}_i = \sigma(W h_i + b)
打分头先做线性变换再接 sigmoid,把每一步的隐状态压缩成 0 到 1 的正确性概率。
  1. 步级隐状态$h_i$ 是语言模型在第 $i$ 步末尾 token 处输出的隐向量,浓缩了问题到这一步为止的全部信息。
    hi\displaystyle h_i
  2. 线性打分$W h_i + b$ 是价值头的一层线性变换,$W$ 是权重矩阵,$b$ 是偏置,把高维隐向量映射成一个实数。
    Whi+b\displaystyle W h_i + b
  3. 概率化输出$\sigma$ 是 sigmoid 激活函数,把任意实数压到 0 到 1 之间,输出 $\hat{y}_i$ 就是预测的“这一步正确概率”。
    σ(x)=11+e−x\displaystyle \sigma(x) = \frac{1}{1+e^{-x}}

5. 训练损失目标

有了录像(数据)和裁判(模型),接下来就是校准裁判:看到标注为“对”的动作要多给高分,看到标注为“错”的要压低分数。这个校准过程由损失函数驱动。

PRM 的训练目标是逐步骤的二分类。最常用的损失是二元交叉熵(BCE):对一条链上的每个步骤,把模型的预测分与标签对比,差距越大惩罚越大。将整条链所有步骤的交叉熵取平均,就得到该样本的损失。

工程细节上,批次内通常混合多个问题,各自对链内步骤求平均后再做梯度更新。参数更新一般沿用语言模型的 AdamW 优化器,学习率从 1e-5 到 2e-5 起步;训练方式可以选择冻结基础模型只练价值头,也可以对全模型做 LoRA 轻量微调。部分工作还会对步骤加权,例如让越靠后的步骤权重越高,因为越到后期错误越致命。

校准裁判的本质,就是让它的打分习惯无限逼近录像里的标准标注。损失函数越低,裁判的每一笔打分越有依据——这正是“训练”二字的含义。

L=−1S∑i=1S[yiln⁡y^i+(1−yi)ln⁡(1−y^i)]\displaystyle \mathcal{L} = -\frac{1}{S}\sum_{i=1}^{S}\left[y_i \ln \hat{y}_i + (1-y_i)\ln(1-\hat{y}_i)\right]
逐步骤计算二元交叉熵再取平均:每步预测越贴近标签,损失越小,裁判的打分习惯就越接近标准答案。
  1. 真实标签$y_i$ 是第 $i$ 步的软标签(或人工硬标签),取值通常在 0 到 1 之间,是裁判打分要逼近的“标准答案”。
    yi\displaystyle y_i
  2. 两项交叉熵$y_i \ln \hat{y}_i$ 惩罚“该步正确却给低分”,$(1-y_i)\ln(1-\hat{y}_i)$ 惩罚“该步错误却给高分”。
    yiln⁡y^i+(1−yi)ln⁡(1−y^i)\displaystyle y_i \ln \hat{y}_i + (1-y_i)\ln(1-\hat{y}_i)
  3. 求和取平均把一条链上 S 个步骤的交叉熵求和并除以 S,得到这条链的平均损失,作为一次梯度更新的优化目标。
    L=−1S∑i=1S⋯\displaystyle \mathcal{L} = -\frac{1}{S}\sum_{i=1}^{S}\cdots

6. 推理阶段应用

裁判培训完,终于要上场了。在正式比赛里,过程裁判不是站在终点等结果,而是在每个动作结束后立刻给出反馈,帮助运动员决定下一步怎么走。

推理阶段最常见的用法是“生成候选步骤 + PRM 打分筛选”。步级采样择优(step-level best-of-n)的做法是:每走一步采样若干候选步骤,PRM 评分最高的留下;步级束搜索(step-wise beam search)则更进一步:维护 k 条路径,每一步扩展候选后用 PRM 分数保留前 k 个,直到走完整个推理链。

评估整条链时,PRM 各步分数可以这样聚合:对前缀 a_{1:i},定义它的价值为前缀内所有步骤得分的平均。平均分比只取最后一步更平稳,也比单纯求和更能公平比较不同长度的链。业界实践表明,在 MATH 等数据集上,PRM 加步级搜索相比 ORM 加整链采样,准确率能提升数个百分点。

裁判的每一声哨响都改变了比赛走向。PRM 从训练走向推理,让“步步把关”从一句口号变成搜索算法里实实在在的筛选——这正是过程奖励模型的价值兑现时刻。

V(a1:i)=1i∑j=1irj\displaystyle V(a_{1:i}) = \frac{1}{i}\sum_{j=1}^{i} r_j
前缀价值等于各步平均分:只看最后一步会丢失中间信息,平均分让不同长度的推理链具有可比性。
  1. 推理前缀$a_{1:i}$ 表示到第 $i$ 步为止的部分推理链,是搜索过程中被评估的对象。
    a1:i\displaystyle a_{1:i}
  2. 累加各步奖励将第 1 步到第 $i$ 步的过程奖励 $r_j$ 全部累加,保留每一步裁判给出的信息。
    ∑j=1irj\displaystyle \sum_{j=1}^{i} r_j
  3. 求平均得价值除以 $i$ 得到前缀平均分 $V(a_{1:i})$,用它来比较不同长度的候选路径,决定哪些路径继续扩展。
    V(a1:i)\displaystyle V(a_{1:i})

AI 应用场景

1. 数学推理题的步骤级纠错与择优

阶段:推理评估与训练数据生产

解决的问题:传统做法把整条思路交给模型打分,错题只能看到“错了”这一个信号,无法定位是哪一步推导出了问题;PRM 把每条思路切成步骤逐点评分,能明确告诉你错在第几步,甚至帮助生成模型回溯修正。

具体案例:Math-Shepherd 使用蒙特卡洛自动标注,为 GSM8K 和 MATH 数据集中的海量推理步骤生成软标签,训练 PRM 后做 64 路采样择优,相比整链 ORM 择优,准确率提升约 3 到 10 个百分点。

2. 代码生成与智能体的过程监督

阶段:智能体工具调用与过程奖励

解决的问题:智能体写代码或操作工具时往往要连续多步执行,最终报错很难定位是“哪一次调用”出了问题;PRM 对每个中间动作或代码片段打分,能提前发现高风险步骤,触发中断或回滚。

具体案例:在 AutoGPT 类智能体中,每一步工具调用后让 PRM 评估“这一步是否通往成功”,分数过低的步骤直接触发重新规划,从而减少无效 API 调用,节约成本并提高任务完成率。

3. 推理模型的强化学习密集奖励

阶段:强化学习训练(RLHF/RLVR)

解决的问题:传统强化学习只在最终答案对错时给出 +1/-1 的稀疏奖励,模型难以判断该调整哪一步;PRM 提供逐步骤的密集奖励,让梯度信号更充分,训练更稳定。

具体案例:训练数学推理模型时,用 PRM 对策略模型每一步生成打分,作为奖励信号配合 PPO 算法更新。相比只给最终奖励,模型收敛更快,最终 pass@1 准确率更高,且训练过程更可控。

Python 演示

python65 行
import numpy as np def split_steps(chain):    # 步骤切分: 按换行把推理链切成单个步骤, 丢弃空行    return [s for s in chain.split('\n') if s.strip()] def rollout_from_step(gold, noise=0.25):    # 模拟从某一步续写一次, 返回最终答案是否正确(1/0)    p = 0.5 + (gold - 0.5) * (1 - noise)    return 1.0 if np.random.rand() < p else 0.0 def mc_soft_label(gold, n=40):    # 蒙特卡洛自动标注: 反复续写 n 次, 统计答对比重作为软标签    return np.mean([rollout_from_step(gold) for _ in range(n)]) def make_features(steps, dim=12):    # 把每个步骤转成词袋向量, 作为轻量 PRM 的输入特征    feats = []    for s in steps:        v = np.zeros(dim)        for w in s.lower().split():            v[hash(w) % dim] += 1.0        feats.append(v)    return np.array(feats) def train_prm(X, y, epochs=500, lr=0.5):    # 训练逻辑回归式打分器, 损失为逐步骤交叉熵    w, b = np.zeros(X.shape[1]), 0.0    for _ in range(epochs):        logit = X @ w + b        p = 1.0 / (1.0 + np.exp(-logit))        w -= lr * (X.T @ (p - y) / len(y))        b -= lr * (p - y).mean()    return w, b def predict(w, b, X):    return 1.0 / (1.0 + np.exp(-(X @ w + b))) def main():    np.random.seed(42)    chains = [        "内角和定理成立\n两角求和为130\n第三角为50",        "先算乘法得6\n再加上5得11\n最后减去3得8",    ]    golds = [        [1.0, 0.0, 1.0],        [1.0, 1.0, 0.0],    ]    X_all, y_all = [], []    for chain, gold in zip(chains, golds):        steps = split_steps(chain)        X_all.extend(make_features(steps))        soft = [mc_soft_label(g) for g in gold]        y_all.extend(soft)        print("步骤软标签:", np.round(soft, 2))    X_all = np.array(X_all)    y_all = np.array(y_all)    w, b = train_prm(X_all, y_all)    pred = predict(w, b, X_all)    print("PRM步骤分数:", np.round(pred, 3))    acc = np.mean((pred > 0.5) == (np.array(golds).ravel() > 0.5))    print("预测与真实标签一致率:", np.round(acc, 2)) if __name__ == "__main__":    main()
目的:演示了 PRM 训练的完整轻量流程——步骤切分、蒙特卡洛软标签自动标注、交叉熵损失训练打分器,并输出预测分数与准确率。
  1. return [s for s in chain.split('\n') if s.strip()]按换行把推理链切成步骤,空行直接丢弃
  2. p = 0.5 + (gold - 0.5) * (1 - noise)将步骤真值映射为“续写答对”的概率,真值越高越容易答对
  3. return np.mean([rollout_from_step(gold) for _ in range(n)])蒙特卡洛软标签:多次采样取均值
  4. v[hash(w) % dim] += 1.0词袋特征:把步骤文本变成定长向量,供轻量打分器使用
  5. p = 1.0 / (1.0 + np.exp(-logit))sigmoid 把线性输出压成 0 到 1 的预测分
  6. w -= lr * (X.T @ (p - y) / len(y))交叉熵损失的梯度下降更新
  7. acc = np.mean((pred > 0.5) == (np.array(golds).ravel() > 0.5))用阈值 0.5 对比预测与真实标签,统计一致率

常见误区

误区我以为 PRM 就是把最终答案交给模型多评几次分,取个平均,本质上和 ORM 没区别。

正解两者打分对象完全不同。ORM 对整个推理链的最终结果打一个分;PRM 把推理链切分成步骤,对每一步单独输出“这一步对错的概率”。训练数据、模型输出、使用方式都因此不同——PRM 能明确指出“错在哪一步”,ORM 只能告诉你“结果错了”。

为何常见:两者都叫“奖励模型”且都通过打分来优化推理,初学者很容易只看到“打分”的表层相似性,忽略了打分粒度的本质差异。

误区训练 PRM 必须请专家把每一步推理都人工标对错,成本太高,小团队根本做不了。

正解人工标注只是途径之一。现在主流做法是用蒙特卡洛自动标注:让模型从待评估步骤出发采样多条续写,统计最终答对的比例作为软标签。Math-Shepherd 就是靠这套流程大规模生产步骤标签,把成本降到了人工的零头。

为何常见:早期 PRM 研究确实依赖人工过程标注,给业界留下了“PRM 必须人工标注”的刻板印象。

误区蒙特卡洛软标签是 0.6,说明这一步只有 60% 是对的,我可以把它当作精确真值来用。

正解软标签衡量的是“从这一步出发、继续采样最终能答对的频率”,它是一个经验估值,受采样次数、采样温度、生成模型强弱的影响,并不等于步骤的客观对错概率。它适合作为弱监督信号,不适合当作精密真值。

为何常见:“标签”二字容易让人误以为是权威真值,忽略了它来自随机采样统计这一事实。

误区PRM 训练好后,模型每生成一步都要同步调用它打分,否则过程监督就没意义了。

正解训练与推理可以解耦。推理时可以用“走 K 步打一次分”“每步从若干候选中筛一次”或“离线对整条链逐点评分选优”等不同频率使用 PRM,工程上完全不必在生成循环里强耦合。

为何常见:“过程奖励”的名称容易让人误以为它必须介入每一步的生成过程。

误区这题 A 链 PRM 打了 0.9,那题 B 链只打 0.8,所以 A 链一定比 B 链更靠谱。

正解PRM 分数是模型在自身训练分布下对“步骤正确性”的条件概率估计,不同问题、不同模型之间的分数没有绝对可比性。通常只在同一问题内部用 PRM 排序候选链(best-of-n)或筛选候选步骤。

为何常见:人习惯把分数当作绝对标尺,忽略了模型分数的分布依赖性。

面试题

Q1. 过程奖励模型(PRM)与结果奖励模型(ORM)的核心区别是?

单选题 · easy

  • A.PRM 只看最终答案并给出总分
  • B.PRM 对推理每一步单独评分← 正确答案
  • C.ORM 的训练数据不需要标注
  • D.PRM 不依赖任何生成模型

答案:B。PRM 的核心特征是对推理链上的每一步单独输出正确性分数,这正是“过程裁判”与“结果裁判”的本质差异。A 描述的是 ORM 的行为;C 和 D 都不成立,PRM 训练需要带步骤标签的数据,且依赖生成模型参与数据构造与编码。

Q2. 关于 PRM 训练中的“软标签”,下列说法正确的是?

单选题 · easy

  • A.只能是 0 或 1 的离散整数
  • B.由多次采样统计得到的实数← 正确答案
  • C.由人工标注得到的唯一真值
  • D.与最终答案的正确率无关

答案:B。软标签来自蒙特卡洛采样,是“从该步出发最终答对的比例”,因此是 0 到 1 之间的实数。A 和 C 描述的是硬标签的特征;D 与软标签的定义直接矛盾,软标签本身就是对最终答对概率的估计。

Q3. 训练 PRM 最常用的损失函数是?

单选题 · easy

  • A.均方误差损失函数
  • B.逐步骤二元交叉熵损失← 正确答案
  • C.三元组排序损失函数
  • D.生成式语言建模损失

答案:B。PRM 把每个步骤当成二分类问题(对/错),最自然的选择是二元交叉熵,对每个步骤的预测分与标签求交叉熵后取平均。A 常用于回归任务,C 多用于检索排序,D 是预训练语言模型的目标,都不是 PRM 的主流损失。

Q4. 用蒙特卡洛方法为第 i 步生成软标签的正确做法是?

单选题 · mid

  • A.从第 i 步续写多条并统计答对比← 正确答案
  • B.用最终答案直接标记所有步骤
  • C.只采样一条完整续写做判断
  • D.用规则匹配关键词生成标签

答案:A。蒙特卡洛软标签的关键是从第 i 步出发做多次续写,统计最终答案正确的比例。A 正是标准做法。B 是 ORM 式的整链标签,会丢失步骤差异;C 单次采样方差太大不稳健;D 没有利用真实生成信号。

Q5. PRM 打分最常用的结构是“隐状态 + 打分头”,打分头通常是?

单选题 · mid

  • A.一层线性变换加 sigmoid 激活← 正确答案
  • B.多层卷积网络加池化
  • C.独立的随机森林分类器
  • D.词表上的 softmax 分布

答案:A。主流 PRM 在每步末尾的隐状态上接一层线性变换,再接 sigmoid 输出 0 到 1 的概率分。B 是图像任务的典型结构,C 不参与语言模型推理,D 是语言模型生成 token 的概率分布,不是步骤打分头。

Q6. 相比 ORM,PRM 训练出的模型更擅长什么?

单选题 · mid

  • A.生成更快更短的答案
  • B.指出推理中出错的具体步骤← 正确答案
  • C.不加推理直接给出结果
  • D.压缩模型的参数量

答案:B。PRM 天然具备步骤级监督能力,可以逐点评判每一步的对错,从而定位错误步骤。A 与推理速度无关,C 恰好与推理模型的目标相反,D 与模型压缩无关,这些都不是 PRM 的优势。

Q7. 步级束搜索(step-wise beam search)的核心流程是?

单选题 · mid

  • A.每步只保留当前分数最高的单条路径
  • B.每步扩展候选并用 PRM 筛选保留多条← 正确答案
  • C.用最终答案反推每一步的搜索方向
  • D.所有步骤并行生成后随机挑选

答案:B。步级束搜索在每一步从当前路径扩展出多个候选步骤,再用 PRM 分数排序,保留前 k 条路径继续。A 是贪心解码而非束搜索;C 是事后反推,不属于搜索流程;D 缺少分数筛选,与步级束搜索无关。

Q8. 对推理链做步骤切分时,常用哪些信号作为切分依据?

多选题 · mid

  • A.换行符或自然段落分隔← 正确答案
  • B.句号、分号等标点符号← 正确答案
  • C.“因此”“所以”等推理连接词← 正确答案
  • D.每个步骤必须等长切分

答案:ABC。推理模型通常一行一步,因此换行是最常用信号;句号、分号以及“因此”“由此可得”等连接词也能标识步骤边界。D 要求等长切分违背自然语言的语义边界,会切断完整的推导单元,不是合理做法。

Q9. 关于人工硬标签与蒙特卡洛软标签,正确的说法有?

多选题 · hard

  • A.人工标签精度更高但成本也更高← 正确答案
  • B.软标签是 0 到 1 的连续概率值← 正确答案
  • C.软标签能刻画步骤的不确定性← 正确答案
  • D.软标签与人工标签完全等价

答案:ABC。专家人工标注通常更准但昂贵;软标签来自多次采样的答对比例,是连续值,能反映“这一步是否通向正确答案”的不确定性。D 错误:软标签是经验估计,受采样数量和策略影响,与人工标签并不等价。

Q10. 关于 PRM 分数的聚合与使用,正确的有?

多选题 · extreme

  • A.前缀分数常取各步的平均值← 正确答案
  • B.平均分能更公平比较不同长度的链← 正确答案
  • C.单看最后一步会丢失中间信息← 正确答案
  • D.PRM 分数可直接跨问题比较

答案:ABC。对前缀内各步奖励取平均,是评估部分推理链的常用聚合方式,比单纯求和更能公平比较长度不同的链;只看最后一步则完全忽略中间步骤的裁判信息。D 错误:PRM 分数是分布依赖的概率估计,不能跨问题直接比较。