In-Context Learning Creates Task Vectors
About
In-context learning (ICL) in Large Language Models (LLMs) has emerged as a powerful new learning paradigm. However, its underlying mechanism is still not well understood. In particular, it is challenging to map it to the "standard" machine learning framework, where one uses a training set $S$ to find a best-fitting function $f(x)$ in some hypothesis class. Here we make progress on this problem by showing that the functions learned by ICL often have a very simple structure: they correspond to the transformer LLM whose only inputs are the query $x$ and a single "task vector" calculated from the training set. Thus, ICL can be seen as compressing $S$ into a single task vector $\boldsymbol{\theta}(S)$ and then using this task vector to modulate the transformer to produce the output. We support the above claim via comprehensive experiments across a range of models and tasks.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Question Answering | PIQA | Accuracy74.6 | 589 | |
| Physical Interaction Question Answering | PIQA | Accuracy53 | 462 | |
| Subjectivity Classification | Subj | Accuracy61.12 | 343 | |
| Text Classification | TREC | Accuracy74.12 | 311 | |
| Multitask Language Understanding | MMLU-Pro | Accuracy31.6 | 303 | |
| Question Classification | TREC | Accuracy73.4 | 274 | |
| Text Classification | AG-News | Accuracy57.9 | 248 | |
| Topic Classification | AG-News | Accuracy58.9 | 228 | |
| Text Classification | MR | Accuracy92.36 | 174 | |
| Text Classification | AGNews | Accuracy81.36 | 161 |