Che cos'è
Un'esecuzione inizia normalmente dal modello di base, ovvero il modello pre-addestrato che ha selezionato. Un'esecuzione continuata inizia invece dai pesi prodotti da una Sua esecuzione precedente, e i nuovi dati vengono appresi in aggiunta a quanto già assimilato da tale esecuzione. Questo processo è noto anche come warm start, fine-tuning continuato o fine-tuning continuo. Il modello di base sottostante non cambia, pertanto la finestra di contesto, il prezzo per token e il provider rimangono invariati.
Perché concatenare le esecuzioni
Metodi diversi insegnano cose diverse, e i risultati più solidi si ottengono solitamente applicandoli in sequenza, partendo ogni volta dal risultato precedente.
| Catena | Cosa aggiunge ogni fase | Perché questo ordine |
|---|---|---|
| Supervisionato → preferenza (DPO) | L'attività, poi uno stile preferito | La DPO classifica le risposte che il modello è già in grado di fornire; su una base semplice, entrambe le risposte sono spesso ugualmente disinformate |
| Supervisionato → rinforzo (RFT) | L'attività, poi una percentuale di successo più elevata | L'RL rinforza solo le risposte che il modello a volte fornisce correttamente |
| Distillazione → supervisionato | La conoscenza dell'insegnante, poi lo stile del vostro team | La distillazione insegna le abitudini dell'insegnante; le vostre risposte non sono i suoi obiettivi |
| Supervisionato → supervisionato | Maggiori conoscenze: una nuova area di prodotto, più chat | Evita di riaddestrare tutto da zero |
| Supervisionato → DPO → supervisionato → DPO | Nuove conoscenze su un modello perfezionato, poi un nuovo perfezionamento | Un addestramento supervisionato pesante può annullare il perfezionamento delle preferenze |
| Pre-addestramento continuo → supervisionato | La conoscenza tratta dai vostri documenti, poi come rispondere utilizzandola | L'addestramento su testo grezzo insegna i fatti, non il comportamento; le chat o le Q&A generate insegnano poi a rispondere |
Come funziona alla base
Stesso provider, stesso modello di base e talvolta stesso livello di addestramento dell'esecuzione da cui continua.
Modelli in hosting. Il provider continua un nuovo processo a partire dal Suo precedente modello sottoposto a fine-tuning, identificato dal suo id, oppure effettua un warm start dal suo adapter salvato. Le regole sono stabilite dal provider: lo stesso modello di base e, in alcuni casi, lo stesso livello di addestramento utilizzato nell'esecuzione precedente.
Modelli aperti addestrati con LoRA. Un'esecuzione LoRA non modifica i pesi di base W; addestra un piccolo adapter il cui prodotto B·A viene sommato a essi. Per continuare, l'adapter precedente viene prima unito alla base, W₁ = W + B₁A₁ (ridimensionato dal fattore α/r dell'adapter), ottenendo così un modello ordinario. La nuova esecuzione addestra un nuovo adapter su W₁ e, al termine, anche quest'ultimo viene unito e il risultato salvato come modello completo.
run 1 (LoRA): W stays frozen, adapter B₁A₁ is trained
merge: W₁ = W + (α / r) · B₁A₁ # one ordinary model again
run 2 (LoRA): W₁ stays frozen, adapter B₂A₂ is trained
merge + save: W₂ = W₁ + (α / r) · B₂A₂ # saved as a complete modelUnire prima l'adapter è fondamentale perché quest'ultimo apprende una correzione per i pesi su cui si basa. Addestrato su W₁, il nuovo adapter si sviluppa sul comportamento della prima esecuzione anziché competere con esso.
Oblio: cosa può annullare un nuovo addestramento
L'addestramento su nuovi dati può sovrascrivere ciò che una rete ha appreso in precedenza, un effetto noto come oblio catastrofico. Luo et al. (2023) lo hanno osservato in modelli linguistici da 1B a 7B di parametri durante il continual instruction tuning. Questo fenomeno si verifica anche tra le Sue stesse esecuzioni: un massiccio addestramento supervisionato su un modello ottimizzato per le preferenze lo spinge nuovamente a copiare le risposte di esempio e può in parte vanificare il perfezionamento delle preferenze.
- Mantenere ogni fase focalizzata. Un breve passaggio di preferenza dopo un nuovo addestramento supervisionato ripristina il perfezionamento in modo più economico rispetto a un'unica grande esecuzione combinata.
- LoRA è d'aiuto. Biderman et al. (2024) hanno scoperto che LoRA apprende meno del fine-tuning completo su un nuovo dominio, ma dimentica meno di quello vecchio: un compromesso utile quando l'obiettivo è aggiungere, non sostituire.
- Mescolare i dati precedenti quando si aggiungono nuove conoscenze, in modo da continuare a praticare il vecchio comportamento.
- Rivalutare ogni anello. Una regressione emerge quando il nuovo modello viene confrontato con il suo genitore.
Misurare ogni anello
Un'esecuzione continuata viene valutata rispetto al modello da cui è partita, non alla base pura. Un successo rispetto alla base rifletterebbe principalmente i passaggi precedenti; un successo rispetto al genitore rappresenta il valore aggiunto da questo passaggio. Una catena viene giudicata un anello alla volta, e un anello che non supera il proprio genitore è un'ipotesi fallita: mantenga il genitore e archivi il tentativo.
- Esecuzione A: supervisionata su 400 chat di supporto, a partire dalla base. Valutata rispetto alla base: vince chiaramente.
- Esecuzione B: DPO su 120 coppie, continuata da A. Valutata rispetto ad A: 11 vittorie, 6 sconfitte, 3 pareggi. Mantenere B.
- Esecuzione C: supervisionata su 150 nuove chat relative a una nuova funzionalità, continuata da B. Valutata rispetto a B: migliore sulla nuova funzionalità, ma il giudice nota che le risposte hanno perso parte della concisione di B.
- Esecuzione D: un breve passaggio DPO, continuato da C. Valutata rispetto a C: la concisione è tornata. D è il modello da utilizzare; A, B e C rimangono nel registro o nell'Archivio.
Punti di partenza consentiti
| Nuova esecuzione | Può partire da | Perché |
|---|---|---|
| Supervisionato | Il modello di base, o qualsiasi esecuzione addestrata | Aggiungere nuova conoscenza a ciò che si possiede |
| Preferenza (DPO) | Il modello di base, o solo un'esecuzione supervisionata | Perfezionare un modello che ha appreso l'attività; la DPO su DPO con le stesse coppie causa solo sovradattamento |
| Rinforzo (RFT) | Il modello di base, o un'esecuzione supervisionata | Il RL necessita di un modello che fornisca già alcune risposte corrette |
Un secondo ciclo di DPO su nuove coppie raccolte dal modello del primo ciclo, noto come DPO iterativa, è una tecnica valida, ma richiede una nuova fase di raccolta delle coppie tra i cicli e non è ancora disponibile.
Errori comuni
- Valutare un'esecuzione continuata rispetto al modello di base puro; in questo modo si attribuisce a questo passaggio il lavoro svolto nei passaggi precedenti.
- Eseguire nuovamente la DPO sulle stesse coppie da un modello DPO. Si tratta solo di un maggior numero di epoche sugli stessi dati e tende al sovradattamento.
- Sovrapporre un'ampia esecuzione supervisionata a un modello perfezionato senza un successivo ri-perfezionamento.
- Aspettarsi di poter cambiare il modello di base a metà della catena. Un'esecuzione continuata mantiene il modello di base e il provider del genitore.
- Iniziare il RL o la DPO dal modello di base puro quando esiste già una valida esecuzione supervisionata.
Riferimenti e letture di approfondimento
Le fonti esterne si aprono in una nuova scheda.
- 01LoRA: Low-Rank Adaptation of Large Language ModelsHu et al., 2021 · arXiv · arxiv.orgPerché un adapter LoRA può essere unito ai pesi di base senza costi aggiuntivi in fase di inferenza.
- 02LoRA Learns Less and Forgets LessBiderman et al., 2024 · arXiv · arxiv.orgLoRA rispetto al fine-tuning completo in merito a ciò che si guadagna nel nuovo dominio e si perde altrove.
- 03An Empirical Study of Catastrophic Forgetting in Large Language Models During Continual Fine-tuningLuo et al., 2023 · arXiv · arxiv.orgMisura l'oblio nei modelli da 1B a 7B addestrati su un'attività dopo l'altra.
- 04Catastrophic interferenceWikipedia · en.wikipedia.orgContesto sul perché le reti neurali dimenticano quando vengono addestrate su nuovi dati.
- 05LoRAHugging Face PEFT docs · huggingface.coCome gli adapter vengono uniti al modello di base nella pratica (merge_and_unload).