Per allineare un modello linguistico ai gusti umani — renderlo utile, non tossico, capace di seguire istruzioni — per anni la ricetta è stata una sola: addestrare un reward model separato e poi ottimizzare il modello con il reinforcement learning. Nel 2023 la Direct Preference Optimization (DPO) ha tolto quel reward model dall’equazione, e in pochi mesi è diventata lo strumento standard nel mondo open source. Ma qualcosa è rimasto sul tavolo: due copie del modello da tenere in memoria durante il training, e un dataset fatto di coppie ordinate — «questa risposta è migliore di quest’altra». Nel 2024 due lavori hanno chiesto, indipendentemente, la stessa cosa: e se togliessimo anche quello? SimPO ha rimosso una copia del modello; KTO ha rimosso le coppie.
Cosa fa DPO, e cosa continua a costare
DPO addestra il modello direttamente sui dati di preferenza, senza reinforcement learning. Il suo motore è una funzione di perdita che confronta, per ogni coppia, la risposta preferita e quella scartata. Per farlo, però, ha bisogno di un secondo modello congelato — il modello di riferimento, di solito la versione appena prima dell’allineamento — che serve da termine di paragone: la ricompensa implicita di DPO misura quanto il modello aumenta la probabilità della risposta buona rispetto al riferimento. Da qui i due costi. Uno tecnico: tenere in memoria il riferimento raddoppia l’ingombro durante il training. Uno sui dati: servono coppie pulite, cioè lo stesso prompt con due risposte confrontabili, una etichettata come migliore. Raccoglierle è laborioso.
SimPO: via il riferimento
SimPO parte da un’osservazione elegante. Quando un modello genera testo, in pratica preferisce le sequenze con la probabilità media per parola più alta. Ma la ricompensa che DPO ottimizza è un’altra grandezza — quel rapporto rispetto al riferimento — che con la generazione non coincide del tutto. C’è, insomma, un piccolo disallineamento tra ciò per cui il modello viene premiato in addestramento e ciò che poi fa quando parla.
SimPO chiude lo scarto usando come ricompensa proprio la probabilità media per parola della risposta, normalizzata sulla lunghezza. Niente modello di riferimento: la ricompensa si legge direttamente sul modello che stai addestrando. In più aggiunge un margine: non basta che la risposta buona superi la cattiva, deve superarla di un certo scarto, per rendere la distinzione più netta. La normalizzazione sulla lunghezza ha anche un effetto collaterale utile: contrasta la tendenza di DPO a premiare le risposte più lunghe solo perché sono lunghe.
Un’analogia. DPO è come giudicare due piatti tenendo sempre sul tavolo la ricetta originale come metro di paragone, e badando anche alla porzione. SimPO dice: valuta ogni piatto per la sua qualità media a ogni boccone, senza la ricetta di riferimento davanti, e chiedi che il piatto migliore vinca con un margine chiaro. Meno oggetti sul tavolo, giudizio più aderente a come si mangia davvero.
KTO: via le coppie
KTO attacca l’altro costo, quello dei dati, e lo fa con un’idea che viene dall’economia comportamentale. Il nome rimanda a Kahneman e Tversky e alla loro prospect theory: gli esseri umani non pesano guadagni e perdite in modo simmetrico. Perdere dieci euro fa più male di quanto faccia piacere trovarne dieci. KTO incorpora questa asimmetria — l’avversione alle perdite — nella funzione che il modello ottimizza.
La conseguenza pratica è la parte che conta. KTO non ha bisogno di coppie ordinate: gli basta un segnale binario su singole risposte, «desiderabile» o «non desiderabile», un pollice su o un pollice giù. Ed è esattamente il tipo di feedback che si raccoglie di continuo nel mondo reale — la valutazione a stella su una chat, il «questa risposta è utile?» sotto un messaggio — molto più abbondante e più economico delle coppie confrontabili preparate a mano.
Una precisazione, per onestà: KTO non elimina il modello di riferimento come fa SimPO — lo usa ancora, per tenere il modello ancorato al punto di partenza. La sua semplificazione è tutta sul lato dei dati. Sono due tagli diversi allo stesso apparato ereditato da DPO.
Tre ricette a partire dallo stesso punto. DPO tiene sia il modello di riferimento sia le coppie; SimPO toglie il riferimento; KTO toglie le coppie, accontentandosi di un pollice su o giù.
Nessun pasto gratis
Semplificare non è sempre migliorare, e i due lavori sono onesti su questo. Sui benchmark di allineamento più usati SimPO si è mostrata molto competitiva, spesso pari o superiore a DPO a parità di dati e modello di base; ma i metodi che rinunciano al riferimento tendono a essere più sensibili alla messa a punto — il valore del margine, la scala della ricompensa, il learning rate contano di più, e una regolazione sbagliata degrada in fretta. KTO brilla soprattutto quando i dati sono sbilanciati o disponibili solo in forma binaria, situazione frequentissima fuori dal laboratorio, ma introduce parametri propri da tarare. Non esiste un vincitore universale: DPO, SimPO e KTO scambiano costi diversi, e la scelta dipende da cosa hai — memoria, dati, tempo per sperimentare.
Perché ti riguarda
Se non addestri modelli di frontiera ma affini modelli aperti con budget limitato — e sono i più, ormai — questi due lavori abbassano la barriera d’ingresso. SimPO libera memoria preziosa sulla GPU; KTO ti permette di allineare un modello con il feedback grezzo che già raccogli, senza il lavoro artigianale di costruire coppie perfette. Ma la lezione più utile è metodologica e vale ben oltre l’allineamento: gli ingredienti «obbligatori» di una ricetta consolidata sono spesso assunzioni ereditate, che qualcuno non ha ancora provato a togliere. DPO era la semplificazione di RLHF; SimPO e KTO sono la semplificazione di DPO. La domanda giusta, davanti a una pipeline complicata, resta la stessa: questo pezzo serve davvero, o è solo lì da sempre?
Per approfondire
I paper: Meng, Xia, Chen (Princeton), SimPO: Simple Preference Optimization with a Reference-Free Reward, 2024 — arxiv.org/abs/2405.14734; Ethayarajh, Xu, Muennighoff, Jurafsky, Kiela, KTO: Model Alignment as Prospect Theoretic Optimization, 2024 — arxiv.org/abs/2402.01306. Il metodo di partenza da cui entrambi discendono è DPO: Rafailov et al. (Stanford), Direct Preference Optimization, 2023 — arxiv.org/abs/2305.18290.
I commenti sono riservati agli iscritti.
Accedi per commentare