ChatPaper.aiChatPaper

Dettagli Cruciali: Sull'Implementazione della Perdita di Bilanciamento del Carico per l'Addestramento di Modelli Specializzati a Mischia di Esperti

Demons in the Detail: On Implementing Load Balancing Loss for Training Specialized Mixture-of-Expert Models

January 21, 2025
Autori: Zihan Qiu, Zeyu Huang, Bo Zheng, Kaiyue Wen, Zekun Wang, Rui Men, Ivan Titov, Dayiheng Liu, Jingren Zhou, Junyang Lin
cs.AI

Abstract

Questo articolo rivede l'implementazione del Bilanciamento del Carico della Perdita (LBL) durante l'addestramento dei modelli Mixture-of-Experts (MoEs). In particolare, LBL per MoEs è definito come la somma N_E sum_{i=1}^{N_E} f_i p_i, dove N_E è il numero totale di esperti, f_i rappresenta la frequenza dell'esperto i selezionato e p_i indica il punteggio medio di gating dell'esperto i. I framework di addestramento MoE esistenti di solito adottano la strategia di addestramento parallelo in modo che f_i e il LBL siano calcolati all'interno di un micro-batch e poi mediati tra gruppi paralleli. In sostanza, un micro-batch per l'addestramento di LLM su scala miliardaria contiene normalmente pochissime sequenze. Quindi, il LBL del micro-batch è quasi a livello di sequenza, e il router è spinto a distribuire uniformemente il token all'interno di ciascuna sequenza. In virtù di questo vincolo rigoroso, anche i token da una sequenza specifica del dominio (ad esempio, codice) vengono instradati uniformemente a tutti gli esperti, inibendo così la specializzazione dell'esperto. In questo lavoro, proponiamo di calcolare il LBL utilizzando un global-batch per allentare questo vincolo. Poiché un global-batch contiene sequenze molto più diverse rispetto a un micro-batch, ciò incoraggerà un equilibrio del carico a livello di corpus. In particolare, introduciamo un passaggio di comunicazione aggiuntivo per sincronizzare f_i tra micro-batch e quindi utilizzarlo per calcolare il LBL. Attraverso esperimenti sull'addestramento di LLM basati su MoEs (fino a 42,8 miliardi di parametri totali e 400 miliardi di token), scopriamo sorprendentemente che la strategia del LBL del global-batch porta a eccellenti miglioramenti delle prestazioni sia nella perplessità di pre-addestramento che nei compiti successivi. La nostra analisi rivela che il LBL del global-batch migliora notevolmente anche la specializzazione di dominio degli esperti MoE.
English
This paper revisits the implementation of Load-balancing Loss (LBL) when training Mixture-of-Experts (MoEs) models. Specifically, LBL for MoEs is defined as N_E sum_{i=1}^{N_E} f_i p_i, where N_E is the total number of experts, f_i represents the frequency of expert i being selected, and p_i denotes the average gating score of the expert i. Existing MoE training frameworks usually employ the parallel training strategy so that f_i and the LBL are calculated within a micro-batch and then averaged across parallel groups. In essence, a micro-batch for training billion-scale LLMs normally contains very few sequences. So, the micro-batch LBL is almost at the sequence level, and the router is pushed to distribute the token evenly within each sequence. Under this strict constraint, even tokens from a domain-specific sequence (e.g., code) are uniformly routed to all experts, thereby inhibiting expert specialization. In this work, we propose calculating LBL using a global-batch to loose this constraint. Because a global-batch contains much more diverse sequences than a micro-batch, which will encourage load balance at the corpus level. Specifically, we introduce an extra communication step to synchronize f_i across micro-batches and then use it to calculate the LBL. Through experiments on training MoEs-based LLMs (up to 42.8B total parameters and 400B tokens), we surprisingly find that the global-batch LBL strategy yields excellent performance gains in both pre-training perplexity and downstream tasks. Our analysis reveals that the global-batch LBL also greatly improves the domain specialization of MoE experts.

Summary

AI-Generated Summary

PDF662January 22, 2025