はじめに
-
2023年後半からWebGPUの実用化とモデル軽量化の進展により、ブラウザ上でLLMを直接実行することも現実的になってきました。
-
ブラウザ提供会社からGemini 1.0 NanoなどのSLMも出始めています
-
この分野どこまで進んでいる?いつから投資したら良いでしょうか?
自分の理解のために、サーベイ論文を読みます。
1. Introduction
- SLMとLLMの進化は2つの方向性に分かれている
- LLM: データセンターでのAGI実現を目指す
- SLM: デバイス上での効率的な展開を目指す
- SLMは実際の商用デバイスで広く使用されているが、学術的な研究は限定的である
- サーベイの範囲:
- 59個のオープンソースSLMのレビューと技術革新の分析
- 様々な領域での性能評価とベンチマーク
- デバイス上での実行時コストの測定
2. アーキテクチャ、データセット、トレーニング
2.1 SLMの概要
- 100M-5BパラメータのデコーダーオンリーTransformerモデルを対象とする
- 2023年末以降、SLMモデルの数が急増している
- 選定基準:
- デコーダーオンリーTransformerアーキテクチャ
- オープンウェイトのモデル
- 100M-5Bパラメータ範囲
- 基本モデルのみを対象(指示調整モデルは除外)
2.2 モデルアーキテクチャ
- 主要な構成要素の傾向:
- Group-Query Attention(GQA)の採用増加
- Gated FFNの普及
- SiLU活性化関数の主流化
- RMSNormの採用増加
- 50K以上の語彙サイズが一般的
- 革新的なアーキテクチャ手法:
- パラメータ共有
- レイヤー単位のパラメータスケーリング
- 非線形性補償
2.3 トレーニングデータセット
- 高品質なデータセットの重要性が増している
- DCLM-baselineとFineWeb-Eduが優れた性能を示す
- モデルベースのフィルタリングが効果的
- 訓練トークン数の特徴:
- 1.5T以上の大規模なトークンで訓練される傾向
- Chinchillaの法則よりも多くのトークンで訓練される
- 小規模モデルでも大量のトークンで訓練される例がある
2.4 トレーニングアルゴリズム
- 主要な手法:
- Maximal Update Parameterization(μP)
- Knowledge Distillation
- Two Stage Pre-training Strategy
3. SLMの性能評価
3.1 評価データセットとメトリクス
- 3つの領域で12のデータセットを使用:
- 常識的推論
- 問題解決
- 数学
- 評価指標は主に精度(accuracy)を使用
3.2 全体的な性能
- 2022-2024年の期間で大幅な性能向上:
- 常識的推論: 10.4%向上
- 問題解決: 13.5%向上
- 数学: 13.5%向上
- PhiファミリーがLLaMA 3.1に匹敵する性能を示す
- オープンソースモデルと非公開モデルの性能差は縮小傾向
3.3 文脈内学習能力
- 5ショットでの文脈内学習で平均2.1%の性能向上
- タスクによって効果に差がある
- モデルサイズが大きいほど文脈内学習能力が向上する傾向
4. 実行時コスト
4.1 概要
- 推論レイテンシー:
- プレフィル段階でアーキテクチャの影響が大きい
- デコード段階ではモデルサイズに比例
- メモリ使用量:
- モデルサイズに概ね比例
- 語彙サイズの影響が大きい
4.2 量子化とハードウェアの影響
- 量子化の効果:
- デコード段階で効果が大きい
- 4ビット量子化が最も効率的
- ハードウェアの影響:
- GPUはCPUより並列処理に優れる
- 温度管理が性能安定性に影響
4.3 レイテンシーとメモリの内訳
- レイテンシー:
- 行列-ベクトル乗算が70%以上を占める
- メモリ:
- コンテキスト長が32,000以上でKVキャッシュが80%以上を占める
5. 結論と今後の方向性
- 重要な研究方向:
- SLMアーキテクチャとデバイスプロセッサの共同設計
- 高品質な合成データセットの構築
- デプロイメントを考慮したモデルスケーリング
- デバイス上での継続学習
- デバイス-クラウド間の協調
- 公平なベンチマーク手法の確立
- スパースSLMの研究
用語まとめ
カテゴリ | 用語 | 説明 |
---|---|---|
アーキテクチャ | Decoder-only | エンコーダーを持たず、デコーダーのみで構成されるTransformerモデル |
アーキテクチャ | FFN | Feed Forward Network (順伝播型ニューラルネットワーク) |
アーキテクチャ | Gated FFN | ゲート機構を追加した順伝播型ニューラルネットワーク |
アーキテクチャ | GQA | Group-Query Attention: クエリを共有するグループベースの注意機構 |
アーキテクチャ | LayerNorm | レイヤー正規化: ニューラルネットワークの各層での入力を正規化する手法 |
アーキテクチャ | LM head | Language Model Head: 言語モデルの出力層 |
アーキテクチャ | MHA | Multi-Head Attention: 複数の注意機構を並列に用いる手法 |
アーキテクチャ | RMSNorm | Root Mean Square Normalization: LayerNormの軽量版 |
アーキテクチャ | SiLU | Sigmoid Linear Unit: 活性化関数の一種 |
アーキテクチャ | Transformer | 自己注意機構を基本とする深層学習モデルアーキテクチャ |
デバイス/ハードウェア | DVFS | Dynamic Voltage and Frequency Scaling: 動的電圧周波数制御 |
デバイス/ハードウェア | GPU | Graphics Processing Unit: 並列計算に特化したプロセッサ |
デバイス/ハードウェア | NPU | Neural Processing Unit: ニューラルネットワーク処理に特化したプロセッサ |
学習手法 | Chinchilla law | モデルサイズとトークン数の最適な比率を示す法則(20:1) |
学習手法 | Knowledge Distillation | 大規模モデルの知識を小規模モデルに転移する手法 |
学習手法 | μP | Maximal Update Parameterization: レイヤー幅に依存しない学習手法 |
推論/実行時 | KV Cache | Key-Value Cache: 注意機構の計算結果をキャッシュする仕組み |
推論/実行時 | Prefill | 入力文脈を初期処理する段階 |
推論/実行時 | Q4_K_M | 4ビット量子化の一種で、k-quantsを用いる手法 |
モデル種別 | LLM | Large Language Model: 大規模言語モデル |
モデル種別 | SLM | Small Language Model: 小規模言語モデル |
評価指標 | Zero-shot | 事前例示なしでのタスク実行能力 |
評価指標 | 5-shot | 5つの例示を用いたタスク実行能力 |