AI・機械学習
中級
モデルスープ(Model Soups)(モデルスープ)
同一ベースモデルを異なるハイパーパラメータでファインチューニングした複数モデルの重みを単純平均するアンサンブル手法。Wortsman et al. 2022が提案。個別モデルよりも汎化性能が高く、単一推論コストで複数モデル相当の性能を実現できる。
0 回閲覧
0 いいね
2026/6/8 更新
関連タグ
モデルマージ
Model Soups
重み平均
NeurIPS 2022
Wortsman
モデルスープとは
Model Soups(モデルスープ)は、同一ベースモデルから派生した複数のファインチューニング済みモデルの重みを平均するアンサンブル手法。「スープ」のメタファーは複数の食材(モデル)を混ぜ合わせるイメージから。
提案背景(Wortsman et al. 2022)
NeurIPS 2022論文「Model soups: averaging weights of multiple fine-tuned models improves accuracy without increasing inference time」では、CLIPを異なるハイパーパラメータで73回ファインチューニングし、それらの重みを平均したモデルが個別モデルよりImageNetで高精度を達成することを示した。
3種類のスープ
Uniform Soup(均一スープ)
avg_weights = {k: sum(m[k] for m in models) / len(models)
for k in models[0].keys()}
全モデルを等重みで平均。最もシンプル。
Greedy Soup(貪欲スープ)
1. モデルをバリデーション精度で降順ソート
2. 最良モデルを初期スープに設定
3. 新モデル追加時にバリデーション精度が向上すれば採用、下がれば除外
Uniform Soupより高精度。追加コストは少ない。
Learned Soup(学習スープ)
各モデルの混合係数αを勾配法で最適化
Σ α_i * θ_i, Σ α_i = 1, α_i ≥ 0
最高精度だが追加学習コストが必要。
なぜ重み平均が汎化を改善するか
損失地形(loss landscape)の観点から、異なるハイパーパラメータで収束したモデルは同じ「平坦な低損失盆地(flat loss basin)」の異なる点にあることが多い。それらの平均は盆地の中心付近となり、シャープな局所最適からのジャンプを抑制して汎化性能が上がる。
LLMマージへの発展
| 世代 | 手法 | 特徴 |
|---|---|---|
| 2022 | Model Soups | 同一タスク複数モデルの単純平均 |
| 2023 | Task Vectors | タスク差分の加算で多タスク融合 |
| 2023 | TIES-Merging | 符号干渉を考慮した多モデルマージ |
| 2023 | DARE | スパース化でノイズ除去 |
| 2024 | MergeKit | 上記全手法の統合ツールキット |
注意点
- 同一アーキテクチャ必須: 重み行列サイズが一致しないと平均不可能
- 同一ベース推奨: 異なるベースモデル同士の平均は基本的に機能しない
- マルチタスクは難しい: 異なるタスクのモデル同士の単純平均は干渉が大きい(TIES/DAREが有効)