从受控预训练混合物到代码的条件转移
Conditional Transfer from Controlled Pretraining Mixtures to Code
摘要
综合任务越来越多地用作语言模型能力的探针和预训练数据。这两种用途通常都通过减少损失来证明:下降的损失被视为提供信息,并且通过更多采样来更快地减少损失,作为任务值得采样的证据。我们分离三个信号。当任务的损失跟踪全局预训练进度时,该任务具有诊断性;当它的损失与其自身的token预算相适应时,它是可教导的;数据源在包含它时传输到下游目标。我们研究了受控预训练,其中 70% 的语料库是固定的通用 Python,其余 30% 是三个源系列的单纯体:OpenCodeInstruct,一个由 12 个代码相邻合成任务和 15 个文献衍生的探测任务组成的精选套件。在任务预算扫描中,我们检测到 27 项任务中的 14 项的可教性,两个合成系列之间存在明显的不对称性(10/12 策划的任务与 4/15 文献衍生的任务)。可教性和下游转移给出了不同的排名。在精选套件和 OpenCodeInstruct 之间的混合单纯形边缘上, 经过固定微调阶段后,HumanEval pass@20 从纯精选数据的 15.9 上升到其最高观测值 22.6(混合比例为 75% OpenCodeInstruct),然后下降到纯 OpenCodeInstruct 的 19.5。因此,精选的合成数据具有有条件的价值:它作为混合物中的有限份额而贡献,而目标一致的源仍然占主导地位。最后,基于损失的自适应调度器暴露了剩余损失可减少性和下游传输之间的不匹配。在 3 次 60k 步自由比率运行中,Ado 在前 5k 步内将 OpenCodeInstruct 份额降低到 5% 以下,并在训练结束时达到 1.2--1.4%,并且比其匹配的固定混合控制低 2.4--11.0 个百分点。优化近期任务损失减少将混合物移离转移区域。