In plain words: Transformers can learn to add and multiply numbers, but struggle with numbers longer than those in training. Measuring digit positions relative to neighbors fixes addition—5-digit training handles 15-digit sums—while adding just 10–50 long multiplication examples lets 5-digit models handle 35-digit ones.
Abstract
We examine how transformers cope with two challenges: learning basic integer arithmetic, and generalizing to longer sequences than seen during training. We find that relative position embeddings enable length generalization for simple tasks, such as addition: models trained on $5$-digit numbers can perform $15$-digit sums. However, this method fails for multiplication, and we propose train set priming: adding a few ($10$ to $50$) long sequences to the training set. We show that priming allows models trained on $5$-digit $\times$ $3$-digit multiplications to generalize to $35\times 3$ examples. We also show that models can be primed for different generalization lengths, and that the priming sample size scales as the logarithm of the training set size. Finally, we discuss potential applications of priming beyond arithmetic.
Samy Jelassi, Stéphane d'Ascoli, Carles Domingo-Enrich, Yuhuai Wu, Yuanzhi Li, François Charton
arXiv:2306.15400 · cs.LG · submitted Jun 27, 2023
abstract · pdf · html