Model Merging
モデルマージによって複数の事前トレーニング済みモデルを1つに統合する方法を解説します。追加のレイテンシなしでUltralytics YOLO26の重みを融合し、性能を向上させる方法を学びます。
モデルマージとは、機械学習 (ML)における革新的な手法であり、複数の事前学習済みモデルが学習したパラメーター(重み)を、単一の統合モデルに組み合わせます。従来のマルチモデル構成とは異なり、モデルの重みをパラメータースペースで直接融合します。これにより、複数のモデルを同時に実行する際のメモリおよび計算コストを増加させることなく、異なるタスクやデータセットでファインチューニングされた複数のモデルの専門知識を組み合わせることができます。
重みに対して直接操作を適用することで、モデルマージは単一ネットワークのアーキテクチャ上の規模を維持します。これは、先進的なコンピュータービジョン (CV)パイプラインをエッジデバイスにデプロイする場合に特に有用です。エッジデバイスでは、推論レイテンシの削減とメモリの節約が重要です。
モデルマージの特徴#
モデルマージを、モデルアンサンブルや転移学習などの関連概念と区別すると理解しやすくなります。
- モデルマージとモデルアンサンブルの比較: モデルアンサンブルでは、個々のネットワークを分離したまま、それぞれを推論時に実行して出力を平均します。これにより精度は向上しますが、計算オーバーヘッドが増大します。モデルマージでは、推論 前 に実際の重みを組み合わせるため、実行時に追加の計算を必要としない単一モデルになります。
- モデルマージと転移学習の比較: 転移学習では、ベースモデルを新しいデータセットでさらに学習します。モデルマージでは追加のファインチューニングは必要ありません。すでに学習済みのモデルを数学的な操作によって融合します。
一般的な手法#
研究者たちは、ネットワークの基盤となる能力を損なうことなく重みを効果的に組み合わせるため、最近のarXivにおける学術研究で検討されているように、複数の手法を開発してきました。
- 重みの平均化: 最も単純な手法で、同じアーキテクチャを共有する複数のモデルの重みの平均を取ります。
- Task Arithmetic: 「タスクベクトル」(ファインチューニング済みモデルとそのベースモデルの差分)を加算または減算し、特定の挙動を組み合わせたり除去したりする手法です。
- TIES-Merging: 冗長な値を削減し、モデル間で一貫した符号を選択することでパラメーター干渉を解消し、多様なタスクにわたって性能を維持する高度な手法です。
実世界での利用例#
モデルマージは、ゼロから再学習することなく汎用システムを構築するうえで非常に効果的です。
- 自動運転車: 自動運転車には、Ultralytics YOLO26のベースモデルを使用できます。エンジニアは、歩行者の微妙な動きを検出するモデルバージョンと、複雑な道路標識を読み取るモデルバージョンをそれぞれ独立して学習できます。この2つのモデルをマージすると、推論時間を2倍にすることなく、両方のタスクを同時に処理できる高性能な単一検出器を作成できます。
- ヘルスケアにおけるAI: 医用画像では、厳格なデータプライバシー法により、異なる研究病院が専門的なローカルデータセット(例:MRIスキャン用とCTスキャン用)でモデルをファインチューニングする場合があります。モデルを安全にマージすることで、研究者は多様なデータ分布の恩恵を受ける包括的な診断ツールを作成できます。
例: 単純な重みの平均化#
PyTorchを使用すると、基本的なモデルマージを簡単に実行できます。次の例では、同一構造の2つのモデルのstate dictionaryを平均する方法を示します。
import torch
# Load the weights (state dicts) from two identical architectures
weights_a = torch.load("yolo26_task1.pt")["model"].state_dict()
weights_b = torch.load("yolo26_task2.pt")["model"].state_dict()
# Perform simple weight averaging
merged_weights = {k: (weights_a[k] + weights_b[k]) / 2.0 for k in weights_a.keys()}
# Save the newly merged model weights
torch.save({"model": merged_weights}, "yolo26_merged.pt")データセットのアノテーション、トレーニング、デプロイメントに関する複雑なワークフローを簡素化したいチーム向けに、Ultralytics Platformは、エンドツーエンドのビジョンAIプロジェクトを簡単に管理できる直感的なインターフェースを提供します。









