Qué es
Cada ejecución de DPO tiene un modelo de referencia: una copia congelada del modelo tal como era antes del entrenamiento de preferencias. Beta (β) decide hasta qué punto la ejecución puede alejarse de él. Piense en una correa: los pares tiran del modelo hacia las respuestas que usted prefiere, y β establece la longitud de la correa.
¿Por qué tener una correa en primer lugar? Sus pares cubren una porción estrecha de lo que se le preguntará al modelo. Si no se imponen restricciones, la forma más económica de separar las respuestas preferidas de las no preferidas puede ser extrema: hacer que ciertas expresiones sean casi imposibles, alargar todo o desviarse de formas que nadie ha revisado. Mantenerse cerca de la referencia conserva en gran medida intacto el resto del comportamiento del modelo (su conocimiento general, su fluidez, lo que le enseñó el paso supervisado).
Cómo funciona
En el objetivo del que se deriva el DPO, β multiplica la penalización por divergir de la referencia, medida como divergencia KL. El mejor modelo bajo ese objetivo es la referencia reponderada por e elevado a la recompensa ÷ β. Con un β grande, incluso las grandes diferencias de recompensa cambian las probabilidades solo un poco; con un β pequeño, las pequeñas diferencias se amplifican.
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 amplifiedDentro de la pérdida, β multiplica el margen de la relación logarítmica antes de la sigmoide. Un par deja de tirar una vez que β × margen es cómodamente positivo, porque la pérdida para ese par se estabiliza. Un β más alto alcanza ese punto después de un menor movimiento de alejamiento de la referencia; un β más bajo sigue tirando hasta que el modelo se ha movido mucho más lejos.
- Tome un par donde el entrenamiento ha movido el margen de la relación logarítmica (elegido menos rechazado, cada uno frente a la referencia) a 4,0.
- β = 0,05: β × margen = 0,2 y la pérdida es de 0,60. Aún cerca del valor inicial de 0,69, por lo que este par sigue tirando con fuerza.
- β = 0,1: 0,4, pérdida de 0,51. A mitad de camino.
- β = 0,5: 2,0, pérdida de 0,13. Mayormente satisfecho; este par ahora aporta pocos cambios adicionales.
- Para reducir la pérdida de este par a 0,1, el margen debe alcanzar aproximadamente 22,5 con β = 0,1, pero solo alrededor de 4,5 con β = 0,5. Un β más bajo permite que los mismos pares muevan el modelo mucho más lejos.
Esta es también la razón por la que el valor de pérdida depende de β. Una pérdida de 0,3 con β = 0,5 y una pérdida de 0,3 con β = 0,05 describen cantidades de cambio muy diferentes. Compare las curvas de pérdida únicamente entre ejecuciones que hayan utilizado el mismo β.
Cómo elegir
| β | Efecto | Cuándo utilizarlo |
|---|---|---|
| 0,05 | Las preferencias cambian más el modelo. Efecto más rápido, mayor riesgo de comportamiento extraño. | Pares limpios y abundantes, y un modelo que apenas se movió con 0,1. |
| 0,1 | El equilibrio habitual. | Una primera ejecución. El valor predeterminado en los experimentos del artículo sobre DPO y en Hugging Face TRL. |
| 0,3–0,5 | Se mantiene más cerca del original. Más seguro, efecto menor. | Pares escasos o ruidosos; una pérdida que cayó a cerca de 0 muy rápido; respuestas que se desviaron o empezaron a inventar detalles. |
El artículo sobre DPO utilizó β = 0,1 para la mayoría de los experimentos y β = 0,5 para su tarea de resumen. Las plataformas alojadas pueden aceptar un rango más amplio (una documenta de 0 a 2) o elegir un valor automáticamente.
La fuerza de la atracción hacia el modelo inicial durante el ajuste de preferencias. Un valor menor permite que los pares cambien más el modelo; un valor mayor lo mantiene más cerca del original. Modifíquelo en pequeños pasos y compare las evaluaciones, no las pérdidas, ya que β cambia la escala de pérdida.
β funciona junto con los demás ajustes. La tasa de aprendizaje y el número de épocas deciden con qué intensidad y durante cuánto tiempo se presiona al modelo; β decide cuánto movimiento se considera suficiente. Si una ejecución fue demasiado lejos, aumente β o reduzca la tasa de aprendizaje, pero no ambas a la vez, o no sabrá cuál fue la que ayudó.
Errores comunes
- Reducir β para hacer que el DPO «trabaje más» en pares escasos o ruidosos. Esto amplifica cualquier cosa que los pares recompensen, incluidos los errores.
- Comparar los valores de pérdida entre ejecuciones que utilizaron diferentes β.
- Cambiar β, la tasa de aprendizaje y las épocas al mismo tiempo, de modo que no se pueda saber qué cambio fue el importante.
- Asumir que un β muy alto siempre es seguro. En valores extremos, la ejecución no cambia casi nada, y usted paga por un entrenamiento que no tiene ningún efecto.
Referencias y lecturas adicionales
Las fuentes externas se abren en una pestaña nueva.
- 01Direct Preference Optimization: Your Language Model is Secretly a Reward ModelRafailov et al., 2023 · arXiv · arxiv.orgLa sección 4 deriva el óptimo de forma cerrada; el apéndice enumera β = 0,1 por defecto y 0,5 para el resumen.
- 02DPO TrainerHugging Face TRL docs · huggingface.coEl valor predeterminado de β es 0,1; la documentación describe un β más alto como una menor desviación de la referencia.
- 03Direct preference optimizationOpenAI API docs · developers.openai.comDescripción de beta de un proveedor de servicios alojados: un valor mayor es más conservador, uno menor favorece las nuevas preferencias.
- 04A General Theoretical Paradigm to Understand Learning from Human PreferencesAzar et al., 2023 · arXiv · arxiv.orgMuestra que cuando las preferencias son casi deterministas, la atracción hacia la referencia se debilita y DPO puede sobreajustarse.