🧬

モデルマージ — 本当に2つのモデルを「合体」する唯一の方法

韓国語モデル+コーディングモデル=韓国語でコーディングするモデル?重みの平均で合体

AIで唯一の「合体」

ファインチューニング、LoRA、RAG — 全部「合体」ではない。モデルマージは本当に合体する。

モデルAの重み: [0.50, -0.30, 0.80, ...]
モデルBの重み: [0.40, -0.10, 0.60, ...]
合体後:       [0.45, -0.20, 0.70, ...]  ← 平均

66M個の数字を一つずつ平均する。訓練不要。ただの算数。

なぜ動くのか

同じベースモデルからファインチューニングされた2モデルは重みが似ている。調整結果を平均すれば両方の能力が合わさる可能性がある。

最もシンプルなマージコード

merged = {}
for key in weights_a:
    merged[key] = (weights_a[key] + weights_b[key]) / 2
# 完了。訓練なし。GPUなし。

限界 — 保証されない

実験的。同じベースモデルの補完的ドメインでは動く。異なるアーキテクチャや大きく異なるドメインでは失敗する。

キーコンセプト

1

同じベースからファインチューニングされたモデル2つを準備(例:韓国語+コーディング)

2

両モデルの重みをロード

3

66M個の数字を一つずつ平均 — (A + B) / 2

4

合体した重みを保存 — 訓練なし、GPUなし

5

テスト — 両方の能力が合わさったか確認(保証なし)

ユースケース

多言語+専門ドメイン合体 — 韓国語モデル+医療モデル=韓国語医療モデル GPUなしでモデル改善 — 訓練なしで重み算術だけで新モデル生成 コミュニティモデル組み合わせ — HuggingFaceの複数ファインチューニングモデルを合体して実験