Cosa mostrano le curve
Durante l'esecuzione di un job, il provider registra la loss, ovvero l'entropia incrociata media sui token di destinazione, nel corso del tempo. Due curve sono fondamentali e alcuni provider aggiungono un terzo valore.
- La loss di addestramento viene misurata sui batch in fase di addestramento, solitamente a ogni step. È rumorosa perché ogni batch è diverso: un batch di risposte brevi e preimpostate registra un valore inferiore rispetto a uno di risposte lunghe e insolite.
- La loss di validazione viene misurata sul set di validazione tenuto da parte a intervalli regolari, ogni N step o una volta per epoca, senza aggiornamenti dei pesi. Utilizza gli stessi esempi ogni volta, quindi è più lineare, ed è quella onesta: il modello non ha mai imparato da questi.
- L'accuratezza dei token, riportata da alcuni provider, è la percentuale di token target che la previsione migliore del modello ha indovinato esattamente. Si muove nella direzione opposta rispetto alla loss ed è più facile da leggere, ma più approssimativa.
Cosa significano i numeri
L'entropia incrociata si misura con il logaritmo naturale. Una loss pari a L per token significa che il modello ha assegnato al token successivo corretto una probabilità di circa e elevato alla −L, calcolata come media geometrica. Questo rende alcuni valori facili da visualizzare.
| Loss per token | Probabilità del token corretto | Approssimativamente |
|---|---|---|
| 2,3 | Circa 0,10 | Spesso incerto; molte continuazioni plausibili |
| 1,0 | Circa 0,37 | Mediamente abbastanza sicuro |
| 0,5 | Circa 0,61 | Prevede bene lo stile e il lessico |
| 0,1 | Circa 0,90 | Quasi parola per parola; sui dati di addestramento è spesso segno di memorizzazione |
Il livello assoluto dipende fortemente dai dati. Le risposte variegate e a formato libero hanno una soglia minima elevata, poiché molte risposte diverse sono ugualmente valide; le risposte basate su modelli predefiniti possono raggiungere valori molto bassi senza che vi sia alcun errore. Pertanto, è preferibile confrontare le curve all'interno di una stessa esecuzione e tra esecuzioni diverse sullo stesso modello di base e sugli stessi dati, piuttosto che con un valore esterno. Modelli di base diversi utilizzano tokenizer differenti, rendendo le rispettive loss non confrontabili.
Pattern e cosa fare
| Cosa si osserva | Significato | Come procedere |
|---|---|---|
| Entrambe ancora in calo alla fine | Apprendimento in corso | Un numero maggiore di epoche potrebbe aiutare |
| L'addestramento cala, la validazione si appiattisce | Quasi ottimale | Fermarsi qui |
| L'addestramento cala, la validazione aumenta | Overfitting: memorizzazione degli esempi | Meno epoche, un learning rate inferiore, dati più variegati |
| Nessuna delle due cala significativamente | Underfitting o dati incoerenti | Verificare la qualità dei dati; aumentare leggermente le epoche o il learning rate |
| Loss di addestramento frastagliata con picchi | Learning rate troppo alto | Diminuirlo; aggiungere una fase di warm-up |
| La loss di addestramento cala a gradini al termine di ogni epoca | Il modello riconosce gli esempi dell'epoca precedente | Un primo segno di memorizzazione; monitorare la loss di validazione |
| Loss di validazione molto inferiore a quella di addestramento fin dall'inizio | Il set di validazione è più semplice o si sovrappone a quello di addestramento | Verificare la suddivisione per individuare conversazioni condivise o quasi duplicate |
- Configurazione: 1.200 conversazioni di addestramento, 130 tenute da parte, dimensione del batch 8, 3 epoche: 150 step per epoca, 450 in totale.
- Epoca 1: la loss di addestramento scende da 1,6 a 0,9, quella di validazione da 1,5 a 0,95. Entrambe in calo: apprendimento in corso.
- Epoca 2: l'addestramento raggiunge 0,6; la validazione tocca il minimo a 0,85 intorno allo step 250.
- Epoca 3: l'addestramento continua a scendere a 0,35, ma la validazione risale a 1,0. Il divario si allarga: il modello sta memorizzando.
- Conclusione: il modello migliore si trovava vicino allo step 250, all'inizio dell'epoca 2. Esegua nuovamente con 2 epoche, oppure utilizzi un checkpoint di quel momento se il provider ne conserva uno, e lo valuti rispetto al modello di base.
Cosa la loss non può dirLe
La loss misura la probabilità che il modello trovi le risposte di destinazione, token per token. Non valuta se una risposta sia corretta, utile o sicura. Un modello può ridurre la propria loss replicando la formulazione e la formattazione, pur commettendo errori fattuali, e un modello con una loss di validazione leggermente superiore potrebbe fornire risposte migliori. Utilizzi le curve per scegliere le epoche e il learning rate e per individuare eventuali problemi; ricorra a una valutazione, confrontando fianco a fianco le risposte del modello ottimizzato e di quello di base, per stabilire se il modello sia effettivamente migliorato.
Errori comuni
- Scegliere l'esecuzione con la loss di addestramento più bassa. Di solito è quella con il maggiore overfitting.
- Reagire a singoli punti rumorosi nella curva di addestramento invece che alla tendenza.
- Confrontare le loss tra modelli di base, tokenizer o dataset diversi.
- Considerare accettabile l'assenza di una curva di validazione. Senza dati tenuti da parte, l'overfitting è invisibile.
- Fermarsi alle curve. Una curva dall'aspetto positivo richiede comunque una valutazione delle risposte reali.
Riferimenti e letture di approfondimento
Le fonti esterne si aprono in una nuova scheda.
- 01Overfitting: Interpreting loss curvesGoogle Machine Learning Crash Course · developers.google.comUna galleria di forme reali delle curve di loss, ciascuna con la sua probabile causa.
- 02OverfittingGoogle Machine Learning Crash Course · developers.google.comCome divergono le loss di addestramento e di validazione, e il significato di tale divergenza.
- 03Cross-entropyWikipedia · en.wikipedia.org
- 04A full training loopHugging Face LLM Course · huggingface.coL'origine delle loss di addestramento e di valutazione in un ciclo di addestramento reale.