Risorse/Addestramento del modello/Metodi di addestramento

Impostazione

Beta (β) nel DPO

Beta stabilisce con quanta forza il preference tuning vincola il modello al suo punto di partenza: valori più bassi consentono alle coppie di modificarlo maggiormente, valori più alti lo mantengono più vicino all'originale.

Capitolo 7Lettura di 4 min4 riferimenti

Cos'è

Ogni esecuzione DPO ha un modello di riferimento: una copia congelata del modello così com'era prima dell'addestramento sulle preferenze. Il Beta (β) decide quanto l'esecuzione possa allontanarsi da esso. Lo si può immaginare come un guinzaglio: le coppie tirano il modello verso le risposte preferite, e il β stabilisce quanto sia corto il guinzaglio.

β = 0.05vincolo allentatoβ = 0.1partenza tipicaβ = 0.5vincolo stretto
riferimento (modello di partenza)modello dopo la DPO
Beta stabilisce quanto le coppie possano allontanare il modello dal punto di partenza. Il punto scuro è il riferimento bloccato; il punto blu è il modello addestrato; l'area ombreggiata indica approssimativamente la deriva consentita. A un β inferiore corrisponde un vincolo più allentato.

Perché usare un guinzaglio? Le Sue coppie coprono una fetta ristretta di ciò che verrà chiesto al modello. Senza vincoli, il modo più economico per separare le risposte preferite da quelle non preferite può rivelarsi estremo: rendere quasi impossibile l'uso di certe espressioni, allungare ogni testo o deviare in modi che nessuno ha verificato. Restare vicini al riferimento mantiene in gran parte intatto il resto del comportamento del modello (la sua conoscenza generale, la sua fluidità, ciò che ha appreso nella fase supervisionata).

Come funziona

Nell'obiettivo da cui deriva la DPO, β moltiplica la penalità per la divergenza dal riferimento, misurata come divergenza KL. Il modello migliore secondo tale obiettivo è il riferimento riponderato per e elevato alla ricompensa ÷ β. Con un β elevato, anche grandi differenze di ricompensa modificano solo leggermente le probabilità; con un β basso, le piccole differenze vengono amplificate.

L'ottimo a cui punta la DPO
objective:  maximise  reward  −  β × KL(model ‖ reference)

best model: π*(answer) ∝ π_ref(answer) × e^(reward(answer) / β)

large β  →  rewards barely move the probabilities
small β  →  small reward differences are amplified

All'interno della loss, β moltiplica il margine del rapporto logaritmico prima della sigmoide. Una coppia smette di tirare quando β × margine è ampiamente positivo, poiché la loss per quella coppia si appiattisce. Un β più alto raggiunge quel punto dopo un minore allontanamento dal riferimento; un β più basso continua a tirare finché il modello non si è spostato molto di più.

Quanto deve spostarsi il modello
  1. Prendiamo una coppia in cui l'addestramento ha spostato il margine del rapporto logaritmico (scelta meno scartata, ciascuna rispetto al riferimento) a 4,0.
  2. β = 0,05: β × margine = 0,2 e la loss è 0,60. Ancora vicina al valore iniziale di 0,69, quindi questa coppia continua a esercitare una forte trazione.
  3. β = 0,1: 0,4, loss 0,51. A metà strada.
  4. β = 0,5: 2,0, loss 0,13. Quasi del tutto soddisfatta; ora questa coppia contribuisce in minima parte a ulteriori cambiamenti.
  5. Per spingere la loss di questa coppia fino a 0,1, il margine deve raggiungere circa 22,5 con β = 0,1, ma solo circa 4,5 con β = 0,5. Un β inferiore consente alle stesse coppie di spostare il modello molto di più.

Questo è anche il motivo per cui il valore della loss dipende da β. Una loss di 0,3 con β = 0,5 e una loss di 0,3 con β = 0,05 descrivono entità di cambiamento molto diverse. Le curve di loss vanno confrontate solo tra esecuzioni che hanno utilizzato lo stesso β.

Come scegliere

βEffettoQuando utilizzarlo
0,05Le preferenze modificano maggiormente il modello. Effetto più rapido, maggior rischio di comportamenti anomali.Coppie pulite e abbondanti, e un modello che si è a malapena spostato a 0,1.
0,1Il consueto equilibrio.Una prima esecuzione. Il valore predefinito negli esperimenti del paper sulla DPO e in Hugging Face TRL.
0,3–0,5Rimane più vicino all'originale. Più sicuro, effetto minore.Coppie scarse o rumorose; una loss scesa quasi a 0 molto velocemente; risposte che hanno deviato o iniziato a inventare dettagli.

Il paper sulla DPO ha utilizzato β = 0,1 per la maggior parte degli esperimenti e β = 0,5 per il suo task di riepilogo. Le piattaforme in hosting possono accettare un intervallo più ampio (una documenta da 0 a 2) o scegliere un valore automaticamente.

Beta (β)Tipico 0.1 (intervallo tipico 0.05–0.5)#

L'intensità del richiamo verso il modello di partenza durante il preference tuning. Un valore più basso consente alle coppie di modificare maggiormente il modello; un valore più alto lo mantiene più vicino all'originale. Modifichi il parametro a piccoli passi e confronti le valutazioni, non le loss, poiché β altera la scala della loss.

Il β lavora in sinergia con le altre impostazioni. Il learning rate e il numero di epoche decidono con quanta forza e per quanto tempo il modello viene spinto; il β decide quanto movimento è considerato sufficiente. Se un'esecuzione è andata troppo oltre, è opportuno alzare il β o abbassare il learning rate, ma non entrambi contemporaneamente, altrimenti non si saprà quale dei due sia stato d'aiuto.

Errori comuni

  • Abbassare il β per far "lavorare di più" la DPO su coppie scarse o rumorose. Questo amplifica tutto ciò che le coppie premiano, inclusi gli errori.
  • Confrontare i valori di loss tra esecuzioni che hanno utilizzato β diversi.
  • Modificare contemporaneamente β, learning rate ed epoche, rendendo impossibile capire quale modifica sia stata determinante.
  • Dare per scontato che un β molto alto sia sempre sicuro. A valori estremi l'esecuzione non cambia quasi nulla, e si finisce per pagare un addestramento che non ha alcun effetto.

Riferimenti e letture di approfondimento

Le fonti esterne si aprono in una nuova scheda.

  1. 01Direct Preference Optimization: Your Language Model is Secretly a Reward ModelRafailov et al., 2023 · arXiv · arxiv.orgLa Sezione 4 deriva l'ottimo in forma chiusa; l'appendice elenca β = 0,1 come impostazione predefinita e 0,5 per il riepilogo.
  2. 02DPO TrainerHugging Face TRL docs · huggingface.coIl valore predefinito di β è 0,1; la documentazione descrive un β più alto come una minore deviazione dal riferimento.
  3. 03Direct preference optimizationOpenAI API docs · developers.openai.comLa descrizione di beta da parte di un provider in hosting: un valore più alto è più conservativo, uno più basso favorisce le nuove preferenze.
  4. 04A General Theoretical Paradigm to Understand Learning from Human PreferencesAzar et al., 2023 · arXiv · arxiv.orgMostra che quando le preferenze sono quasi deterministiche, il richiamo verso il riferimento si indebolisce e il DPO può andare in overfitting.

Trasformate settimane di lavoro esperto in pochi minuti

Scoprite come Scalata si adatta al vostro team, ai vostri dati e ai vostri Controlli.

Contatta il team vendite