QLoRAって何?
大規模モデルの微調整で一番の壁はメモリです。70Bモデルは重みだけで数百GBにもなり、普通の人には手が出ません。QLoRAは「量子化」とLoRAを組み合わせるのが工夫。まず量子化で重みを4-bitに圧縮して基盤を極端に軽くし、その上に訓練可能なLoRAのアドオンを載せます。結果、24GBの4090のような一般向けGPU1枚で、以前は触るのも無理だったモデルを微調整できます。なぜそこまで省けるのか
量子化:重みを4-bitへ重みはふつう16-bitや32-bitで保持されます。QLoRAは4-bitで保存し、メモリ需要を桁違いに減らします。
必要なときだけ展開
4-bitの値は、必要なステップのときだけ一時的に高い精度へ戻し、普段は圧縮されたままメモリに置きます。
LoRAは小さなアドオンだけ訓練
基盤は凍結し、上に差し込んだ低ランク行列だけを更新するので、勾配用のメモリも大きく減ります。
ほかに何を解決するのか
個人でも微調整できる以前は研究所や大企業の仕事でした。QLoRA以降、個人研究者やスタートアップもゲーミングGPUで始められます。
フル微調整に近い性能
論文では、多くのタスクでフル微調整と互角に戦いながら、メモリと時間は数分の一です。
気をつける点
あくまで「費用対効果」の手法です。量子化にはわずかな精度低下があり、極端に厳しいタスクではフル微調整がやや上回ることもあります。ただ、たいていの場面では、そのコストをはるかに上回る手軽さがあります。まとめ:QLoRA=量子化で基盤を軽くし、LoRAでアドオンを訓練する手法。一般向けGPU1枚で、大規模モデルの微調整を「身近なもの」にします。
コメント