Paper Tape Is All You Need – Training a Transformer on a 1976 Minicomputer
Le projet implémente en assembleur PDP-11 un transformeur mono-couche à tête unique destiné à apprendre l'inversion de séquences de chiffres, en tant que successeur spirituel de Xortran. Il s'agit d'un encodeur simple composé d'embeddings, d'un mécanisme d'auto-attention avec connexion résiduelle, puis d'une projection et d'un softmax, avec d_model=16, longueur de séquence 8, vocabulaire de 10 tokens et 1 216 paramètres. L'implémentation repose sur NN11, une pile d'arithmétique en point fixe (Q8 pour l'avant, Q15 pour la rétropropagation et Q16 pour les accumulateurs), des tables de consultation pour exp et -ln, et une routine SFTMX commune pour l'avant et l'arrière faute d'un FPU. Pour tenir sur le matériel des années 1970 l'auteur a remplacé la version Fortran par de l'assembleur, utilisé SGD avec des taux d'apprentissage ajustés par couche au lieu d'Adam, et obtenu une convergence en 350 pas en 5,5 minutes sur un PDP-11/34A. Le binaire final est compact (6 179 octets), la mémoire totale utilisée est d'environ 19,2 Ko avec trois répliques des paramètres, le prototype a été validé dans le framework fonctionnel Sheaf, et le code fonctionne sur matériel réel, l'émulateur ll-34 ou une démo WebAssembly.