在大型语言模型(LLM)中的上下文学习(In-Context Learning,ICL)目前已经成为一种新兴的学习范式,具有强大的性能。然而,其内在的运行机制仍然不够明确,一个具有挑战性的问题在于,如何将ICL的学习过程映射到传统的机器学习框架中呢,这对于社区进一步发展ICL研究具有非常重要的意义。
论文题目:
In-Context Learning Creates Task Vectors
论文链接:
https://arxiv.org/abs/2310.15916
一、引言
大模型的ICL过程,也被称为情景学习和上下文学习,该过程的一个显著特性是其可以从少量的示例集合中学习新规则,并且泛化到新的查询样本中。例如,我们给定一些输入示例:“Apple->Red、Lime->Green”,提示模型对新的查询“Corn->”产生输出为“Yellow”,如下图所示,模型可以仅基于两个示例就学习到了用户的目标映射关系。
此外,作者也提到本文的方法与软提示(soft-prompt)[1]方法类似,soft-prompt也是通过调整大模型内部transformer的激活值来实现特定的新任务,但是本文的方法仅在ICL的前向传播过程中进行调整,而不是微调整个模型来实现。
二、解释ICL的理论框架
2.1 理论框架
2.2 ICL的假设空间
三、实验验证
为了验证本文的理论框架,作者设计了4个类别中(包含算法、翻译、语言和事实知识方面)的18项不同任务来进行实验验证,下表中展示了不同任务的任务描述和具体示例。对于测试时使用的LLMs,作者选择了多个开源LLMs,包含LLaMA 7B、13B和30B版本[2]、GPT-J 6B版本[3]以及Pythia 2.8B、6.9B和12B版本[4]。
3.2 ICL理论框架的性能对比
3.3 任务向量的鲁棒性
上图展示了使用t-SNE算法对任务向量降维后的簇分布情况,每个簇都包含单个任务的任务向量,下图进一步显示了同一类别任务之间的接近程度,这表明任务向量在一定程度上可以掌握不同任务的语义。
上表显示了LLaMA-13B模型在三个任务上的激活token,在多种情况下,可以直接观察到描述任务的token,需要注意的是,这些单词从未明确出现在上下文中。例如,在从法语翻译成英语的任务中,可以观察到诸如“English”和“translate”之类的token。这进一步支持了本文的观点,即 θ携带了有关任务的重要的语义信息。
四、总结
本文提出了一种针对LLMs中In-Context Learning的理论探索框架,揭示了一种ICL学习机制的新视角。本文提出的框架具备了简单而优雅的特性,其假设ICL过程通过将输入的训练示例压缩为单个任务向量来发挥作用,并且引导Transformer层根据给定的查询生成目标输出。将原本LLMs复杂的前向传递过程分解为一种学习算法和规则机制的组合,并且通过了大量的实验支持了本文的观点。目前社区的研究方向主要集中在如何提高LLMs的推理性能,但更需要探索LLM内部机理的基础工作作为指导。
参考
[1] Brian Lester, Rami Al-Rfou, and Noah Constant. 2021. The power of scale for parameter-efficient prompt tuning. arXiv preprint arXiv:2104.08691.
[2] Hugo Touvron, Thibaut Lavril et al. 2023. Llama: Open and efficient foundation language models. arXiv preprint arXiv:2302.13971.
[3] Ben Wang and Aran Komatsuzaki. 2021. GPT-J-6B: A 6 Billion Parameter Autoregressive Language Model.
[4] Stella Biderman, Hailey Schoelkopf et al. 2023. Pythia: A suite for analyzing large language models across training and scaling. arXiv preprint arXiv:2304.01373.
Illustration From IconScout By Pablo Stanley