Glossario

Voce del glossario · · 4 min di lettura

Elastic Weight Consolidation

Un modello smista le domande dei clienti verso i reparti «consegna» e «resi». Ora deve imparare a riconoscere i reclami, ma i vecchi messaggi non si possono più conservare. Non è quindi possibile ripeterli durante l'addestramento. Tutto ciò che resta del vecchio compito è il modello stesso: milioni di numeri regolati nel corso dell'addestramento precedente, chiamati pesi.

Si può addestrare il modello sui reclami senza alcun vincolo. In tal caso i pesi si spostano dove conviene al nuovo compito, compresi quelli da cui dipendeva il riconoscimento di consegna e resi. Si può anche penalizzare ogni variazione allo stesso modo, ma allora il modello resta così aggrappato alle vecchie impostazioni da imparare male il nuovo. Serve una risposta alla domanda: quali pesi si possono toccare e quali è meglio di no?

L'Elastic Weight Consolidation (EWC) aggiunge all'apprendimento del nuovo compito una penalità per l'allontanamento dei pesi dai valori che avevano dopo il vecchio compito, e la penalità è tanto maggiore quanto più quel peso era importante per il vecchio compito. Gli autori lo paragonano a una molla agganciata a ogni peso: rigida per i pesi importanti, lasca per gli altri (Kirkpatrick et al., Overcoming catastrophic forgetting in neural networks, §2).

Una fila di dischetti agganciati con molle a dei paletti: i dischetti sulle molle spesse e rigide restano al loro posto, quelli sulle molle sottili e lasche si spostano verso un cerchio rosso.

Due pesi, un nuovo compito

Prendiamo solo due pesi. Dopo l'addestramento su consegna e resi valgono entrambi 1. Il primo è molto importante per i vecchi reparti (importanza 10), il secondo quasi indifferente (importanza 0,1). Il nuovo compito richiede soltanto che la somma dei due pesi sia 4. Lo soddisfano molte configurazioni: (2, 2), ma anche (1, 3).

  • Senza protezione l'addestramento sposta i due pesi in ugual misura, fino a (2, 2). Il nuovo compito è stato appreso, ma il peso importante si è allontanato di 1 e la perdita sul vecchio compito sale da 0 a 5,05.
  • Una penalità uniforme per entrambi i pesi li ferma a metà strada, a (1,67; 1,67). Il vecchio compito soffre meno, ma la somma è 3,33 invece di 4.
  • EWC trasferisce quasi tutto lo spostamento sul peso poco importante: (1,02; 2,80). La somma è 3,82 e la perdita sul vecchio compito è appena 0,16.

La perdita è un numero che dice quanto il modello sbaglia; più è piccola, meglio è. Nell'esperimento qui sotto puoi variare la forza della penalità λ e il tipo di protezione. Il risultato è calcolato in modo esatto per questo esempio a due pesi; non è la simulazione di una rete vera.

Come si sa quale peso è importante

In una rete vera nessuno fornisce le importanze in partenza. Si stimano al termine del vecchio compito, finché i suoi dati sono ancora disponibili: si verifica quanto una piccola variazione di un dato peso cambia le risposte del modello sui vecchi esempi. Il lavoro usa a questo scopo la diagonale della matrice di informazione di Fisher, cioè un solo numero di importanza per ogni peso. Poi i dati si possono eliminare; restano i vecchi valori dei pesi e le loro importanze.

Durante il nuovo addestramento si minimizza la somma di due termini (equazione 3 del lavoro):

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 è la perdita sul nuovo compito, θi\theta_i è il valore corrente del peso numero ii, θA,i∗\theta^*_{A,i} il suo valore dopo il vecchio compito, FiF_i la sua importanza, e λ\lambda dice quanto il vecchio compito conta rispetto al nuovo. Nel nostro esempio F=(10; 0,1)F = (10;\ 0{,}1) e λ=1\lambda = 1.

Limiti del metodo

L'importanza è un'approssimazione calcolata in un solo punto, separatamente per ogni peso. Gli stessi autori mostrano che la loro stima risulta a volte troppo sicura su quali pesi siano irrilevanti, e la definiscono la principale debolezza del metodo (§2.2 e §3). Nei loro esperimenti con i giochi Atari un agente con EWC imparava molti giochi uno dopo l'altro, ma non raggiungeva le reti separate addestrate per ciascun gioco. I risultati riguardano il riconoscimento di cifre e i giochi, non i grandi modelli linguistici. I nostri due pesi e i messaggi dei clienti sono una semplificazione mia.

  • Catastrophic Forgetting [Polski] è un forte peggioramento delle vecchie capacità dopo un nuovo addestramento; EWC cerca di limitarlo senza accedere ai vecchi dati.
  • Experience Replay risolve lo stesso problema in un altro modo: conserva una parte dei vecchi esempi invece delle importanze dei pesi.
  • Continual Learning definisce l'obiettivo, cioè l'apprendimento di compiti successivi conservando quelli precedenti; EWC è uno dei metodi.
  • Fine-tuning [Polski] è l'ulteriore addestramento di un modello già pronto; EWC ne modifica l'obiettivo, aggiungendo una penalità per lo spostamento dei pesi importanti.

Testo e illustrazione sono stati preparati con l'aiuto dell'AI. I due pesi, le loro importanze e la dimostrazione sono un esempio didattico mio e semplificato; l'illustrazione è una metafora, non uno schema della struttura del modello.