Glossaire

Terme du glossaire · · 4 min de lecture

Elastic Weight Consolidation

Un modèle oriente les questions des clients vers les services « livraison » et « retours ». Il doit maintenant apprendre à reconnaître les réclamations, mais il n’est plus permis de conserver les anciens messages. On ne peut donc pas les réviser pendant l’apprentissage. Tout ce qui reste de l’ancienne tâche, c’est le modèle lui-même : des millions de nombres réglés au cours de l’apprentissage précédent, que l’on appelle les poids.

On peut apprendre les réclamations au modèle sans aucune contrainte. Les poids se déplacent alors là où cela sert la nouvelle tâche, y compris ceux dont dépendait la reconnaissance de la livraison et des retours. On peut aussi pénaliser chaque changement de la même façon, mais le modèle s’accroche alors si fort aux anciens réglages qu’il apprend mal la nouveauté. Il faut une réponse à la question : quels poids peut-on toucher, et lesquels vaut-il mieux laisser en place ?

L’Elastic Weight Consolidation (EWC) ajoute à l’apprentissage de la nouvelle tâche une pénalité lorsque les poids s’éloignent de leur valeur après l’ancienne tâche, pénalité d’autant plus forte que le poids était important pour l’ancienne tâche. Les auteurs comparent cela à un ressort fixé à chaque poids : raide pour les poids importants, lâche pour les autres (Kirkpatrick et al., Overcoming catastrophic forgetting in neural networks, §2).

Une rangée de disques fixés à des poteaux par des ressorts : les disques retenus par des ressorts épais et raides restent en place, ceux qui tiennent à des ressorts fins et lâches glissent vers un cercle rouge.

Deux poids, une nouvelle tâche

Prenons seulement deux poids. Après l’apprentissage de la livraison et des retours, tous deux valent 1. Le premier est très important pour les anciens services (importance 10), le second presque indifférent (importance 0,1). La nouvelle tâche exige seulement que la somme des deux poids soit égale à 4. De nombreux réglages y satisfont : (2 ; 2), mais aussi (1 ; 3).

  • Sans protection, l’apprentissage déplace les deux poids d’autant, jusqu’à (2 ; 2). La nouvelle tâche est maîtrisée, mais le poids important s’est éloigné de 1 et la perte sur l’ancienne tâche passe de 0 à 5,05.
  • Une pénalité uniforme pour les deux poids les arrête à mi-chemin, à (1,67 ; 1,67). L’ancienne tâche souffre moins, mais la somme vaut 3,33 au lieu de 4.
  • L’EWC reporte presque tout le déplacement sur le poids peu important : (1,02 ; 2,80). La somme vaut 3,82, et la perte sur l’ancienne tâche n’est que de 0,16.

La perte est un nombre qui indique à quel point le modèle se trompe ; plus elle est petite, mieux c’est. Dans l’expérience ci-dessous, vous pouvez modifier la force de la pénalité λ et le mode de protection. Le résultat est calculé exactement pour cet exemple à deux poids ; ce n’est pas la simulation d’un vrai réseau.

Comment sait-on quel poids est important

Dans un vrai réseau, personne ne fournit l’importance d’avance. On l’estime une fois l’ancienne tâche terminée, tant que ses données sont encore disponibles : on vérifie à quel point une légère modification d’un poids donné change les réponses du modèle sur les anciens exemples. L’article utilise pour cela la diagonale de la matrice d’information de Fisher, c’est-à-dire un seul nombre d’importance par poids. Les données peuvent ensuite être supprimées ; il reste les anciennes valeurs des poids et leurs importances.

Pendant le nouvel apprentissage, on minimise la somme de deux termes (équation 3 de l’article) :

L(θ)=LB(θ)+∑iλ2Fi (θi−θA,i∗)2L(\theta) = L_B(\theta) + \sum_i \frac{\lambda}{2} F_i \,(\theta_i - \theta^*_{A,i})^2

LBL_B est la perte sur la nouvelle tâche, θi\theta_i la valeur courante du poids numéro ii, θA,i∗\theta^*_{A,i} sa valeur après l’ancienne tâche, FiF_i son importance, et λ\lambda indique combien l’ancienne tâche compte face à la nouvelle. Dans notre exemple, F=(10; 0,1)F = (10;\ 0{,}1) et λ=1\lambda = 1.

Les limites de la méthode

L’importance est une approximation calculée en un seul point, séparément pour chaque poids. Les auteurs montrent eux-mêmes que leur estimation est parfois trop sûre d’elle quant aux poids sans importance, et y voient la principale faiblesse de la méthode (§2.2 et §3). Dans leurs expériences sur les jeux Atari, un agent doté de l’EWC a appris de nombreux jeux l’un après l’autre, mais n’a pas égalé des réseaux distincts entraînés pour chaque jeu. Les résultats portent sur la reconnaissance de chiffres et sur des jeux, pas sur les grands modèles de langage. Nos deux poids et nos messages de clients sont une simplification personnelle.

  • Catastrophic Forgetting [Polski] est une forte dégradation des anciennes compétences après un nouvel apprentissage ; l’EWC tente de la limiter sans accès aux anciennes données.
  • Experience Replay résout le même problème autrement : il conserve une partie des anciens exemples au lieu des importances des poids.
  • Continual Learning définit l’objectif, c’est-à-dire l’apprentissage de tâches successives en conservant les précédentes ; l’EWC est l’une des méthodes.
  • Fine-tuning [Polski] est la poursuite de l’entraînement d’un modèle existant ; l’EWC en modifie l’objectif en ajoutant une pénalité lorsqu’on touche aux poids importants.

Texte et illustration préparés avec l’aide de l’IA. Les deux poids, leurs importances et la démonstration sont un exemple pédagogique personnel simplifié ; l’illustration est une métaphore, pas un schéma de la structure d’un modèle.