GaLore: Speicher-effizientes Training von LLM durch Gradienten-Niedrig-Rang-Projektion.GaLore: Memory-Efficient LLM Training by Gradient Low-Rank Projection
Das Training von großen Sprachmodellen (LLMs) birgt erhebliche Speicherherausforderungen, hauptsächlich aufgrund der wachsenden Größe der Gewichte und Optimizer-Zustände. Gängige Speicherreduktionsansätze wie die Low-Rank-Anpassung (LoRA) fügen jeder Schicht eine trainierbare Low-Rank-Matrix zu den eingefrorenen vortrainierten Gewichten hinzu, um die trainierbaren Parameter und Optimizer-Zustände zu reduzieren. Solche Ansätze erzielen jedoch in der Regel eine geringere Leistung als das Training mit vollständigen Gewichten sowohl in der Vortrainings- als auch in den Feinabstimmungsphasen, da sie die Parametersuche auf einen Low-Rank-Unterraum beschränken und die Trainingsdynamik verändern und möglicherweise einen Warmstart mit vollständigen Gewichten erfordern. In dieser Arbeit schlagen wir Gradienten-Low-Rank-Projektion (GaLore) vor, eine Trainingsstrategie, die ein vollständiges Lernen der Parameter ermöglicht, aber speichereffizienter ist als gängige Low-Rank-Anpassungsmethoden wie LoRA. Unser Ansatz reduziert den Speicherverbrauch der Optimizer-Zustände um bis zu 65,5%, während Effizienz und Leistungsfähigkeit sowohl beim Vortraining auf LLaMA 1B und 7B Architekturen mit dem C4-Datensatz mit bis zu 19,7B Tokens als auch bei der Feinabstimmung von RoBERTa auf GLUE-Aufgaben erhalten bleiben. Unser 8-Bit GaLore reduziert den Speicherbedarf des Optimizers um bis zu 82,5% und den Gesamtspeicherbedarf des Trainings um 63,3% im Vergleich zu einem BF16-Baseline. Bemerkenswert ist, dass wir erstmals die Machbarkeit des Vortrainings eines 7B-Modells auf Consumer-GPUs mit 24GB Speicher (z. B. NVIDIA RTX 4090) ohne Modellparallelität, Checkpointing oder Auslagerungsstrategien demonstrieren.