広告

Tinyloraは「13パラメータ+自身の実験」でLoRA学習が機能することを示す

Reddit r/LocalLLaMA / 2026/3/30

💬 オピニオンSignals & Early TrendsIdeas & Deep AnalysisModels & Research

要点

  • 「tinylora」の研究は、約13個の学習可能パラメータだけでも、LoRAの微調整によってモデルの挙動を意味のある形で変えられると主張しており、著者は論文の結果をうまく再現できたと報告している。
  • 著者がQwen3.5で行った再現では、ランク/グローバルなパラメータ数を増やすと収束が悪化しうることが示され、極めて小さなパラメータ化が最適化可能な「狭い領域」があることを示唆している。
  • 著者は、注意層(attention)とMLP層それぞれに、独自の共有13パラメータ集合を与えることで改善が得られることを見出した(合計26個:注意層すべてに13、MLP層すべてに13)。これは、単一の共有グローバル13パラメータ方式よりも性能が高い。
  • さらに、グローバル(多くの層に共有)とローカル(層ごと)でのパラメータ最適化を比較する実験を提案している。おそらくは、層固有の調整をより的確に行うために、1層あたり2〜6パラメータを用いることが可能だとしている。
  • 著者は、こうした「小さなアダプタ」は事実の暗記にはあまり適していない一方で、挙動を誘導するのには有効かもしれないと述べている。また、DeepSeekのエングラム(engram)に類似した「behavior lookup table(挙動参照テーブル)」の概念を、LoRAアダプタのライブラリとして実装する形をほのめかしている。

tinyloraの論文は、ほんの少数のパラメータだけでモデルの挙動を変更できることを示しています。

https://arxiv.org/pdf/2602.04118

私はその論文を再現しようとして、qwen3.5向けにtinyloraの実装を作りましたが、ちゃんと動きます。これが意外で、考えるだけで気が遠くなります。たとえば、ランクを上げると最適化空間が大きくなりすぎて、正しく収束しませんでしたが、論文と同じ結果が得られました。

改善につながったのは、MLP層と注意(attention)層それぞれに、挙動調整用の独自の共有13パラメータを与えることでした。つまり、すべてのMLP層は13パラメータをまとめて持ち、すべてのattention層も13パラメータをまとめて持つため、合計26です。それは、グローバルなパラメータ数を単に全体的に増やすだけに比べると良く、また、論文のようにグローバルで13パラメータの数を固定するのとも比べて良い結果でした。

次は、各MLP層とattention層にそれぞれ独自のパラメータを最適化として与えてみたいです。各層に対しておそらく2〜6個くらいにして、より多くの層に共有されるパラメータ数が多い場合に比べてパラメータ数が少なくても、個々の層がよりうまくモデルを調整できるかどうかを見てみたい。モデルのグローバル最適化とローカル最適化を検証するためです。

また、私の仮説としては、これは事実を記憶する用途にはあまり適していないはずですが、挙動を変える点では良さそうです。lm-evalを使って下流タスクでテストしたところ、そう見えました。

これが示唆しうること

当初考えていたよりもはるかに少ないメモリでモデルを学習できる可能性があるかもしれませんが、それは挙動を変える場合に限られるでしょう。たとえば、deepseekの論文にある新しいエングラムのようなものを想像してください、
https://github.com/deepseek-ai/Engram
ただし、エングラムのルックアップの代わりに、loraアダプタで構成された挙動のためのルックアップテーブルを持てるのではないでしょうか。これはMoeよりもずっと大きく、より多様なものになり得て、さらに時間が経つにつれて更新も可能です。なぜなら、これらは非常に小さく、学習に必要なメモリがほとんどないからです。

submitted by /u/fiery_prometheus
[link] [comments]

広告