Apprendre à Omettre les Couches Intermédiaires des Transformers

Le calcul conditionnel est une stratégie populaire pour rendre les Transformers plus efficaces. Les méthodes existantes ciblent souvent des modules individuels (par exemple, des couches de mélange d'experts) ou sautent des couches indépendamment les unes des autres. Cependant, la recherche sur l'interprétabilité a démontré que les couches intermédiaires des Transformers présentent une redondance plus importante et que les couches initiales agrègent l'information dans les positions des jetons. Guidés par ces observations, nous proposons une nouvelle architecture qui saute dynamiquement un nombre variable de couches à partir du centre vers l'extérieur. Plus précisément, un mécanisme de contrôle appris détermine s'il faut contourner un intervalle symétrique de blocs centraux en fonction de l'entrée, et un mécanisme d'attention contrôlé empêche les jetons suivants de prêter attention aux positions de jetons sautées. Les normes résiduelles sont contrôlées selon un schéma « sandwich » ou « perilayernorm », et la parcimonie des portes est régularisée avec une perte d'ajustement adaptative. Nous avions pour objectif de réduire les besoins en calcul pour les jetons « plus simples » et potentiellement favoriser l'émergence d'une hiérarchie représentationnelle multi-niveaux, mais à l'échelle étudiée, notre approche n'améliore pas le compromis entre l'entropie croisée de validation et les FLOPs estimés par rapport aux modèles denses avec moins de couches. Nous mettons notre code à disposition sur https://github.com/tim-lawson/skip-middle.