
Transformer架构的情境学习泛化能力
背景
大型语言模型(LLMs)如GPT-4和LLaMA-3凭借Transformer架构的强大情境学习(In-Context Learning, ICL)能力,能够从有限的示例中快速学习并适应新任务。然而,ICL的泛化边界和脆弱性一直缺乏系统性的理解,这限制了其在实际应用中的潜力发挥。清华大学的研究团队通过定义一个以任务为中心的框架,从三个维度系统地研究了Transformer架构在ICL下的泛化能力,并提出了优化训练数据设计的重要指导原则。
研究框架:三维泛化能力分析
研究团队提出了一个任务中心框架,将ICL的泛化能力分为三个维度:
- 跨问题泛化(Inter-problem Generalization)模型能否将在一类问题上学到的知识迁移到全新的问题类型上。
- 问题内泛化(Intra-problem Generalization)模型在接触了问题类型的部分实例后,能否泛化到同类问题的其他实例。
- 任务内泛化(Intra-task Generalization)模型在特定任务上学习后,能否在相似测试样本上表现良好。
这一框架使研究者能够系统地评估Transformer模型在不同泛化场景下的表现,从而揭示ICL能力的本质和局限。
函数拟合实验:泛化能力的基础验证
研究首先通过函数拟合任务建立了一个可控的实验环境。研究者将基础函数(如正弦、余弦函数)定义为基本问题,将这些函数的组合(加法、乘法、复合)定义为复合问题,通过比较不同训练策略下模型的表现来评估其泛化能力。
实验设计
研究采用了两种主要模型配置:
- Baseline模型仅在基础函数上训练
- ComFuncLearner模型在基础函数和部分组合函数上训练
通过比较这两种模型在未见过的函数组合上的表现,研究者能够评估模型的跨问题和问题内泛化能力。
关键发现
- 凸组合泛化:当测试模型对基础函数的凸组合进行拟合时,ComFuncLearner模型表现显著优于Baseline模型,即使ComFuncLearner只在训练中接触过一种特定的凸组合。这表明Transformer模型具有强大的问题内泛化能力。
- 乘积组合泛化:在函数乘积组合的测试中,随着ComFuncLearner在训练中接触的组合模式数量增加,其在未见过的乘积组合上的表现持续提升,进一步证实了问题内泛化能力的存在。
- 复合函数泛化:在更复杂的函数复合测试中,模型表现出类似的泛化模式,但由于复合操作的复杂性,泛化难度明显增加。
- 预训练模型的影响:研究还发现,即使是经过大规模预训练的LLaMA-3模型,在没有接触过特定组合形式的情况下,也难以实现跨问题泛化,但在问题内和任务内泛化方面表现出色。
这些实验结果一致表明,Transformer模型在ICL范式下缺乏跨问题泛化能力,但具有出色的问题内和任务内泛化能力。
实际应用场景验证
为了验证函数拟合实验的发现在实际应用中的有效性,研究团队进一步在工具调用和翻译任务上进行了实验。
工具调用实验
研究者将单API调用定义为基本问题,多API调用定义为复合问题,在LLaMA-2模型上进行了实验。结果显示:
- 在ComFuncLearner模型(训练包含多API调用示例)上应用ICL,显著提升了模型在多API任务上的表现。
- 有趣的是,ComFuncLearner模型在简单的单API任务上的表现也优于Baseline模型,表明训练数据的多样性不仅提升了复杂任务的表现,还能提高简单任务的上限。
翻译任务实验
研究者使用Qwen2-1.5B架构的模型,在英语和德语翻译任务上进行了实验,将单语言到单语言翻译定义为基本问题,混合语言输入的翻译定义为复合问题。结果表明:
- 在复杂的混合语言输入任务上,ComFuncLearner模型明显优于Baseline模型,且ICL带来的提升更为显著。
- 在简单的单语言翻译任务上,针对特定任务微调的Baseline模型表现最佳,表明ICL的问题内和跨问题泛化能力仍低于任务内泛化能力。
- 当将测试集分为简单和困难样本时,发现在复杂样本上,ComFuncLearner模型通过ICL获得的提升更为显著,而Baseline模型的提升有限。
这些实际应用实验进一步证实,当模型在训练阶段接触更广泛的问题类型时,能显著提高其通过ICL实现的泛化能力上限,尤其是在复杂任务上。
分布偏移下的泛化能力
研究还探讨了当ICL示例与测试样本之间存在分布偏移时,模型的泛化能力如何受影响。实验考察了三种关键场景:
- 标签噪声:在ICL示例中引入标签噪声,发现即使只有少量噪声样本(如39个示例中的10个),也会显著影响模型的泛化能力。
- 输入偏差:当ICL示例包含测试范围之外的输入时,模型在测试样本上的表现显著下降,即使这些额外样本的输出仍遵循真实函数。
- 输入和输出偏差:当ICL示例同时包含范围外的输入和偏移的输出时,模型的泛化能力进一步恶化。
这些发现表明,ICL对示例分布的偏移非常敏感,这在实际应用中需要特别注意。
研究结论与指导原则
通过这一系列实验,研究团队得出了几个关键结论:
- Transformer模型在ICL中缺乏跨问题泛化能力,但在问题内和任务内泛化方面表现出色。
- 即使经过大规模预训练的模型,如果没有在微调阶段接触特定的问题组合形式,也难以通过ICL实现跨问题泛化。
- 在训练数据中包含更多样化的任务类型,不仅能提高模型在未见任务上的ICL泛化能力,还能提升其在已知简单任务上的表现。
- 训练数据中任务多样性的增加,能显著放大ICL在复杂任务上带来的改进效果。
这些发现为大型语言模型的训练数据设计提供了重要指导:应当最大化覆盖任务的多样性,并在可能的情况下结合不同任务,而不是仅关注特定的目标任务。这种策略不仅能提高模型的跨问题泛化能力,还能增强其在原本简单任务上的表现。
研究意义与未来方向
这项研究系统地揭示了Transformer架构在ICL下的泛化边界,为理解大型语言模型的能力与局限提供了重要见解。研究结果表明,虽然当前模型在跨问题泛化方面存在局限,但通过优化训练数据的多样性,可以显著提升其泛化能力。
未来研究可以进一步探索:
- 如何设计更有效的训练数据组合,最大化模型的泛化能力
- 改进模型架构,增强其跨问题泛化能力
- 开发更鲁棒的ICL方法,减少对示例分布偏移的敏感性
这项研究不仅深化了我们对Transformer架构和ICL机制的理解,也为大型语言模型的实际应用提供了宝贵的指导原则,有助于释放这些模型的全部潜力。
论文:https://arxiv.org/abs/2503.15579
代码:https://github.com/UbeCc/Generalization-of-Transformers
本文转载自顿数AI,作者:葱葱
