Beschleunigung der direkten Präferenzoptimierung durch Präfix-Sharing.
Accelerating Direct Preference Optimization with Prefix Sharing
October 27, 2024
Autoren: Franklin Wang, Sumanth Hegde
cs.AI
Zusammenfassung
Offline-Paarpräferenzoptimierungsalgorithmen sind zu einem beliebten Ansatz für die Feinabstimmung von Präferenzdaten geworden und übertreffen traditionelle überwachte Feinabstimmung in verschiedenen Aufgaben. Traditionelle Implementierungen beinhalten jedoch oft redundante Berechnungen, insbesondere für Aufgaben mit langen gemeinsamen Eingabeaufforderungen. Wir stellen das Präfix-Sharing für die Präferenzabstimmung vor, eine neuartige Technik, die ausgewählte und abgelehnte Antworten als eine Sequenz mit einem gemeinsamen Präfix verarbeitet. Um eine Kreuzantwortkontamination zu verhindern, verwenden wir eine benutzerdefinierte block-sparse Aufmerksamkeitsmaske. Unsere Methode erzielt eine Verbesserung der Trainingsdurchsatzrate um das 1,1- bis 1,5-fache auf beliebten DPO-Datensätzen, ohne Auswirkungen auf die Konvergenz. In Kombination mit Sequenzverpackung beobachten wir konsistente Beschleunigungen um das 1,3- bis 1,6-fache, was selbst Datensätzen mit kürzeren Sequenzlängen zugutekommt. Obwohl wir uns auf die Direkte Präferenzoptimierung (DPO) konzentrieren, ist unser Ansatz auch auf andere Methoden zur Paarpräferenzabstimmung anwendbar. Durch die Verbesserung der Recheneffizienz trägt unsere Arbeit dazu bei, die präferenzbasierte Feinabstimmung für eine breitere Palette von Anwendungen und Modellgrößen zugänglicher zu machen. Wir stellen unseren Code unter https://github.com/frankxwang/dpo-prefix-sharing als Open Source zur Verfügung.
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