【えるえるえむあっしゅく】

LLM圧縮 とは?

最終更新:
💡 言語モデルを軽くして、必要な資源を減らす技術

大規模言語モデルの保存量や実行時の資源を減らすための技術群。量子化、枝刈り、知識蒸留などがある。出力品質や速度への影響は、手法、モデル、実行環境によって異なる。

📌 このページのポイント
LLM圧縮の方法と違い 量子化 少ないビットで表す 32 bit 8 bitなど 重みの保存量を減らす 枝刈り 一部の重み・接続を省く ゼロ化した重みの計算方法も関係する 知識蒸留 教師の出力などで学習 教師モデル 別のモデル サイズ・速度・品質は別々に確認
代表的な方法の模式図。重みの保存量が減っても、必ず速くなるわけではない。
ひよこ ひよこ
ファイルをzipにすれば、軽く動くの?
ペンギン先生 ペンギン先生
保存や転送のためにファイルを圧縮することと、実行するモデルを軽くすることは別だよ。量子化や枝刈りでは数値や構造を変え、知識蒸留では別の小さなモデルを学習する。変換で出力品質が変わる場合があるので、用途に合うか確かめるんだ。
ひよこ ひよこ
どんな方法があるの?
ペンギン先生 ペンギン先生
量子化は重みなどの数値を少ないビット数で表す方法。枝刈りは重みや接続の一部を取り除いたり、ゼロにしたりする方法。知識蒸留は教師モデルの出力などを使って別のモデルを学習する方法だよ。重みの表現を共有する圧縮もあるけれど、これらは組み合わせて使うこともある例なんだ。
ひよこ ひよこ
32ビットを8ビットにしたら、メモリは4分の1?
ペンギン先生 ペンギン先生
同じ数の重みをそのビット数で保存する部分だけなら、単純な比は4分の1になるよ。ただし量子化の補助情報や、実行中の計算結果、過去のトークン情報を保持するKVキャッシュにもメモリが必要。モデルファイルや実行時のメモリ全体が必ず同じ比率で減るわけではないんだ。
ひよこ ひよこ
小さくなれば速くなるよね?
ペンギン先生 ペンギン先生
必ずしもそうではないよ。例えば量子化では数値の変換処理が増え、条件によっては遅くなることもある。枝刈りした重みを効率よく計算できるかも実行環境による。重みの保存量、生成速度、出力品質を別々に測る必要があるんだ。
ひよこ ひよこ
圧縮すればスマホでも元と同じように使える?
ペンギン先生 ペンギン先生
使えるかはモデルの大きさ、端末のメモリ、対応する実行ソフト、扱う文章の長さなどによるよ。知識蒸留も教師の能力を丸ごとコピーするわけではない。元と同じ条件で用途ごとの品質を確認し、どの端末でも性能を保って動く、とは決めつけないでね。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「LLM圧縮」って出てきたら「言語モデルを軽くして、必要な資源を減らす技術」と思えばだいたいOK!
📖 おまけ:英語の意味
「LLM Compression」 = 大規模言語モデルの圧縮
💬 LLMはLarge Language Modelの略、Compressionは圧縮。モデルの保存や実行に必要な資源を減らす技術をまとめて表すよ。

参考資料

← 用語集にもどる