Ultralytics YOLO27: Trag dich in die Warteliste ein.
YOLO lizenzieren
Zurück zum Ultralytics-Glossar

Model Merging

Beim Model Merging werden die Gewichte von Modellen zusammengeführt, die mit Fine-Tuning auf derselben Basis erstellt wurden. So entsteht ein einzelnes Modell ohne zusätzlichen Inferenzaufwand. Behandelt werden Mittelwertbildung und Aufgabenarithmetik.

Beim Modell-Merging werden die Gewichte von zwei oder mehr trainierten Modellen zu einem einzigen Modell kombiniert, in der Regel durch Mittelwertbildung oder Addition ihrer Parameter. So behält das Ergebnis Fähigkeiten aus allen Modellen, ohne mehrere Netze ausführen oder mit all ihren Daten neu trainieren zu müssen. Das funktioniert, wenn die Modelle dieselbe Architektur und – bei den meisten Methoden – denselben vortrainierten Ausgangspunkt haben: Beim Fine-Tuning bewegt sich jede Kopie nur ein kurzes Stück im Gewichtsraum, sodass ihre Modellgewichte weiterhin Parameter für Parameter übereinstimmen. Merging wird häufig verwendet, um offene große Sprachmodelle (LLMs) zu erstellen und LoRA-Adapter oder Stable Diffusion-Checkpoints zu kombinieren. Beim Post-Training von Metas Llama 3 wurden Modelle gemittelt, die in den einzelnen Phasen mit unterschiedlichen Daten oder Hyperparametern trainiert worden waren.

So funktioniert Modell-Merging#

Merging-Methoden unterscheiden sich darin, was sie kombinieren und wie sie Konflikte zwischen Modellen lösen:

  • Model Soups: Mitteln die Gewichte von Modellen, die mit unterschiedlichen Hyperparametern auf derselben Basis feinabgestimmt wurden. Ein gieriges Soup aus feinabgestimmten ViT-G-Modellen erzielte auf ImageNet eine Top-1-Genauigkeit von 90,94 % – damals ein Ergebnis auf dem Stand der Technik.
  • Stochastische Gewichtsmittelung: Mittelt Checkpoints, die zu verschiedenen Zeitpunkten eines Trainingslaufs gespeichert wurden. Dadurch landet das Modell tendenziell in einem breiteren, flacheren Bereich der Verlustlandschaft.
  • Task-Arithmetik: Zieht die Basisgewichte von jedem feinabgestimmten Modell ab, um einen Aufgabenvektor zu erhalten. Anschließend werden skalierte Aufgabenvektoren zur Basis addiert, um Fähigkeiten zu kombinieren, oder einer davon wird abgezogen, um ein Verhalten zu entfernen.
  • TIES-Merging: Verringert Störungen zwischen Aufgabenvektoren in drei Schritten: Parameter, die sich beim Fine-Tuning nur wenig verändert haben, werden zurückgesetzt, für jeden Parameter wird ein Vorzeichen bestimmt und nur Werte mit diesem Vorzeichen werden zusammengeführt.
  • DARE: Entfernt zufällig die meisten Werte jedes Aufgabenvektors und skaliert die übrigen vor dem Merging neu. Dadurch werden redundante Änderungen entfernt, während die Fähigkeiten für jede Aufgabe erhalten bleiben.

Die Mittelung während eines einzelnen Trainingslaufs gehört ebenfalls zum regulären Training. Beim Training von Ultralytics YOLO26 wird neben den optimierten Gewichten auch ein exponentieller gleitender Mittelwert (EMA) der Modellgewichte geführt. Der Zerfallsfaktor steigt im Verlauf des Trainings auf 0.9999 an. Die gespeicherten Checkpoints last.pt und best.pt enthalten dieses gemittelte Modell.

Aufgabenvektor- Methoden folgen alle demselben Prinzip: Jedes feinabgestimmte Modell wird als Differenz zur Basis ausgedrückt, die Differenzen werden bereinigt und kombiniert, und das Ergebnis wird wieder zur Basis addiert:

Open-Source-Tools wie mergekit setzen diese Rezepte für LLMs um, ebenso wie die sphärische Interpolation (SLERP) zwischen zwei Modellen.

Warum ein gemeinsamer Ausgangspunkt wichtig ist#

Die verborgenen Einheiten eines neuronalen Netzes lassen sich umordnen, ohne die Berechnungen des Netzes zu verändern. Deshalb speichern zwei Netze, die mit unterschiedlichen zufälligen Initialisierungen trainiert wurden, dasselbe Merkmal selten an derselben Position, und beim Mitteln werden nicht zusammengehörige Gewichte vermischt. Modelle, die auf derselben Basis feinabgestimmt wurden, behalten deren Anordnung bei und bleiben im selben Bereich niedriger Verluste, sodass ihr Mittelwert weiterhin funktioniert. Dieses Beispiel trainiert einen kleinen PyTorch-Klassifikator für handgeschriebene Ziffern, stimmt zwei Kopien auf unterschiedlichen Hälften der übrigen Trainingsdaten fein ab und vergleicht ihr Merging mit dem zweier Modelle, die mit getrennten Initialisierungen trainiert wurden:

import copy

import torch
from sklearn.datasets import load_digits
from torch import nn

torch.manual_seed(0)
X, y = load_digits(return_X_y=True)
order = torch.randperm(len(X))
X, y = torch.tensor(X / 16, dtype=torch.float32)[order], torch.tensor(y)[order]


def mlp():
    """Return a small classifier for 8x8 digit images."""
    return nn.Sequential(nn.Linear(64, 64), nn.ReLU(), nn.Linear(64, 64), nn.ReLU(), nn.Linear(64, 10))


def train(model, rows, steps):
    """Train a model with SGD on the given rows and return it."""
    optimizer = torch.optim.SGD(model.parameters(), lr=0.1, momentum=0.9)
    for _ in range(steps):
        optimizer.zero_grad()
        nn.functional.cross_entropy(model(X[rows]), y[rows]).backward()
        optimizer.step()
    return model


base = train(mlp(), slice(0, 300), 400)  # shared pretrained starting point
halves = (slice(300, 900), slice(900, 1500))  # two different fine-tuning datasets
for name, (a, b) in [
    ("fine-tuned from one base", [train(copy.deepcopy(base), rows, 100) for rows in halves]),
    ("trained from separate inits", [train(mlp(), rows, 400) for rows in halves]),
]:
    # Merge: average every weight tensor of the two models
    merged = copy.deepcopy(a)
    merged.load_state_dict({k: (a.state_dict()[k] + b.state_dict()[k]) / 2 for k in a.state_dict()})
    accuracy = [(m(X[1500:]).argmax(1) == y[1500:]).float().mean().item() for m in (a, b, merged)]
    print(f"{name}: {accuracy[0]:.3f} and {accuracy[1]:.3f}, merged {accuracy[2]:.3f}")

Bei den 297 zurückgehaltenen Ziffern erreichen die beiden auf derselben Basis feinabgestimmten Modelle Werte von 0.956 und 0.946; ihr Mittelwert erreicht 0.970 und liegt damit über beiden, weil er das Gelernte aus den jeweiligen Datenhälften kombiniert. Die beiden mit getrennten Initialisierungen trainierten Modelle erreichen 0.946 und 0.956, ihr Mittelwert fällt jedoch auf 0.808. Git Re-Basin führt das Merging unabhängig trainierter Modelle durch, indem zunächst die verborgenen Einheiten eines Modells so permutiert werden, dass sie zu denen des anderen passen.

  • Modell-Ensemble: Behält alle Modelle bei und kombiniert ihre Ausgaben. Dadurch steigen Speicherbedarf und Inferenzlatenz mit der Anzahl der Modelle. Ein zusammengeführtes Modell hat die Größe und Geschwindigkeit eines einzelnen Modells.
  • Wissensdestillation: Trainiert ein neues Schülermodell darauf, einen oder mehrere Lehrer nachzuahmen. Dafür werden Trainingsdaten und Rechenleistung benötigt. Merging ist eine direkte arithmetische Operation auf vorhandenen Gewichten.
  • Multitasking-Training: Trainiert ein Modell gemeinsam mit den Daten aller Aufgaben. Damit wird meist die Genauigkeit festgelegt, die Merging ohne Zugriff auf diese Daten zu erreichen versucht.
  • Föderiertes Lernen: Mittelt in jeder Runde die Gewichte von Modellen, die auf getrennten Geräten trainiert wurden. Jede Runde startet alle Clients mit demselben globalen Modell – dem gemeinsamen Ausgangspunkt, der das Mitteln ermöglicht.

Lösungen entdecken

Computer Vision im Sport

Computer Vision im Sport

Entdecke, wie Ultralytics YOLO die Sportbildanalyse voranbringt – mit Spieler- und Ballverfolgung, Leistungsanalysen, Erkenntnissen für das Coaching und der Rehabilitation von Athleten.
Mehr erfahren
Computer Vision für Luftbilder

Computer Vision für Luftbilder

Verwandle Drohnen- und Luftbilder mit Ultralytics YOLO in Echtzeit-Erkenntnisse für Landwirtschaft, Aquakultur, Naturschutz und Geodatenanalyse.
Mehr erfahren
Computer Vision in der Luft- und Raumfahrt

Computer Vision in der Luft- und Raumfahrt

Setze Computer Vision in der Luft- und Raumfahrt mit Ultralytics YOLO ein – für Flugzeuginspektionen, die Erkennung von Fremdkörpern auf Start- und Landebahnen, den Bodenbetrieb am Flughafen und die Erkennung von Verbundwerkstofffehlern.
Mehr erfahren
Computer Vision im Sicherheitsbereich

Computer Vision im Sicherheitsbereich

Schütze jeden Standort mit Ultralytics YOLO-Modellen. Vision-KI ermöglicht die Überwachung von Grundstücksgrenzen, die Erkennung von Bedrohungen, die Kennzeichenerkennung und die Sicherheit am Arbeitsplatz.
Mehr erfahren
Computer Vision in der Robotik

Computer Vision in der Robotik

Mach Maschinen mit Ultralytics YOLO-Modellen leistungsfähiger. Vision-KI in der Robotik ermöglicht autonome Navigation, Wahrnehmung, Objektverfolgung und Steuerung in Echtzeit.
Mehr erfahren
Bildverarbeitung in der Logistik

Bildverarbeitung in der Logistik

Optimiere die Logistik mit Ultralytics YOLO-Modellen. Vision AI ermöglicht die Paketprüfung, Sortierung und Fahrzeugverfolgung sowie die Sicherheitsüberwachung von Lagerhäusern in Echtzeit.
Mehr erfahren
Bildverarbeitung im Einzelhandel

Bildverarbeitung im Einzelhandel

Gestalte den Einzelhandel mit Ultralytics YOLO-Modellen neu. Vision AI ermöglicht Bestandsverfolgung, Regalüberwachung und Warteschlangenmanagement und liefert bessere Einblicke in das Kundenverhalten.
Mehr erfahren
Bildverarbeitung im Gesundheitswesen

Bildverarbeitung im Gesundheitswesen

Entwickle Lösungen für das Gesundheitswesen mit Ultralytics YOLO-Modellen. Vision AI ermöglicht im Gesundheitswesen schnellere medizinische Bildgebung, bessere Diagnostik und die Überwachung von Patienten.
Mehr erfahren
Computer Vision in der Fertigung

Computer Vision in der Fertigung

Optimiere die Fertigung mit Ultralytics-YOLO-Modellen. Vision AI ermöglicht Qualitätskontrolle, Fehlererkennung, die Überprüfung der Einhaltung von Vorgaben zu persönlicher Schutzausrüstung und die Automatisierung von Montagelinien.
Mehr erfahren
Computer Vision in der Automobilbranche

Computer Vision in der Automobilbranche

Setze Computer Vision in der Automobilbranche mit Ultralytics-YOLO-Modellen ein. Vision AI verbessert die Verkehrssicherheit, Fahrerassistenz und Fahrzeugautomatisierung – für intelligentere Straßen.
Mehr erfahren
Computer Vision in der Landwirtschaft

Computer Vision in der Landwirtschaft

Setze mit Ultralytics YOLO-Modellen KI für Bildverarbeitung in der intelligenten Landwirtschaft ein. Ermögliche die Überwachung von Nutzpflanzen, die Verfolgung von Nutztieren und Präzisionslandwirtschaft für höhere und nachhaltigere Erträge.
Mehr erfahren

Lass uns gemeinsam die Zukunft der KI gestalten!

Starte deine Reise in die Zukunft des maschinellen Lernens