研究提案:合成预训练数据的组合优化框架
将合成预训练数据策略建模为投资组合问题——基于 FinePhrase 1T token 实验的三维度发现,构建格式、生成器、源数据的联合优化框架
动机
站点已有的 35 篇研究提案覆盖了合成数据在中训练、SFT、RLHF 各阶段的应用——多智能体对抗生成、自适应蒸馏、数据血缘去污染、质量验证闭环等。但有一个关键盲区:预训练阶段的合成数据策略。
这不是偶然遗漏。长期以来,预训练被视为”大力出奇迹”的阶段——用尽可能多的高质量自然文本,合成数据的角色被限定在下游微调。但 Hugging Face 的 FinePhrase 实验(arXiv:2604.13977)用 1T token 的规模证明了三个反直觉的结论:
- 结构化输出格式(教科书体、QA 对)在预训练阶段就能超越精选网络文本——不是微调阶段,是预训练
- 生成器模型超过 1B 参数后收益趋平——更大的生成器不等于更好的合成数据
- 源数据选择的影响远大于生成策略本身——“用什么原料”比”怎么加工”更重要
这三个发现拆解了合成预训练数据的核心变量空间:格式 × 生成器 × 源数据。问题变成了一个资源配置问题——在固定的 token 预算下,如何在这三个维度上做最优分配。
这正是投资组合理论的经典框架。
核心问题
给定 token 预算 和一组可选的合成数据策略(格式类型 × 生成器配置 × 源数据集),如何确定最优配比使下游任务期望表现最大化、风险(方差)最小化?
子问题:
- 策略空间建模:如何将离散的合成策略(QA 重写、教科书化、摘要提取、代码转化等)映射为”资产”,定义其”收益率”和”风险”?
- 协方差结构:不同合成策略之间是互补还是冗余?FinePhrase 发现教科书格式和 QA 格式各有优势领域——这暗示存在非平凡的协方差结构
- 成本约束:不同生成器有不同的推理成本,1B 模型和 70B 模型每 token 的生成成本可能差 50 倍。如何在收益-成本-风险三角中找到 Pareto 前沿?
- 动态再平衡:随着预训练推进,模型能力变化,最优配比是否应该随训练阶段调整?这与课程学习(curriculum learning)的联系是什么?
技术路线
阶段一:策略收益率估计(2-3 周)
目标:建立合成数据策略的”收益率曲线”
在 1B-3B 参数量的模型上,系统测试以下策略的预训练效果:
| 维度 | 变量 | 水平 |
|---|---|---|
| 格式 | 原始文本 / 教科书体 / QA 对 / 结构化摘要 / 代码注释体 | 5 |
| 生成器 | 0.5B / 1B / 3B / 7B | 4 |
| 源数据 | 网络文本 / 学术论文 / 代码仓库 / 百科 / 书籍 | 5 |
全因子实验需要 100 种组合,每种训练 10B token。这显然不可行。采用 拉丁超立方采样,选择 20-25 个代表性组合,每个训练 5B-10B token,用下游 benchmark 套件(MMLU/GSM8K/HumanEval/ARC)作为收益率指标。
关键技术点:
- 用 scaling law 外推 减少每个组合的实际训练量——在 0.5B/1B/2B token 处采样,拟合 power law 预测 10B token 处的表现
- FinePhrase 的公开数据可以作为部分组合的校准锚点
阶段二:协方差结构与组合优化(2 周)
目标:从阶段一的实验数据中估计策略间的协方差矩阵,求解最优组合
核心方法借鉴 Markowitz 均值-方差框架,但做两个关键修改:
- 离散约束:合成数据策略不是连续可分的(不能用 0.37 份教科书体 + 0.63 份 QA 对),需要在整数规划框架下求解
- 成本感知:引入每 token 生成成本作为第三个目标,从双目标(收益-风险)扩展为三目标优化
# 伪代码:成本感知组合优化
def optimize_portfolio(returns, covariance, costs, budget_T):
"""
returns: 各策略的期望 benchmark 提升 (向量)
covariance: 策略间协方差矩阵
costs: 每 token 生成成本 (向量)
budget_T: 总 token 预算
"""
# 三目标:max 收益, min 风险, min 成本
# 约束:sum(allocations) = budget_T
# allocations[i] >= min_threshold # 最小分配量
pareto_front = multi_objective_optimize(
objectives=[maximize(returns @ w),
minimize(w @ covariance @ w),
minimize(costs @ w)],
constraints=[sum(w) == budget_T, w >= 0]
)
return pareto_front
阶段三:动态再平衡策略(2 周)
目标:研究训练过程中是否需要调整合成数据配比
这与 de-ch06(数据混合与课程学习)和 daVinci-LLM 的 Data Darwinism 框架直接相关。假设是:
- 训练初期,模型需要更多”结构化”数据建立基础表征(教科书体占比高)
- 训练中期,多样性变得重要(QA 对、摘要等格式占比提升)
- 训练后期,领域特化数据的边际收益上升(源数据选择权重增加)
验证方法:在阶段一的最优静态配比基础上,引入 2-3 种动态策略:
- 线性退火:从结构化重到多样化重
- 损失感知切换:当验证损失降速变缓时触发配比调整
- bandit 策略:用 Thompson Sampling 在训练过程中在线选择下一批数据的配比
阶段四:规模验证(3-4 周)
在 7B-13B 模型上验证阶段二和阶段三的最优策略是否 transfer。重点关注:
- 最优配比是否随模型规模变化?
- Pareto 前沿的形状是否稳定?
- 动态策略相对静态策略的优势是否随规模放大?
与已有工作的关系
| 已有提案/文章 | 关系 |
|---|---|
| 数据混合与课程学习(de-ch06) | 阶段三直接建立在其框架上,但聚焦合成数据而非自然数据 |
| 合成预训练数据的真实价值(FinePhrase 文章) | 实验发现是本提案的直接触发器和经验基础 |
| daVinci-LLM 预训练科学 | Data Darwinism L0-L9 框架提供了数据质量层级参考 |
| 信息增益自适应蒸馏 | 关注 SFT 阶段蒸馏,本提案关注预训练阶段的更上游问题 |
| 合成数据血缘去污染 | 解决”如何确保干净”,本提案解决”如何配比最优” |
| 多智能体对抗合成 | 解决”如何生成高质量单条数据”,本提案解决”如何组合多种策略” |
预期产出
- 合成预训练数据策略的收益-风险-成本三维 Pareto 前沿图——可视化不同预算下的最优配比
- 开源工具包 SynthPortfolio——输入 token 预算和可用资源,输出推荐的合成数据配比方案
- 动态再平衡的实证证据——是否值得在训练过程中调整配比,以及何时调整
风险与缓解
| 风险 | 缓解措施 |
|---|---|
| 实验成本高(阶段一需要大量 GPU) | 用 scaling law 外推减少实际训练量;优先在 1B 模型上验证 |
| 策略间交互效应复杂 | 先做主效应分析,再逐步引入交互项 |
| 最优配比可能高度依赖下游评估指标 | 使用多指标加权,而非单一 benchmark |
| 动态策略可能不优于静态 | 如果是,那本身就是有价值的 negative result |
时间线
| 周次 | 里程碑 |
|---|---|
| W1-3 | 阶段一:策略收益率实验(20-25 种组合 × scaling law 外推) |
| W4-5 | 阶段二:协方差估计 + 组合优化 + Pareto 前沿 |
| W6-7 | 阶段三:动态再平衡实验 |
| W8-11 | 阶段四:7B-13B 规模验证 |
| W12 | 论文撰写与工具开源 |
触发论文:FinePhrase (arXiv:2604.13977) — Hugging Face 1T token 合成预训练数据实验