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

【COT】PromptCoT 2.0少样本训练 CoT

《PromptCoT 2.0》详解:少样本下如何构建与训练 CoT

字节与港大提出的 PromptCoT 2.0,在少样本、无强教师、无人工标注条件下,高效生成高质量 CoT(Chain-of-Thought)数据并训练模型。


1. 核心目标与动机

传统 CoT 依赖人工标注的“问题-推理链-答案”三元组,但:

  • 人工成本高:Olympiad 数学/竞赛编程题稀缺且昂贵;
  • 合成数据太简单:现有方法生成的问题难度低、多样性差;
  • 强教师不可得:SFT 需要更强模型蒸馏,但最强模型往往是闭源的。

“人类策划的数据集成本高昂且有限,而现有的合成语料库往往过于简单或狭窄(human-curated datasets are costly and limited, while existing synthetic corpora are often too easy or narrow)。”

PromptCoT 2.0 的目标是:仅用开源问题冷启动,自动生成高难度、高多样性的 CoT 数据,用于训练任意规模的 LLM。


2. 数据构造:EM 驱动的 CoT 合成(核心创新)

PromptCoT 2.0 将 CoT 合成建模为 概念(c)→ 理由(z)→ 问题(x) 的生成过程,其中 z 即 CoT(rationale)。整个流程分为两阶段:

2.1 冷启动初始化(Cold-start Initialization)

输入:开源问题(如 AoPS 数学题、Codeforces 编程题)。

步骤

  1. 概念提取:用 4 个强模型(Qwen2.5-32B/72B, Llama-3.1-70B, phi-4)为每个问题标注 基础概念

    “识别{num concepts}个基础概念……是标准课程中教授的核心概念,精确且可衡量。”
    示例(数学题)

    • 问题:“求 2019⁸ + 1 的最小奇素因子”
    • 概念:["模运算", "费马小定理", "素数性质", "指数同余"]
  2. 理由生成(CoT 生成):用同样模型生成 反向工程式 CoT

    “展示如何将给定基础概念自然组合成指定难度的问题……另一位教师遵循这些步骤能复现相同问题。”
    示例(简化)

    • 理由(CoT):“首先,利用费马小定理分析 aᵖ⁻¹ ≡ 1 (mod p);其次,设 p 为奇素因子,则 2019⁸ ≡ -1 (mod p);两边平方得 2019¹⁶ ≡ 1 (mod p),故 16 是 2019 模 p 的阶;因此 p ≡ 1 (mod 16);最后枚举满足条件的最小奇素数。”

输出:种子数据集 (c, z, x),用于初始化两个模型:

  • 理由生成模型 qϕ(z∣c,x)q_\phi(z|c, x)qϕ(zc,x):给定概念和问题,生成 CoT。
  • 问题生成模型 pθ(z,x∣c)p_\theta(z, x|c)pθ(z,xc):给定概念,生成 CoT 和问题。

【关键点】:冷启动不需要人工标注,仅用开源问题 + 多模型投票即可获得高质量初始 CoT。

2.2 EM 优化:奖励函数的定义、计算与分数来源(重点详解)

PromptCoT 2.0 的核心是 Expectation–Maximization (EM) 框架,其目标是联合优化理由生成模型 qϕq_\phiqϕ 与问题生成模型 pθp_\thetapθ。该过程严格遵循变分推断的 ELBO(Evidence Lower Bound)理论。

(1)理论基础:ELBO 与奖励函数的来源

目标是最大化观测数据的对数似然 log⁡pθ(x∣c)\log p_\theta(x|c)logpθ(xc)。由于直接优化困难,引入变分分布 qϕ(z∣c,x)q_\phi(z|c, x)qϕ(zc,x),得到 ELBO:

log⁡pθ(x∣c)≥Eqϕ(z∣c,x)[log⁡pθ(z,x∣c)]−KL(qϕ(z∣c,x)∥pθ(z∣c)) \log p_\theta(x|c) \geq \mathbb{E}_{q_\phi(z|c,x)}[\log p_\theta(z, x|c)] - \mathrm{KL}(q_\phi(z|c, x) \parallel p_\theta(z|c)) logpθ(xc)Eqϕ(zc,x)[logpθ(z,xc)]KL(qϕ(zc,x)pθ(zc))

  • E-step:固定 pθp_\thetapθ,更新 qϕq_\phiqϕ 以最小化 KL 散度。最优解为:
    qϕ⋆(z∣c,x)∝pθ(z,x∣c)=pθ(x∣z,c)pθ(z∣c) q_\phi^\star(z|c, x) \propto p_\theta(z, x|c) = p_\theta(x|z, c) p_\theta(z|c) qϕ(zc,x)pθ(z,xc)=pθ(xz,c)pθ(zc)
    这正是奖励函数的理论来源

  • M-step:固定 qϕq_\phiqϕ,更新 pθp_\thetapθ 以最大化期望联合对数似然:
    Eqϕ(z∣c,x)[log⁡pθ(z,x∣c)] \mathbb{E}_{q_\phi(z|c,x)}[\log p_\theta(z, x|c)] Eqϕ(zc,x)[logpθ(z,xc)]

(2)奖励函数的定义与计算(回答问题1)

在 E-step 中,为从 qϕ(z∣c,x)q_\phi(z|c, x)qϕ(zc,x) 采样的候选 CoT zzz 打分,使用奖励函数

R(c,x,z)=log⁡pθ(x∣z,c)+log⁡pθ(z∣c) R(c, x, z) = \log p_\theta(x|z, c) + \log p_\theta(z|c) R(c,x,z)=logpθ(xz,c)+logpθ(zc)

“奖励与联合对数似然成正比:它们必须 align with the concepts while also being predictive of valid prompts(奖励与联合对数似然成正比:它们必须与概念对齐,同时能预测有效问题)。”

分数是怎么算出来的?

  • log⁡pθ(z∣c)\log p_\theta(z|c)logpθ(zc):问题生成模型 pθp_\thetapθ 在给定概念 ccc 下生成 CoT zzz对数概率
  • log⁡pθ(x∣z,c)\log p_\theta(x|z, c)logpθ(xz,c)pθp_\thetapθ 在给定 zzzccc 下生成原问题 xxx对数概率

实际操作(§5.4.1):

  1. 对每个 (c,x)(c, x)(c,x),从 qϕ(z∣c,x)q_\phi(z|c, x)qϕ(zc,x) 采样 8 个候选 CoT
  2. 对每个候选 ziz_izi,用当前 pθp_\thetapθ 计算其 token-level 的对数似然(即语言模型的标准 log-prob);
  3. 将两部分 log-prob 相加,得到总奖励 R(c,x,zi)R(c, x, z_i)R(c,x,zi)
  4. 选择奖励最高的 z∗z^*z 作为“伪标签”,用于监督微调 qϕq_\phiqϕ

因此,分数完全来自语言模型 pθp_\thetapθ 对序列 (z,x)(z, x)(z,x) 的概率估计,无需外部打分器。

(3)优化方式:如何更新模型
  • E-step(更新 qϕq_\phiqϕ

    • (c,x,z∗)(c, x, z^*)(c,x,z) 视为监督信号;
    • qϕq_\phiqϕ 进行 监督微调(SFT),使其更倾向于生成高奖励 CoT。
    • 训练细节(§5.4.1):学习率 2×10−62 \times 10^{-6}2×106,batch size 16,温度 1.0。
  • M-step(更新 pθp_\thetapθ

    • 使用当前 qϕq_\phiqϕ 确定性解码(温度 0.0)生成 CoT zzz
    • (c,z,x)(c, z, x)(c,z,x) 三元组上对 pθp_\thetapθ 进行标准语言建模训练,最大化 log⁡pθ(z,x∣c)\log p_\theta(z, x|c)logpθ(z,xc)
    • 训练细节:学习率 2×10−62 \times 10^{-6}2×106,batch size 16。

“在 E-step 中,理由生成模型通过强化学习更新,奖励定义为……在 M-step 中,问题生成模型使用 Eq. 4 的目标进行训练。”

(4)交替优化的意义
  • E-step:让 CoT 更好地“解释”概念并“预测”问题;
  • M-step:让问题生成模型更忠实地“重建”CoT 和问题;
  • 循环往复:CoT 质量提升 → 问题难度提升 → CoT 需更精细 → ……

“交替这两个步骤,逐步改进 qϕq_\phiqϕpθp_\thetapθ,形成一个迭代循环:理由指导问题构建,问题合成反过来促进更有效理由的发现。”

【关键结论】:奖励函数 不是人为设计的启发式规则,而是 ELBO 理论下最优变分分布的对数形式,确保了优化方向的正确性。


3. 训练方法:两种少样本 CoT 训练范式

合成 CoT 后,PromptCoT 2.0 支持两种训练模式,适配不同规模模型:

3.1 自博弈(Self-Play)——适用于强模型(如 Qwen3-30B)

适用场景:模型已有较强推理能力,但缺乏更强教师蒸馏。

流程

  1. 模型在合成问题上生成多个解答(rollouts)。
  2. 自动验证信号给出二元奖励:
    u(x,y)={1解答正确0否则 u(x, y) = \begin{cases} 1 & \text{解答正确} \\ 0 & \text{否则} \end{cases} u(x,y)={10解答正确否则
  3. DPO 优化模型,无需更强教师。

“学习由自动可验证反馈引导,而非依赖外部轨迹(learning is guided by automatically verifiable feedback rather than relying on external traces)。”

问题2:自动验证信号是什么?
根据 §5.4.2,自动验证信号具体为:

  • 数学题:生成的答案是否精确匹配通过 8 次 majority voting 得到的参考答案(boxed answer);
  • 编程题:生成的代码是否通过所有单元测试(3–4 个由 Qwen3-32B 自动生成的 test cases)。

“For mathematics, 30,435 prompts were synthesized using PromptCoT 2.0 and paired with a final boxed answer obtained via majority voting over 8 generations from Qwen3-30B… For programming, each synthesized prompt was paired with 3–4 automatically generated unit tests using Qwen3-32B.”

因此,自动验证信号 = 客观、可程序化判断的正确性指标,不依赖人工或 LLM 打分。

输入数据是什么?
自博弈的输入是 合成的问题(prompts),每个问题包含:

  • 自然语言问题描述
  • (编程题)3–4 个自动生成的单元测试
  • (数学题)一个通过 8 次 majority voting 获得的参考答案

DPO 是让模型学会给出正确答案吗?
是的,但更精确地说,是让模型学会“偏好正确答案”
DPO 的输入是一对样本:

  • 正样本:模型生成的、通过验证的解答(u=1u=1u=1);
  • 负样本:模型生成的、未通过验证的解答(u=0u=0u=0)。

DPO 的目标函数为:
LDPO=−log⁡σ(β[log⁡πθ(y+∣x)πref(y+∣x)−log⁡πθ(y−∣x)πref(y−∣x)]) \mathcal{L}_{\text{DPO}} = -\log \sigma\left( \beta \left[ \log \frac{\pi_\theta(y^+|x)}{\pi_{\text{ref}}(y^+|x)} - \log \frac{\pi_\theta(y^-|x)}{\pi_{\text{ref}}(y^-|x)} \right] \right) LDPO=logσ(β[logπref(y+x)πθ(y+x)logπref(yx)πθ(yx)])
其中 πθ\pi_\thetaπθ 是当前策略,πref\pi_{\text{ref}}πref 是参考模型。

效果:模型学会 在相同问题下,更倾向于生成通过验证的解答

3.2 监督微调(SFT)——适用于弱模型(如 Qwen2.5-7B)

适用场景:模型推理能力较弱,需显式 CoT 指导。

流程

  1. 用强教师模型(GPT-OSS-120B)为合成问题生成完整 CoT。
  2. 学生模型在 (问题, CoT) 对上进行 SFT。

“确保即使是较弱的模型也能通过显式的轨迹级监督,有效受益于 PromptCoT 2.0。”


4. 实验验证:少样本 CoT 的有效性

4.1 Self-Play(Qwen3-30B)

方法AIME 24AIME 25HMMT 25LiveCodeBench v5
Baseline87.785.071.468.1
PromptCoT 2.092.1 (+4.4)89.8 (+4.8)76.7 (+5.3)74.2 (+6.1)

4.2 SFT(Qwen2.5-7B,仅用合成数据)

方法AIME 24AIME 25LiveCodeBench v5
Baseline12.88.014.7
PromptCoT 2.073.165.653.4

“仅用合成提示训练的模型,超越了用人类或混合数据训练的模型。”

4.3 消融实验(SFT,7B 模型)

变体AIME 24Codeforces
Full73.11815
– Cold-start72.1 (-1.0)1677 (-138)
– EM69.8 (-3.3)1592 (-223)

“移除 EM 优化阶段导致最大性能下降,证明迭代优化 CoT 是成功的核心。”


5. 个人评价与建议

【我认为,PromptCoT 2.0 是少样本 CoT 领域的里程碑工作,但在以下方面仍有改进空间:】

  1. 冷启动依赖强模型:需要 4 个 30B+ 模型做标注,对资源有限团队不友好。【我认为,可以用模型集成蒸馏(如用多个 7B 模型投票)替代单一大模型,降低成本。】

  2. EM 收敛性未分析:论文未讨论 EM 是否收敛到全局最优。【我认为,可引入课程学习(Curriculum Learning),从简单 CoT 开始逐步增加难度,稳定训练过程。】

  3. 验证信号局限:仅支持有明确验证标准的任务(如数学、编程)。【我认为,可结合LLM-as-a-Judge(如用 Reward Model 打分)扩展到开放域推理任务。】

  4. 未探索多跳 CoT:当前 CoT 多为单路径推理。【我认为,可引入图结构 CoT,支持多分支、多跳推理,更贴近人类思维。

总体而言,PromptCoT 2.0 通过 EM 优化 + 自动验证 + 两种训练范式,为少样本 CoT 提供了一套完整、可扩展的解决方案,值得在工业界广泛采用。

http://www.dtcms.com/a/422791.html

相关文章:

  • 鸿蒙应用开发和安卓应用开发的区别
  • UNIX下C语言编程与实践12-lint 工具使用指南:C 语言源代码语法与逻辑错误检查实战
  • UNIX下C语言编程与实践5-C 语言编译器 cc(gcc/xlc)核心参数解析:-I、-L、-D 的使用场景与实例
  • 机器视觉的双相机对位模切应用
  • 高档网站设计wordpress好用的商城主题
  • 植物大战僵尸融合版下载安装教程【PC/安卓/iOS 完整攻略 + 常见问题解决】
  • 厦门做网站价格想学网站建设与设计的书籍
  • 【TCSVT→Neurocomputing→ASOC投稿】记一次旷日持久的投稿经历
  • namespace 扩展
  • C语言——深入解析C语言指针:从基础到实践从入门到精通(一)
  • leetcode430:扁平化多级双向链表
  • 网站项目开发收费标准360网站名片怎么做的
  • 分布式秒杀系统设计方案
  • 分布式短链接系统设计方案
  • 分布式光纤声波振动与AI的深度融合:开启智慧感知新时代
  • 电商网站设计论文新网金商网站
  • [pdf、epub]320道《软件方法》强化自测题业务建模需求分析共279页(202509更新)
  • 赎金信--leetcode
  • Harbor磁盘空间清理指南:如何安全清理半年前的镜像
  • 网站开发项目组织架构电商平台怎么找商家
  • 基于Hadoop的肾脏疾病风险分析系统架构设计精髓
  • 如何优雅的布局,height: 100% 的使用和 flex-grow: 1 的 min-height 陷阱
  • Ubuntu20.04使用venv创建虚拟环境并安装ultralytics
  • Docker 镜像知识总结
  • 东莞保安公司2019网站seo
  • 34.MariaDB 数据库
  • Gradle之适配
  • 实战:爬取豆瓣电影Top250,并生成Excel榜单
  • 建网站有什么要求山西网站建设方案
  • The Goldfeld–Quandt test