QLoRAとは
QLoRAとは、元のAIモデルを4ビットに圧縮して凍結し、その上に小さな追加部品(LoRA)だけを学習させることで、巨大なモデルを少ないメモリで微調整する手法です。LoRAをさらに省メモリ化した発展形で、これまで大型サーバが要った微調整を、はるかに小さな構成で行えるようにしました。
英語表記:Quantized Low-Rank Adaptation(QLoRA)
QLoRAの仕組み
ポイントは、量子化とLoRAの組み合わせにあります。まず元のモデルの重みを4ビットという粗い目盛りに圧縮して容量を大きく減らし、その状態のまま凍結します。一般的な16ビットと比べて、重みの置き場所がおおよそ4分の1で済む計算です。そのうえに、学習で動かす小さなLoRA部品を取り付けて訓練します。論文では4ビット向けに最適化したNF4という表し方や、量子化の付帯情報まで圧縮する二重量子化などの工夫で、性能を保ちながらメモリを切り詰めました。
LoRAとの違い
LoRAは元のモデルをそのままの精度で保ちつつ追加部品を学習しますが、QLoRAは元のモデル自体を4ビットに圧縮して持つ点が決定的に異なります。だからこそ、より小さなメモリでも動かせるのです。2023年5月に公開された論文では、650億パラメータ級のモデルを、48GBのGPU1枚で微調整できたと報告されました。しかも16ビットでフル微調整した場合に近い性能を保てたとされ、量子化による省メモリと精度の両立を示しています。
ビジネスでの使われ方
QLoRAの意義は、大型モデルの微調整を、限られた設備でも現実的にしたところにあります。専用の大規模サーバを構えなくても、手元の1枚のGPUで自社向けの調整を試せる道が開けました。PEFTという「安く微調整する手法群」の中でも、メモリの壁を大きく押し下げた一手として広く使われています。
Topic研究者たちが作ったモデルの名前は「グアナコ」
QLoRAに関するよくある質問
- QLoRAとLoRAは何が違いますか?
- LoRAは元のモデルを通常の精度で保ったまま小さな追加部品を学習します。QLoRAは元のモデル自体を4ビットに圧縮して凍結する点が違い、その分さらに少ないメモリで微調整できます。
- QLoRAでどのくらい大きなモデルを微調整できますか?
- 2023年5月公開の論文では、650億パラメータ級のモデルを48GBのGPU1枚で微調整できたと報告されています。しかも通常精度でフル微調整した場合に近い性能を保てたとされます。
- Guanaco(グアナコ)とは何ですか?
- QLoRAで微調整して作られた代表的なモデルの名前です。LLaMAなどラクダ科の動物にちなむ命名の一つで、対話ベンチマークでChatGPTの99.3%に達したと報告されました。