pp016.Pretraining Data Mixtures Enable Narrow Model Selection Capabilities in Transformer Models

 

AI前沿|transformer不能在分布数据外泛化?不如说模型受限于训练数据中的函数族

注意到这篇论文是X上有人危言耸听说模型不能在训练数据外泛化,当然他的评价过于夸张引起了大量讨论。随后文章原作Steve Yadlowsky也做了澄清(1.模型只是简单的transformer而非大语言模型;2.模型能通过ICL学习新任务但不能泛化到新的任务族)。脱离评论本身,这篇文章是极具启发性的文章。

Transformer,尤其是LLM,有着惊人的上下文学习能力,即在用未见过的输入输出样例提问新任务时仍有效,无需显性的模型训练。作者研究了transformer能何等程度高效地将由多种不同任务族的预训练数据混合相互连接,以识别并上下文式地学习在预训练发布内或分布外的新任务。作者研究了在序列对(x,f(x))而非自然语言上的transformer模型,经验结果显示,Transformers表现出近乎最优的无监督模型选择能力,它们能够首先在上下文中识别不同的任务族,并在任务族在预训练数据中得到充分体现时在其中进行上下文学习。然而,当提出超出其预训练数据范围的任务或函数时,transformer就出现各种失败模式与泛化能力的退化,即使在简单的外推任务上。结果强调了高性能的序列模型令人印象深刻的ICL能力可能与其预训练数据混合的覆盖范围更密切相关,而非创建基本泛化能力的归纳偏差。

研究人员已经从底层机器学习技术出发,证明Transformer可以在语言以外的领域执行上下文学习任务,比如模型从上下文示例中学习输入的高维和非线性函数的能力。一个例子是在对稀疏线性数据进行预训练后,transformer可以在上下文中学习未见过的稀疏线性函数以及Lasso回归。在这些模型中,使用相关数据对模型进行预训练(或微调)以教导模型如何执行上下文学习很重要,作者便重点关注预训练中使用的数据对最终Transformer模型的小样本学习能力的影响。具体而言,作者先给模型输入((x1,f(x1)),(x2,f(x2)),…(xn,f(xn)))与新输入xn+1,让模型预测f(xn+1),其中每个f是同样的函数,但任务变化时是不同的函数。

作者的贡献如下:1.使用多个不同函数类的混合来预训练用于上下文学习的transformer模型,并描述了其所展示的模型选择行为Model Selection。2.研究了预训练Transformer模型对预训练数据中函数类“分布外”的函数的上下文学习行为。他们发现强有力的证据表明,模型可以在上下文学习期间在预训练函数类别中执行模型选择,而几乎无需额外的统计成本,但能表明模型上下文学习行为能泛化到超出预训练数据范围外的证据很有限。

更多结论细节如下:在作者的实验中,不同的函数基类主要有(a)D(Fdense):稠密线性函数,(b)D(Fsparse,nnz):具有nnz(number of nonzero?)非零坐标的稀疏线性函数,(c)D(Frelu):两层ReLU网络,以及(d)D(Fsine):正弦函数。混合分布就用参数w控制,如下图公示。

figure1展示了在分布为D(F) = 0.5·D(Fdense)+0.5·D(Fsparse,2)数据混合上预训练的模型做ICL的结果与只在含单一函数类结果的对比,可以看到这两者表现相似。比如在用稀疏函数的数据做ICL时,在混合数据上与只在稀疏数据上预训练后MSE都接近0。而figure2展示的是用不同数据预训练后模型在用含不同数量的示例做ICL的表现图,从左右两幅图都可以看到,不同比例的混合数据模型的误差随着示例的数量增加快速下降且趋同。而且我们也能注意到左图中的红色曲线与蓝紫色曲线和其他曲线差异巨大,他们分别代表着预训练中缺少了稠密线性函数与稀疏线性函数数据,即ICL泛化遇到了OOD问题,即使稠密与稀疏线性类都是线性函数。作者也在附录里放了非线性的类似情况。

重新回到figure1中的设置,见figure3左边,即在w=0.5的情况下,其模型MSE和w=0或w=1时的对比,可以看到在随着函数稀疏程度变化,混合数据上训练的模型能和只在单一函数类上训练的模型能达到的最好效果相当。而figure3右边则展示了当ICL示例来自很稀疏或很稠密的函数时,混合数据模型与单一数据模型预测很接近,只有在中间时,如nnz为4附近,误差较大,这意味着混合数据模型预测时不单单只选择单一函数类,而是预测稀疏与稠密之间的某种函数。

而关于模型选择能力的局限,作者也沿着两个方向做了实验:1.探索测试模型在训练中未见过且能合理预测的函数上的ICL性能(从预训练函数类中提取的函数的凸组合);2.评估函数的ICL性能,这些函数是预训练中见过的函数的极端版本(即,频率比预训练中通常看到的频率高得多或低得多的正弦曲线)。在这两种情况下,作者几乎没有发现分布外泛化的证据。当函数与预训练期间看到的函数相差很大时,预测就会不稳定。然而,当函数足够接近预训练数据时,模型可以通过预训练的函数类的预测很好地进行近似。 从figure3结果可以看到模型在中等稀疏程度时预测与单一函数类很不同,我们可能可以假设模型有某些归纳偏置使得其能以非平凡的方式组合函数。为验证,作者考察了完全不同的函数类,即线性函数、sin函数和两者的凸组合。结果见figure4,当模型只在线性函数或既有sin函数线性函数数据上训练时,能在给线性示例时预测很好,将前面设置换成sin后模型在给定cos示例后预测很好,但当示例是线性函数与cos函数的凸组合时,没有模型能预测好。这表明figure3b中所示的线性函数插值现象并不是Transformer上下文学习的可泛化的归纳偏差。然而,它继续支持更狭隘的假设,即当上下文示例接近预训练中学习的函数类时,模型能够选择最佳函数类用于预测。

figure5里展示了作者对线性函数与sin函数组合程度的实验,发现当配比使得分布接近某种单一函数时,模型还能应对,但两种函数都对凸组合有大贡献时,模型给出了离谱的预测。这表明模型的模型选择能力受到与预训练数据的接近程度的限制,并且表明函数空间的广泛覆盖对于广义上下文学习能力至关重要。另外figure6是对不同频率的sin函数的研究结果,结论是模型泛化能力随着任务稀少程度急剧下降。