Self-Policy Distillation via Capability-Selective Subspace Projection

📄 arXiv: 2605.22675v1 📥 PDF

作者: Guangya Hao, Yitong Shang, Yunbo Long, Zhuokai Zhao, Hanxue Liang

分类: cs.CL

发布日期: 2026-05-21


💡 一句话要点

提出基于能力选择子空间投影的自策略蒸馏方法,提升LLM泛化能力。

🎯 匹配领域: 支柱二:RL算法与架构 (RL & Architecture) 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 自蒸馏 大型语言模型 能力选择 子空间投影 梯度分析

📋 核心要点

  1. 现有自蒸馏方法依赖外部信号筛选数据或直接使用原始输出,前者成本高昂,后者泛化性差,且忽略了自生成内容中能力混杂的问题。
  2. SPD方法通过提取模型在正确性token上的梯度,构建低秩能力子空间,并将KV激活投影到该子空间,从而实现能力选择性的自蒸馏。
  3. 实验表明,SPD在代码生成、数学推理和多项选择问答等任务上,相比现有自蒸馏方法和预训练基线,均取得了显著的性能提升,尤其在领域外泛化方面。

📝 摘要(中文)

自蒸馏通过让大型语言模型(LLM)在自身生成的数据上进行训练来提升性能。然而,现有方法要么依赖外部信号来筛选自生成输出(例如,正确性过滤、执行反馈和奖励搜索),这对于性能最佳的前沿模型来说成本高昂且不可用;要么完全跳过筛选,直接在所有原始输出上进行训练,这种方法通常特定于领域且难以推广。两者更深层次的弱点在于,自生成输出将任务相关的能力与其他能力(如风格模式、格式伪影和模型特定错误)纠缠在一起,从而稀释了旨在改进的特定能力的信号。本文提出了一种自策略蒸馏(SPD)方法,该方法无需任何外部信号即可实现通用、能力选择。具体而言,SPD从模型自身在定义正确性的token上的梯度中提取低秩能力子空间,在自生成期间将键-值(KV)激活投影到该子空间中,并使用标准下一个token预测损失在生成的原始输出上进行微调。通过在代码生成、数学推理和多项选择问答等方面的广泛实验,我们表明,SPD在没有外部信号的情况下,比最先进的自蒸馏方法提高了高达13%,比预训练基线提高了高达16%。值得注意的是,SPD表现出卓越的泛化能力,在领域外泛化设置下实现了15%的性能提升。

🔬 方法详解

问题定义:现有自蒸馏方法在利用LLM自身生成的数据进行训练时,面临两个主要问题。一是依赖外部信号进行数据筛选,这增加了训练成本,并且对于一些前沿模型来说,外部信号可能不可用。二是直接使用所有原始生成数据,忽略了这些数据中任务相关能力与其他噪声(如风格、格式错误等)的混杂,导致训练效率降低和泛化能力不足。

核心思路:SPD的核心思路是通过提取模型在关键token(定义正确性的token)上的梯度信息,构建一个低秩的能力子空间。这个子空间代表了模型在特定任务上的核心能力。通过将模型的激活值投影到这个子空间,可以过滤掉与任务无关的噪声,从而更有效地利用自生成数据进行训练。

技术框架:SPD方法主要包含以下几个阶段:1. 能力子空间提取:利用模型在正确性token上的梯度信息,通过降维技术(如奇异值分解)提取低秩能力子空间。2. 激活值投影:在自生成过程中,将模型的KV激活值投影到提取的能力子空间。3. 自蒸馏训练:使用投影后的激活值生成的数据,采用标准的下一个token预测损失函数对模型进行微调。

关键创新:SPD的关键创新在于提出了能力选择性的自蒸馏方法,通过梯度分析和子空间投影,实现了在没有外部信号的情况下,对自生成数据进行有效筛选和提纯。这与现有方法的直接使用原始数据或依赖外部信号进行筛选形成了鲜明对比。

关键设计:SPD的关键设计包括:1. 梯度计算:选择与正确性相关的token计算梯度,例如代码生成任务中的pass/fail信号。2. 子空间维度选择:通过实验确定合适的子空间维度,以平衡能力保留和噪声过滤。3. 投影方式:使用线性投影将KV激活值映射到能力子空间。4. 损失函数:采用标准的交叉熵损失函数进行下一个token预测。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,SPD在代码生成、数学推理和多项选择问答等任务上,相比于现有自蒸馏方法,取得了显著的性能提升。例如,在没有外部信号的情况下,SPD比最先进的自蒸馏方法提高了高达13%,比预训练基线提高了高达16%。更重要的是,SPD在领域外泛化设置下实现了15%的性能提升,证明了其优越的泛化能力。

🎯 应用场景

SPD方法可广泛应用于各种LLM的自蒸馏训练中,尤其适用于缺乏外部反馈信号或需要提升模型泛化能力的场景。例如,可以应用于代码生成、数学推理、问答系统等领域,提升模型在复杂任务上的性能和鲁棒性,并降低对人工标注数据的依赖。

📄 摘要(原文)

Self-distillation bootstraps large language models (LLMs) by training on their own generations. However, existing methods either rely on external signals to curate self-generated outputs (e.g., correctness filtering, execution feedback, and reward search), which are costly and unavailable for the best-performing frontier models, or skip curation entirely and train on all raw outputs, an approach that is often domain-specific and hard to generalize. Both also share a deeper weakness that self-generated outputs entangle task-relevant capability with others, such as stylistic patterns, formatting artifacts, and model-specific errors, diluting the signal for the specific capability one aims to improve. In this paper, we propose Self-Policy Distillation (SPD), which achieves generalizable, capability selective without any external signal. Specifically, SPD extracts a low-rank capability subspace from the model's own gradients on correctness-defining tokens, projects key-value (KV) activations into this subspace during self-generation, and fine-tunes on the resulting raw outputs with standard next-token prediction loss. Through extensive experiments across code generation, mathematical reasoning, and multiple-choice QA, we show that SPD achieves up to 13% improvement over state-of-the-art self-distillation methods without external signals and up to 16% improvement over pre-trained baselines. Notably, SPD demonstrates superior generalizability, achieving 15% better performance under out-of-domain generalization settings.