Acelerando la Optimización Directa de Preferencias con Compartición de Prefijos
Accelerating Direct Preference Optimization with Prefix Sharing
October 27, 2024
Autores: Franklin Wang, Sumanth Hegde
cs.AI
Resumen
Los algoritmos de optimización de preferencias emparejadas sin conexión se han convertido en un enfoque popular para el ajuste fino en datos de preferencias, superando al ajuste fino supervisado tradicional en diversas tareas. Sin embargo, las implementaciones tradicionales a menudo implican cálculos redundantes, especialmente para tareas con largas indicaciones compartidas. Introducimos el uso compartido de prefijos para el ajuste de preferencias, una técnica novedosa que procesa las respuestas elegidas y rechazadas como una secuencia con un prefijo compartido. Para evitar la contaminación entre respuestas, utilizamos una máscara de atención personalizada dispersa en bloques. Nuestro método logra una mejora de 1.1-1.5 veces en el rendimiento de entrenamiento en conjuntos de datos DPO populares, sin ningún efecto en la convergencia. Al combinarlo con el empaquetado de secuencias, observamos mejoras de velocidad consistentes de 1.3-1.6 veces, beneficiando incluso a conjuntos de datos con longitudes de secuencia más cortas. Si bien nos enfocamos en la Optimización Directa de Preferencias (DPO), nuestro enfoque es aplicable a otros métodos de ajuste de preferencias emparejadas. Al mejorar la eficiencia computacional, nuestro trabajo contribuye a hacer que el ajuste fino basado en preferencias sea más accesible para una amplia gama de aplicaciones y tamaños de modelos. Ponemos nuestro código en código abierto en https://github.com/frankxwang/dpo-prefix-sharing.
English
Offline paired preference optimization algorithms have become a popular
approach for fine-tuning on preference data, outperforming traditional
supervised fine-tuning in various tasks. However, traditional implementations
often involve redundant computations, especially for tasks with long shared
prompts. We introduce prefix sharing for preference tuning, a novel technique
that processes chosen and rejected responses as one sequence with a shared
prefix. To prevent cross-response contamination, we use a custom block-sparse
attention mask. Our method achieves 1.1-1.5times improvement in training
throughput on popular DPO datasets, without any effect on convergence. When
combined with sequence packing, we observe consistent 1.3-1.6times
speedups, benefiting even datasets with smaller sequence lengths. While we
focus on Direct Preference Optimization (DPO), our approach is applicable to
other paired preference tuning methods. By enhancing computational efficiency,
our work contributes to making preference-based fine-tuning more accessible for
a wider range of applications and model sizes. We open-source our code at
https://github.com/frankxwang/dpo-prefix-sharing.Summary
AI-Generated Summary