Accelerazione dell'ottimizzazione diretta delle preferenze con la condivisione dei prefissi

Accelerating Direct Preference Optimization with Prefix Sharing

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

Abstract

Gli algoritmi di ottimizzazione delle preferenze accoppiate offline sono diventati un approccio popolare per il raffinamento sui dati di preferenza, superando il tradizionale raffinamento supervisionato in varie attività. Tuttavia, le implementazioni tradizionali spesso comportano calcoli ridondanti, specialmente per compiti con prompt condivisi lunghi. Introduciamo la condivisione di prefissi per il raffinamento delle preferenze, una nuova tecnica che elabora le risposte scelte e respinte come una sequenza con un prefisso condiviso. Per prevenire la contaminazione tra le risposte, utilizziamo una maschera di attenzione personalizzata a blocchi sparsi. Il nostro metodo raggiunge un miglioramento del throughput di addestramento del 1,1-1,5 volte sui popolari set di dati DPO, senza alcun effetto sulla convergenza. Quando combinato con l'impacchettamento delle sequenze, osserviamo accelerazioni costanti del 1,3-1,6 volte, beneficiando anche i set di dati con lunghezze di sequenza più piccole. Sebbene ci concentriamo sull'Ottimizzazione Diretta delle Preferenze (DPO), il nostro approccio è applicabile ad altri metodi di raffinamento delle preferenze accoppiate. Migliorando l'efficienza computazionale, il nostro lavoro contribuisce a rendere il raffinamento basato sulle preferenze più accessibile per una gamma più ampia di applicazioni e dimensioni del modello. Rendiamo il nostro codice open-source su 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

PDF62November 16, 2024