Calcolatore del warmup del learning rate
Dati di input
| Learning rate di picco | 0,0003 |
|---|---|
| Learning rate minimo | 3e-5 |
| Passi di warmup | 2.000 |
| Passi totali | 100.000 |
| Passo corrente | 1.000 |
Calcolatore del warmup del learning rate
Calcola il learning rate a qualsiasi passo di addestramento per la pianificazione standard dei transformer: un warmup lineare fino a un picco seguito da un decadimento a coseno verso un valore minimo, più la frazione di warmup.
Dati di input
Pianificazione
Risultati
Inserisci un valore per visualizzare i risultati.
Dettagli
Warmup del learning rate
Il learning rate è l'iperparametro più decisivo nell'addestramento di una rete neurale, e i transformer moderni raramente lo mantengono costante. La ricetta standard lo fa salire da zero a un picco lungo i primi passi, poi lo decade lungo una curva a coseno verso un piccolo valore minimo per il resto dell'esecuzione. Questo calcolatore restituisce il learning rate a qualsiasi passo scelto sotto tale pianificazione, insieme alla frazione di addestramento dedicata al warmup.
Perché il tasso cambia nel tempo
All'inizio dell'addestramento i pesi sono casuali e le stime correnti dell'ottimizzatore sulle statistiche dei gradienti sono inaffidabili, perciò aggiornamenti grandi possono far divergere la perdita. Un breve warmup, durante il quale il tasso sale linearmente da zero, mantiene piccoli i primi aggiornamenti mentre l'ottimizzatore si stabilizza. Una volta finito il warmup, un tasso alto accelera i progressi, ma tenerlo alto fino alla fine lascia il modello a oscillare attorno a un minimo anziché assestarsi. Decadere il tasso — qui lungo una curva a coseno — permette al modello di compiere passi ampi all'inizio e passi via via più fini man mano che converge.
La pianificazione
Due fasi governano il tasso. Durante il warmup, mentre il passo corrente è al più la lunghezza del warmup , il tasso sale linearmente fino al picco . Dopo il warmup, segue un decadimento a coseno dal picco verso il valore minimo lungo i passi rimanenti fino al totale .
ηη=ηmaxws=ηmin+21(ηmax−ηmin)(1+cosS−wπ(s−w))(s≤w)(s>w)La frazione di warmup è semplicemente . Al punto medio del decadimento il termine a coseno è nullo, quindi il tasso si colloca esattamente a metà tra il picco e il valore minimo.
Esempio
Si consideri un picco di 0,0003, un valore minimo di 0,00003, 2.000 passi di warmup e 100.000 passi totali. Al passo 1.000 — ancora dentro il warmup — e al passo 51.000 — il punto medio del decadimento — i tassi sono
η1000η51000=0.0003×20001000=0.00015=0.00003+21(0.0003−0.00003)(1+cos2π)=0.000165A metà del warmup il tasso è la metà del picco. Al punto medio del decadimento, dove il coseno è nullo, si colloca esattamente tra picco e valore minimo. Qui il warmup copre 2.000 passi su 100.000, ovvero il 2% dell'esecuzione.
Scegliere i valori
Il tasso di picco domina la pianificazione e di solito si trova in modo empirico, spesso con un test che alza il tasso finché la perdita smette di migliorare. I picchi pubblicati per i grandi transformer cadono comunemente tra circa 1e-4 e 6e-4, e il picco tende a scalare con la dimensione del batch, perciò cambiare la dimensione effettiva del batch richiede in genere di ritararlo. Un warmup da qualche centinaio a qualche migliaio di passi, spesso una piccola percentuale dell'esecuzione, è tipico. Il valore minimo è frequentemente fissato a circa un decimo del picco, oppure a zero quando si vuole un decadimento completo.
Limiti
I framework differiscono in dettagli che questo modello non cattura: alcuni misurano la pianificazione in token anziché in passi, alcuni parametrizzano il valore minimo come rapporto del picco, e alcuni aggiungono una coda finale costante o lineare. La forma a coseno con warmup adottata qui è il valore predefinito comune, ma gli iperparametri giusti dipendono dal problema e vanno confermati con la sperimentazione. Il calcolo che un dato numero di passi rappresenta è stimato dal Calcolatore di tempo e costo di addestramento, e la spesa hardware che ne sta dietro dal Calcolatore del costo delle GPU cloud.
Domande frequenti (FAQ)
Perché far salire gradualmente il learning rate invece di partire dal picco?
Nelle prime fasi dell'addestramento l'ottimizzatore dispone di poche informazioni affidabili: i metodi adattivi hanno stime correnti rumorose delle statistiche dei gradienti, e i pesi inizializzati a caso producono aggiornamenti grandi ed erratici. Partire subito dal tasso di picco in quello stato può destabilizzare o far divergere l'esecuzione.
Far salire il tasso lungo i primi passi permette all'ottimizzatore di assestarsi mentre gli aggiornamenti sono piccoli, dopodiché il tasso di picco può essere applicato in sicurezza. Il warmup è particolarmente importante per batch di grandi dimensioni e transformer profondi, dove l'instabilità iniziale è più marcata.
Quale pianificazione modella questo calcolatore?
Modella la pianificazione usata nella maggior parte dell'addestramento moderno dei transformer: un warmup lineare da zero al picco lungo i passi di warmup, seguito da un decadimento a coseno dal picco verso il minimo lungo i passi rimanenti. La forma a coseno trascorre più tempo vicino al tasso alto all'inizio del decadimento e scende dolcemente verso il valore minimo alla fine, il che addestra bene nella pratica.
Esistono altre pianificazioni — costante, decadimento lineare, radice quadrata inversa e decadimento a gradini — ma il warmup lineare con decadimento a coseno è il valore predefinito comune che questo strumento riproduce.
Come si sceglie il learning rate di picco?
Il tasso di picco è l'iperparametro più importante della pianificazione e di solito si trova in modo empirico, spesso con un breve test che aumenta il tasso finché la perdita smette di migliorare per poi tornare indietro.
I valori pubblicati per i grandi transformer cadono comunemente tra circa 1e-4 e 6e-4 per i modelli più grandi, mentre i modelli più piccoli tollerano tassi un po' più alti. Il picco di norma scala con la dimensione del batch, perciò un cambiamento nella dimensione effettiva del batch richiede in genere di ritararlo.
Avvertenze legali
Questo strumento riproduce la pianificazione comune di warmup lineare seguito da decadimento a coseno; i framework reali variano in dettagli come il fatto che il decadimento sia misurato in passi o in token e come sia parametrizzato il minimo. Gli iperparametri ottimali dipendono dal problema e vanno confermati empiricamente.
Da provare dopo
Calcolatore della dimensione effettiva del batch
Calcola la dimensione effettiva (globale) del batch per l'addestramento distribuito a partire dal micro-batch per dispositivo, dal numero di dispositivi data-parallel e dai passi di accumulo del gradiente, più i token per passo dell'ottimizzatore.