LoRA

本体は残し小さな付け足しだけ学ぶ方法

ポイント
  • LoRA (Low-Rank Adaptation, 低ランク適応)は本体をそのまま固定しておき、小さな付け足しだけを新しく学ぶ方法です。
  • 学ぶ値は全体のごく一部なので学習が軽く、出来上がるものも本体の数百分の一の大きさのファイル一つで済みます。
  • 付け足しは必要なときに乗せ、要らなければ外します。一つの本体に複数の付け足しを入れ替えたり重ねたりできます。
  • 画像生成で特定の画風や人物を収めるファイルはたいていこの方式です。言語モデルを会社の話し方に合わせるときにもよく使います。
  • 本体がまったく知らないことを詰め込むことはできません。すでに持っているものをどちら向きに傾けるかに近いです。
目次

1たとえで理解する

めがね店で目が見えにくいからといって、目そのものを直しはしません。目はそのままにして、その前に薄いレンズを一枚添えます。検眼台に座ってレンズをあれこれ替えているうちに、文字がはっきり見える組み合わせを見つけたら、その度数でめがねを作ります。目がすることは何一つ変わっていないのに、見える結果はまったく違います。しかもレンズは小さくて軽いです。運転のときに使うもの、本を読むときに使うものを別に持ち歩き、場面に合わせて替えて掛けても目はいつもそのままです。要らなければ外せばそれで終わりです。LoRAは、大きな本体に触れずにその前に薄いレンズを一枚添える方法です。

2くわしく

本体は固定しておきます

モデル全体を整える方式は内側の値を全部少しずつ動かします。LoRAはその値を丸ごと固定します。学習が回っている間、本体の値は一つも変わりません。

代わりに層ごとに小さな付け足しを一つずつ付けておき、その付け足しだけを学びます。計算するときは本体が出した値に付け足しが出した値を足して次に渡します。レンズを通った光が目に届くのと同じ順番です。目が変わったのではなく、目に届く前に一枚を通っただけです。

付け足しがそんなに小さくてよい理由

ここで気になるのはこれです。本体の値が数十億個なのに、付け足し数百万個で何ができるのかということです。

要は変えるべきものが値そのものではなく、値の変化量だという点にあります。ある話し方や画風に合わせるために動かすべき変化量は、たいてい結が単純です。方向が数種類にまとまり、残りはほぼ0に近いのです。結が単純なものは薄い板二枚を重ねるだけで十分に表せます。だから付け足しの大きさを元の場所の数百分の一に減らしても、必要な変化がほとんど収まります。

この薄さを人が決めます。薄く取ればファイルが小さく速い代わりに収められる変化が少なく、厚く取ればその逆です。

入れ替えたり重ねたりできます

全体を整える方式は終えるたびに本体と同じ大きさの新しいモデルが一つずつ生まれます。用途が十個あれば大きなファイルが十個積み上がります。LoRAは本体一つに小さな付け足しファイル十個です。保存する場所も持ち運ぶ手間も桁が違います。

使い方も柔軟です。今日はこの画風、次はあの画風と入れ替えられ、二つの付け足しを一緒に乗せて混ぜることもできます。それぞれをどれだけ強く反映するか強さを調節することもあります。画像生成ツールで画風ファイルをダウンロードして乗せるのがまさにこれです。

軽いという言葉の実際の意味

学習するとき手間が減る場所がいくつもあります。直す値が少ないので、学習中に抱えておかなければならない中間の値も減ります。だから全体を整えるときは手が出せなかった大きさのモデルも、個人の機材で整えてみられるようになります。

出来上がるものも軽いです。本体が数十ギガバイトなら、付け足しは数十メガバイト程度に落ちることがよくあります。配布と共有がしやすくなったおかげで、画風ファイルをやり取りする文化が根づきました。

できないこともあります

レンズは目が受け取る光を整えるだけです。もともと目に入ってこないものを見えるようにはできません。LoRAも同じです。本体がまったく知らない分野を新しく詰め込む作業には向いていません。

変えたい幅がとても大きいときも限界が来ます。収められる変化の結が決まっているので、本体とまったく違う性格に引っ張っていくには、結局全体を整えるほうがよくなります。資料がとても多く、最後の一歩まで必要なところでは、それでも全体を整える方を選びます。

3もう少し正確に

LoRAは、層の重みを直接更新する代わりに、重みに加わる変化量を二つの小さな行列の積で表し、その二つの行列だけを学習する方法です。変化量が低いランクでも十分に表せるという観察から出た名前です。どれだけ薄く取るかを決める値をランクと呼び、反映の強さを決める値が別にあります。

たとえがずれる点もあります。めがねのレンズは目の前に一枚置かれますが、LoRAは層ごとに複数の場所に分かれて付きます。どの場所に付けるかも選ぶ項目です。まためがねは外せば元通りですが、学習を終えた付け足しは本体にそのまま合わせ込むこともできます。こう合わせ込むと計算が少し速くなる代わりに、入れ替える利点を失います。そして付け足しは本体と組み合わせが合っている必要があります。違う本体に乗せると、おかしくずれるかまったく付きません。度数の合わないレンズを別の人の目の前に置くようなものです。

4やってみる

5よくある誤解

  • LoRAがファインチューニングとは別物だと思われがちですが、実際にはモデルを目的に合わせるさまざまな方法のうち、本体に触れない枝の一つです。

  • 付け足しファイル一つでどこでも使えると考えられがちですが、実際には作るときに使った本体と組み合わせが合ってこそきちんと付きます。

  • 軽いから性能もそれだけ落ちると思われがちですが、実際には話し方や画風を合わせる仕事では全体を整えたものと近い結果になる場合が多いです。

7ひとこと要約

つまりLoRAは、大きな本体をそのまま固定したままその前に薄い付け足しを一枚だけ学び、必要なときに入れ替えたり外したりできるようにする方法です。

誤りや、もっと良いたとえがありますか? 修正を提案する · 最終更新2026-09-02