モデルの軽量化(シラバス 技術34)
1行の定義と◯×チェックは用語『モデル圧縮』の解説にあります。
学習目標
計算資源の限られた端末でAIを動かすエッジAIの利点と制約を理解し、蒸留・プルーニング・量子化といったモデル圧縮の手法がそれぞれモデルの何を減らして軽くするのかを区別したうえで、宝くじ仮説が示した考え方を説明できるようにします。
要点
なぜ軽くするのか
高い性能を出すモデルは重みの数が多く、大きなメモリと計算量を必要とすることが多くあります。データをクラウドに送って処理する方法もありますが、通信の遅れが許されない用途や、映像などのデータを外に出したくない用途もあります。そこで、スマートフォン、カメラ、自動車、工場の機器といった現場の端末(エッジ)で推論まで行うのがエッジAIです。
| 観点 | エッジAI | クラウドで処理 |
|---|---|---|
| 応答 | 通信を待たずに返せる | 通信の分だけ遅れる |
| 回線が切れたとき | 動き続ける | 止まる |
| データ | 端末の外に出さずに済む | 外部へ送る |
| 計算資源 | 小さく、電力も限られる | 大きい |
限られた資源で動かすために、精度をなるべく保ったままモデルを小さく速くする技術を、まとめてモデル圧縮と呼びます。
3つの代表的な手法
- 量子化:重みなどの数値を、少ないビット数で表します。32ビットの浮動小数点数を8ビットの整数にすれば、重みを保存する容量は約4分の1になります。そのぶん精度が少し落ちることがあります。
- プルーニング(枝刈り):重要度の低い重み(ニューロンどうしの結合)や、ニューロンそのものを取り除きます。値が0に近い重みを削るのが代表的な方法で、削ったあとに学習し直して精度を取り戻します。
- 蒸留:大きく高性能な教師モデルの出力を手本に、小さな生徒モデルを学習させます。正解ラベルだけでなく、「猫らしいが少し犬にも似ている」といった、教師が出す各クラスの確率の分布もまねるため、小さなモデルでも教師に近い性能が出やすくなります。
覚えるときは「何を減らすか」で分けます。量子化は数値を表すビット数を、プルーニングは重みの数を減らします。蒸留は、モデルそのものを小さく作り直します。これらは組み合わせて使えます。2015年のDeep Compressionは、プルーニング、量子化、ハフマン符号化を順に組み合わせました。
宝くじ仮説
2018年にFrankleとCarbinが示した仮説です。ランダムな初期値で作った大きなネットワークの中には、元の初期値のまま単独で学習しても、元と同じくらいの学習回数で同程度の精度に達する小さな部分ネットワークが含まれている、というものです。この部分ネットワークを「当たりくじ」と呼びます。
当たりくじは、学習とプルーニングを繰り返し、残った重みを元の初期値に戻すことで見つけます。同じ構造でも初期値をランダムに付け直すと学習が遅くなり精度も下がるため、当たりくじは構造と初期値の組み合わせに恵まれた部分だと考えられます。大きなネットワークが学習しやすいのは、たくさんのくじを引いているからだ、という見方につながります。
最初から軽く設計する
圧縮とは別に、MobileNetのように、少ない計算量で動くよう最初から設計したモデルもあります(画像認識の項目)。
G検定で問われる深さ
圧縮率の数値や実装の手順は不要です。3つの手法がそれぞれ何を減らすか(蒸留はモデル全体の大きさ、プルーニングは重みの数、量子化は数値のビット数)、蒸留での教師と生徒の関係、宝くじ仮説の当たりくじの意味、エッジAIの利点を説明できれば十分です。
つまずきやすい点
- 量子化は1つ1つの数値を表すビット数を減らし、プルーニングは重みや結合の数そのものを減らす、という減らす対象の違い
- 蒸留では生徒モデルが教師モデルの重みを受け継ぐのではなく、教師が出す確率の分布を手本に学習するので、生徒は教師と違う小さな構造でよい点
- 宝くじ仮説の当たりくじは、元の初期値のまま単独で学習すると元のネットワークと同等の精度に達する部分ネットワークで、初期値をランダムに付け直すと同じようには学習できない点
- エッジAIは主に推論を端末側で行う形で、学習はクラウドなど計算資源の大きい場所で行うことが多い点
シラバスのキーワード
練習問題
混同しやすい用語
出典と作成について
作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合。手順は編集方針)
最終更新日: 最終確認日:
対応シラバス:シラバス第1.4版 技術34
出典
- G検定 試験出題範囲(シラバス2024)第1.4版(技術分野 項目34 モデルの軽量化)2026年10月30日閲覧
- Geoffrey Hinton, Oriol Vinyals, Jeff Dean, Distilling the Knowledge in a Neural Network (2015)2026年10月30日閲覧
- Song Han, Huizi Mao, William J. Dally, Deep Compression: Compressing Deep Neural Networks with Pruning, Trained Quantization and Huffman Coding (2015)2026年10月30日閲覧
- Benoit Jacob et al., Quantization and Training of Neural Networks for Efficient Integer-Arithmetic-Only Inference (2017)2026年10月30日閲覧
- Jonathan Frankle, Michael Carbin, The Lottery Ticket Hypothesis: Finding Sparse, Trainable Neural Networks (2018)2026年10月30日閲覧