GaLore

分类: 训练优化

type:: concept aliases:: GaLore, Gradient Low-Rank Projection

  • GaLore

  • 定义

  • GaLore (Gradient Low-Rank Projection) 是一种内存高效的全参数训练方法,通过对梯度矩阵做低秩投影来压缩优化器状态的内存占用,同时保留全参数更新能力。

  • 数学形式

  • 梯度投影:G~t=PtGt\tilde{G}_t = P_t^\top G_t,其中 GtRm×nG_t \in \mathbb{R}^{m \times n} 为原始梯度,PtRm×rP_t \in \mathbb{R}^{m \times r} 为投影矩阵(rmr \ll m

  • 优化器状态仅维护低秩投影后的梯度 G~tRr×n\tilde{G}_t \in \mathbb{R}^{r \times n}

  • 投影矩阵 PtP_t 周期性通过 SVD 更新,追踪梯度的主方向

  • 核心要点

  • LoRA 的关键区别:GaLore 是全参数训练(最终更新所有权重),而 LoRA 限制在固定低秩子空间内

  • 投影矩阵动态更新,允许训练过程中探索不同的低秩子空间

  • 内存节省:优化器状态从 O(mn)O(mn) 降至 O(rn)O(rn),对大模型预训练意义重大

  • 可与 8-bit 优化器、梯度检查点等技术叠加使用

  • 代表工作

  • LoRA: 低秩参数高效微调的代表方法

  • AdamW: GaLore 常与 Adam 系优化器配合使用

  • 相关概念

  • LoRA

  • 低秩分解

  • AdamW