How do Large Language Models Learn In-Context? Query and Key Matrices of
  In-Context Heads are Two Towers for Metric Learning
Zeping Yu Sophia Ananiadou
We explore the mechanism of in-context learning and propose a hypothesis
using locate-and-project method. In shallow layers, the features of
demonstrations are merged into their corresponding labels, and the features of
the input text are aggregated into the last token. In deep layers, in-context
heads make great contributions. In each in-context head, the value-output
matrix extracts the labels' features. Query and key matrices compute the
attention weights between the input text and each demonstration. The larger the
attention weight is, the more label information is transferred into the last
token for predicting the next word. Query and key matrices can be regarded as
two towers for learning the similarity metric between the input text and each
demonstration. Based on this hypothesis, we explain why imbalanced labels and
demonstration order affect predictions. We conduct experiments on GPT2 large,
Llama 7B, 13B and 30B. The results can support our analysis. Overall, our study
provides a new method and a reasonable hypothesis for understanding the
mechanism of in-context learning. Our code will be released on github.