Accélérer l'optimisation directe des préférences avec le partage de préfixes

Accelerating Direct Preference Optimization with Prefix Sharing

October 27, 2024
Auteurs: Franklin Wang, Sumanth Hegde
cs.AI

Résumé

Les algorithmes d'optimisation des préférences appariées hors ligne sont devenus une approche populaire pour le réglage fin sur des données de préférence, surpassant le réglage fin supervisé traditionnel dans diverses tâches. Cependant, les implémentations traditionnelles impliquent souvent des calculs redondants, en particulier pour les tâches avec de longs prompts partagés. Nous introduisons le partage de préfixes pour l'optimisation des préférences, une nouvelle technique qui traite les réponses choisies et rejetées comme une seule séquence avec un préfixe partagé. Pour éviter la contamination entre les réponses, nous utilisons un masque d'attention personnalisé à blocs épars. Notre méthode permet d'améliorer de 1,1 à 1,5 fois le débit d'entraînement sur des ensembles de données DPO populaires, sans aucun impact sur la convergence. Lorsqu'elle est combinée avec l'emballage de séquences, nous observons des accélérations constantes de 1,3 à 1,6 fois, bénéficiant même aux ensembles de données avec de plus petites longueurs de séquence. Bien que nous nous concentrions sur l'Optimisation Directe des Préférences (DPO), notre approche est applicable à d'autres méthodes d'optimisation des préférences appariées. En améliorant l'efficacité computationnelle, notre travail contribue à rendre le réglage fin basé sur les préférences plus accessible pour une gamme plus large d'applications et de tailles de modèle. Nous rendons notre code open source disponible sur 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

PDF52November 16, 2024