低ランク適応

Low-Rank Adaptation (LoRA)

事前学習済みの重みを凍結したまま、Transformer の各層に低ランクの行列を挿入し、その部分だけを学習する微調整手法。学習対象のパラメータ数とGPUメモリの所要量を大幅に削減でき、推論時の追加遅延も生じない。用途ごとの派生モデルを安価に作る手段として使われる。

詳細

概要

LoRA は、事前学習済みモデルを特定のタスクや領域へ適応させるための微調整手法である。原論文は、モデルが大きくなるほど全パラメータを更新する完全な微調整が現実的でなくなる点を課題とし、GPT-3 175B を例に、微調整済みモデルを用途ごとに独立して配備するのは費用が過大だと指摘している。

技術的な要点

事前学習された重みは凍結し、Transformer の各層に学習可能な低ランク分解行列を挿入して、その部分だけを更新する。論文は、GPT-3 175B を Adam で完全微調整する場合と比べ、学習対象のパラメータ数を 1 万分の 1、GPU メモリの所要量を 3 分の 1 に減らせると報告している。また、学習した行列を元の重みに統合できるため、アダプタ方式と異なり推論時の追加遅延が生じないと述べている。

産業での位置づけ

1 つの基盤モデルに対し、顧客ごと、用途ごとの小さな差分だけを保持して切り替える運用が成り立つ。差分は元のモデルに比べて格段に小さく、配布や保管の負担が軽い。基盤モデルを自ら学習しない企業が、自社データで差別化する際の標準的な選択肢になっている。