DPO-pipeline
forkortelse for Direct Preference Optimization Pipeline
En komplet arbejdsgang til at træne en sprogmodel ved hjælp af Direct Preference Optimization, hvor modellen lærer at foretrække menneskelige præferencer uden en separat belønningsmodel.
Kort fortalt
En måde at finjustere en sprogmodel på, så den lærer, hvad mennesker foretrækker, ved at sammenligne svarpar i stedet for at bruge en belønningsmodel.
- Kategori
- træning
- Niveau
- øvet
Betydninger
1- 1
En arbejdsgang for alignment af sprogmodeller, der anvender Direct Preference Optimization til at optimere modellen direkte på præferencepar uden en eksplicit belønningsmodel.
- Vi implementerede en DPO-pipeline for at aligne vores sprogmodel med brugerpræferencer, hvilket reducerede kompleksiteten betydeligt. — Rafailov et al., 2023
- DPO-pipelinen kræver kun et datasæt af præferencepar og en referencemodel, hvilket gør den lettere at opsætte end RLHF.
Hvornår bruges det
DPO-pipelinen bruges i alignment-fasen af modeltræning efter supervised fine-tuning. Den erstatter ofte RLHF-pipelinen, da den er enklere og mere stabil. Typisk starter man med et datasæt af præferencepar (valgt/afvist) og kører DPO-tabfunktionen.
Formel
L_DPO = -𝔼_{(x,y_w,y_l)∼D} [log σ(β ⋅ (log(π_θ(y_w|x)/π_ref(y_w|x)) - log(π_θ(y_l|x)/π_ref(y_l|x))))]Oprindelse
DPO står for Direct Preference Optimization, introduceret af Rafailov et al. i 2023. Pipeline henviser til den sekventielle proces, der omfatter dataforberedelse, træning og evaluering.
Afledte ord
1Kilder
1- Direct Preference Optimization: Your Language Model is Secretly a Reward Model (Rafailov et al., 2023)