研究提案 已修订

能力边界靶向合成:用回答散度定位、对比解码提纯的指令微调数据工厂

将 ADG 的回答散度信号与 CoDIT 的对比解码蒸馏结合,构建一个闭环的目标感知指令微调数据合成管线——先精确定位目标模型的能力边界,再在边界上合成纯能力信号数据

指令微调 数据合成 能力边界 回答散度 对比解码 蒸馏 数据选择 SFT

触发动机

两篇发表于 2026 年 4 月中旬的论文,各自解决了指令微调数据工程中的一个关键子问题,但它们的交叉地带——一个更有价值的问题——尚未被触及。

第一篇:WisdomShell 的 ADG(Answer Divergence Guided Selection,ACL 2026,arXiv:2604.10448)。核心发现是:对目标模型做高温多次采样,计算回答在嵌入空间的散度——散度大且呈多模态分布的指令,正好落在模型的”能力边界”上,用这些指令做微调效果显著优于随机采样或 IFD/DEITA 等基线。仅 10K 条 ADG 选取的样本就能在推理、知识、编程 6 个基准上一致超越强基线。

第二篇:东京工业大学的 CoDIT(Contrastive Decoding for Instruction Tuning,arXiv:2604.13538)。核心发现是:用同一模型的 base 版本和 instruct 版本做对比解码,可以分离出”纯粹的指令遵循能力”信号,过滤掉预训练已有的世界知识成分。用这种纯能力数据训练的模型,多个基准上持续优于直接蒸馏。

被忽视的交叉问题:ADG 回答了”在哪里合成最有价值”(能力边界),CoDIT 回答了”合成什么最有效”(纯能力信号)。但当前两者是割裂的——ADG 选完数据后仍用标准蒸馏生成回复(混杂知识和能力),CoDIT 对所有指令一视同仁地做对比解码(在模型已掌握的区域浪费算力)。将两者闭环——先用 ADG 定位能力边界,再用 CoDIT 在边界上精确合成纯能力数据——理论上可以同时提升数据效率和数据质量。

战略判断:为什么现在做

行业趋势

指令微调数据的 Scaling Laws 正在失效。FinePhrase(Hugging Face,arXiv:2604.13977)的万亿 token 实验证明,合成预训练数据中生成器规模超过 1B 后收益消失;Apple 的下游 Scaling Laws 研究(arXiv:2507.00885)发现仅 39% 的下游任务呈可预测缩放。这意味着在指令微调阶段,“堆更多合成数据”的策略正在触及天花板——数据质量和数据针对性成为比数据规模更关键的变量。

Scaling Laws Revisited(ICLR 2026,arXiv:2510.03313)引入数据质量参数 Q 后证明:高质量数据可以大幅降低所需模型规模和算力。将这一思路从预训练推广到 SFT 阶段,意味着精准靶向的合成数据可能以极小的规模达到大规模随机合成的效果。

现有方案的缺口

方案解决的问题遗留的缺口
ADG(ACL 2026)数据选择:找到模型的能力边界选出的指令仍用标准蒸馏生成回复,知识噪声未过滤
CoDIT数据生成:分离能力和知识对所有指令等权处理,未聚焦于模型真正薄弱的区域
信息增量蒸馏(本站 04-18 proposal)实时驱动合成策略调整聚焦效率优化,未区分知识和能力两种不同的增量类型
多 Agent 对抗式工厂(本站 04-15 proposal)多样性与质量联合优化面向通用合成,未针对 SFT 的特殊需求设计

核心缺口:没有方案同时做到 (1) 精确定位能力边界 + (2) 在边界上生成纯能力信号。这正是 ADG × CoDIT 组合的独特价值。

重要性评估

  • 效率倍增器:ADG 证明 10K 数据可超越大规模 SFT;CoDIT 证明纯能力数据优于混合数据。两者叠加的理论上限是:用千级别的靶向数据达到万级别随机数据的效果
  • 可落地性高:两种方法都基于开源模型的 base/instruct 对,不需要额外标注
  • 评测友好:效果可以在 MT-Bench、AlpacaEval、IFEval 等标准 SFT 基准上直接验证

核心洞察

模型的指令微调需求可以分解为一个二维空间:

                    模型已有知识
                    ↑
            知识丰富     知识丰富
            能力不足     能力充足
                │           │
  能力边界 ←────┼───────────┤
                │           │
            知识不足     知识不足
            能力不足     能力充足
                │           │
                └───────────→ 模型已有能力
  • 右上象限(知识和能力都充足):不需要额外训练数据
  • 左下象限(都不足):需要知识+能力的混合数据,标准蒸馏即可
  • 左上象限(知识有但能力不足):最有价值的靶向区域——模型有相关知识但不会组织成好的回答
  • 右下象限(能力有但知识不足):需要知识注入而非能力训练

ADG 的回答散度信号精确定位左上象限——这些指令上模型知道答案方向但”说不清楚”,多次采样产生高散度且多模态的分布。CoDIT 的对比解码则恰好生成左上象限所需的训练信号——纯能力成分,不注入新知识。

本 proposal 的核心 idea:将这个二维空间显式建模,构建一个”能力边界靶向合成”管线,对不同象限采用不同的合成策略,而非一刀切地生成数据。

技术方案

整体架构

┌─────────────────────────────────────────────────────┐
│                   Phase 1: 能力边界绘制               │
│                                                       │
│  指令池 ──→ 目标模型高温采样(T=1.5, K=20) ──→         │
│         ──→ 嵌入空间散度计算(ADG 信号) ──→             │
│         ──→ 知识探针(base 模型 perplexity) ──→        │
│         ──→ 二维能力-知识分区                          │
└──────────────────────┬──────────────────────────────┘
                       │
                       ▼
┌─────────────────────────────────────────────────────┐
│              Phase 2: 分区靶向合成                     │
│                                                       │
│  左上象限(知识有/能力弱) ──→ CoDIT 对比解码合成         │
│  左下象限(都弱)          ──→ 标准教师蒸馏              │
│  右下象限(能力有/知识弱) ──→ RAG 增强知识注入合成       │
│  右上象限(都强)          ──→ 跳过                      │
└──────────────────────┬──────────────────────────────┘
                       │
                       ▼
┌─────────────────────────────────────────────────────┐
│              Phase 3: 质量闭环验证                     │
│                                                       │
│  合成数据 ──→ 分区一致性检查 ──→ 效果预估 ──→          │
│           ──→ 微调目标模型 ──→ 散度重测 ──→            │
│           ──→ 边界是否收缩? ──→ 下一轮迭代            │
└─────────────────────────────────────────────────────┘

关键步骤

Phase 1:能力边界绘制

步骤 1.1:回答散度计算(ADG 信号)

对指令池中每条指令 x,用目标模型(即将被微调的模型)做 K=20 次高温采样(T=1.5),得到回答集合 {y_1, …, y_K}。将每个 y_i 映射到嵌入空间(用 sentence-transformers 或 API embedding),计算两个统计量:

  • 散度幅度 σ(x):回答嵌入的协方差矩阵的迹(trace),衡量回答总体分散程度
  • 各向异性 κ(x):最大特征值与迹的比值,衡量分布是否沿单一方向拉长

ADG 分数 = σ(x) × (1 - κ(x))。高 ADG 分数意味着回答既分散又多模态——这是真正的能力不确定性,而非简单的释义变体。

步骤 1.2:知识探针

对同一条指令 x,用 base 模型(未经指令微调的版本)计算条件困惑度 PPL_base(x)。直觉是:如果 base 模型对该指令相关的知识领域困惑度低,说明模型在预训练阶段已经具备了相关知识。

具体做法是将指令 x 改写为陈述句形式(用规则或小模型),然后计算 base 模型对该陈述句的 perplexity。

步骤 1.3:二维分区

以 ADG 分数的中位数和 PPL_base 的中位数为分界,将指令池划分为四个象限。阈值选择可以通过小规模消融实验微调。

Phase 2:分区靶向合成

左上象限——CoDIT 对比解码合成(核心创新点)

这是本框架最有价值的合成区域。对该象限中的每条指令 x:

  1. 用教师模型的 instruct 版本和 base 版本同时做 next-token 预测
  2. 在每步生成时计算对比解码分数:logit_final(t) = logit_instruct(t) - α × logit_base(t)
  3. 参数 α 控制能力信号的放大程度(CoDIT 论文建议 α=0.5-1.0)
  4. 用对比分数做采样生成回复

这样生成的回复保留了教师模型的指令遵循能力,但过滤了与 base 模型共享的世界知识——正好是目标模型在此象限最需要学习的内容。

左下象限——标准教师蒸馏

模型既缺知识又缺能力,需要完整的教师回复。直接用教师 instruct 模型的标准采样输出。

右下象限——RAG 增强知识注入合成

模型有指令遵循能力但缺乏特定领域知识。为这些指令构建知识检索上下文,然后让教师模型在检索结果辅助下生成回复,着重注入事实性知识。

右上象限——跳过

模型已经掌握了这些指令对应的知识和能力,不生成训练数据。

Phase 3:质量闭环验证

合成完成后,用以下方法验证数据质量:

  1. 分区一致性检查:对合成数据抽样,验证 CoDIT 生成的回复确实在能力维度上有增量,而非注入了新知识(可用 base 模型 perplexity 变化来度量)
  2. 效果预估:用小规模验证集评估合成数据的预期效果——在左上象限的测试指令上,微调前后的 ADG 分数是否显著下降
  3. 迭代边界收缩:微调后重新绘制能力边界图。如果左上象限显著收缩,说明靶向合成生效。残留的高散度指令进入下一轮迭代

质量控制

防止能力退化:CoDIT 对比解码有一个风险——过度放大 α 可能导致生成的回复偏离合理分布。引入约束:对比解码的输出必须通过 instruct 模型的 perplexity 检查(PPL_instruct < 阈值),确保生成内容仍在模型合理输出空间内。

防止分区误判:ADG 信号和 PPL 探针都有噪声。对边界附近的指令(ADG 分数或 PPL 接近中位数阈值的 10% 范围内),采用两种策略的混合——同时生成 CoDIT 回复和标准蒸馏回复,取模型自判偏好更高的那个。

数据配比:四个象限的数据量不应等比例混合。根据 FinePhrase 的经验(结构化格式碾压一切)和 ADG 的 10K 数据即够用的结论,预计左上象限(靶向区域)占比约 40%,左下 30%,右下 20%,右上跳过。具体配比通过小规模消融确定。

成本与可行性评估

计算成本

步骤输入规模计算量估算
Phase 1 高温采样100K 指令 × 20 次采样2M 次推理8 × A100 × 4h(7B 模型)
Phase 1 嵌入计算2M 回复2M 次嵌入1 × A100 × 1h
Phase 1 知识探针100K 指令100K 次 PPL 计算2 × A100 × 1h
Phase 2 CoDIT 合成~25K 指令(左上象限)25K × 2 次推理(instruct + base)4 × A100 × 2h
Phase 2 标准蒸馏~25K + 20K 指令45K 次推理2 × A100 × 1.5h
Phase 3 验证抽样 5K5K × 20 次采样2 × A100 × 0.5h

总计:约 8 × A100 × 6h,折合约 48 GPU-hours。以云上 A100 $2/GPU-hour 计算,单次全流程约 $100。

对比参考:标准的 100K 指令蒸馏约 $30-50。本方案增加的成本主要在 Phase 1 的多次采样上(约 $60),但如果 10K 靶向数据能达到 100K 随机数据的效果,总体微调成本(训练时长)反而下降。

前置依赖

  • 模型对:需要教师模型和目标模型各自的 base + instruct 版本。Llama 3、Qwen 2.5、Mistral 等主流开源模型均满足
  • 指令池:可用 WildChat、ShareGPT、Orca 等公开指令集,或用 Self-Instruct 方法自动生成
  • 嵌入模型:任何 sentence-transformers 级别的模型即可(如 E5-large、BGE-large)

实验设计

最小验证实验(2 周,8 GPU):

  1. 基线:在 Alpaca-52K 上做标准 SFT
  2. 对照 1:ADG 选 10K + 标准蒸馏
  3. 对照 2:全量 52K + CoDIT 合成
  4. 实验组:ADG 选 10K + CoDIT 靶向合成
  5. 评测:MT-Bench / AlpacaEval 2.0 / IFEval / HumanEval

如果实验组在数据量仅为基线 20% 的条件下达到基线水平,即验证了核心假设。

风险与缓解

风险概率影响缓解策略
ADG 散度信号在 SFT 数据池上噪声过大中分区不准确,靶向失效用多个嵌入模型集成计算散度;引入 bootstrap 采样估计信号稳定性
CoDIT 对比解码在某些指令上退化为空洞输出中合成数据质量下降引入 PPL 上限过滤;α 参数动态调整(散度越高,α 越小以保守)
base/instruct 差异主要在格式层面而非能力层面低CoDIT 提取的”能力”实际是格式偏好验证阶段评估内容质量而非格式相似度;辅以 BERTScore 等语义指标
四象限模型过于简化中部分指令的最优策略被错配边界区域使用混合策略;后续迭代可引入更细粒度的连续分区

预期产出

  1. 开源工具包:包含能力边界绘制器(ADG 计算 + 知识探针)和分区靶向合成器(CoDIT + 标准蒸馏 + RAG 注入)的 Python 包
  2. 基准数据集:在 Alpaca-52K 和 WildChat-50K 上的四象限标注结果,可供社区复用
  3. 实验报告:在 3-4 个开源模型对上验证核心假设的完整消融实验
  4. 方法论贡献:首次将”指令微调数据选择”和”指令微调数据生成”统一到同一个框架中,证明两者的协同效应
  5. 目标投稿:EMNLP 2026 或 NeurIPS 2026 Data-centric AI Workshop