隨著大型語言模型的規模越來越大,若對所有模型參數進行訓練,成本勢必非常高昂,研究人員設法減少內存使用量,其中新方法GaLore(Gradient Low-Rank Projection)可讓訓練過程更省內存,甚至用戶中電腦搭配高端顯卡就能訓練。
訓練大型語言模型為運算基礎設施帶來無法忽視的內存挑戰,主要是因權重大小和優化器(optimizer)狀態不斷增加。常見內存減少方法,例如微軟研究團隊所提出LoRA(Low-Rank Adaptation),概念是凍結原本預訓練模型權重,減少訓練參數量和優化器狀態,也能達到很好的微調(fine-tuning)效果。
不過,LoRA通常在預訓練和微調階段表現不佳,因為它將參數搜索限制在low-rank subspace並改變訓練動態,性能通常比原本訓練方法差。
日前發布的《GaLore: Memory-Efficient LLM Training by Gradient Low-Rank Projection》新論文,研究人員提出GaLore是一種新的模型訓練策略,可讓模型使用全部參數進行學習,同時比LoRA更省內存。
GaLore在優化器狀態下將內存使用量減少多達65.5%,同時在LLaMA 1B和7B架構下使用最多19.7B token的C4數據組進行預訓練,依然保持良好性能,及在GLUE任務上微調RoBERTa的效率和性能。與BF16基準相比,8位元的GaLore進一步減少優化器內存多達82.5%,總訓練內存則減少63.3%。
GaLore還有一大優點,是讓原本只能用在大型伺服器上的大型語言模型,通過家用電腦的高端顯卡(例如NVIDIA RTX 4090)也能進行訓練,研究人員首次證明在具有24GB內存的GPU預訓練7B參數模型是可行的。
(首圖來源:NVIDIA GeForce)