Yolo Vision Shenzhen
Shenzhen
Jetzt beitreten
Glossar

Modellzusammenführung

Erfahren Sie, wie durch Modellzusammenführung mehrere vortrainierte Modelle zu einem einzigen Modell kombiniert werden. Erfahren Sie, wie Sie die Gewichte Ultralytics zusammenführen können, um die Leistung ohne zusätzliche Latenz zu steigern.

Die Modellzusammenführung ist eine innovative Technik im maschinellen Lernen (ML), bei der die gelernten Parameter (Gewichte) mehrerer vortrainierter Modelle zu einem einzigen, einheitlichen Modell kombiniert werden. Im Gegensatz zu herkömmlichen Multi-Modell- Konfigurationen werden beim Merging die Modellgewichte direkt im Parameterraum zusammengeführt. Dies ermöglicht es Anwendern, das Fachwissen mehrerer Modelle zu kombinieren, die auf unterschiedliche Aufgaben oder Datensätze feinabgestimmt sind, ohne dass dabei die Speicher- und Rechenkosten für den gleichzeitigen Betrieb mehrerer Modelle entstehen.

Durch die direkte Anwendung von Operationen auf die Gewichte bewahrt die Modellzusammenführung die architektonische Struktur eines einzelnen Netzwerks. Dies ist besonders wertvoll bei der Bereitstellung fortschrittlicher Computer-Vision-Pipelines (CV) auf Edge-Geräten, wo die Reduzierung der Inferenzlatenz und die Einsparung von Speicherplatz von entscheidender Bedeutung sind.

Unterscheidung bei der Modellzusammenführung

Es ist hilfreich, die Modellzusammenführung von verwandten Konzepten wie Modellensembles und Transferlernen zu unterscheiden.

  • Modellzusammenführung vs. Modellensemble: Bei einem Modellensemble werden die einzelnen Netzwerke getrennt gehalten, wobei jedes während der Inferenz ausgeführt und deren Ausgaben gemittelt werden. Dies erhöht die Genauigkeit, vervielfacht jedoch den Rechenaufwand. Bei der Modellzusammenführung werden die tatsächlichen Gewichte vor der Inferenz kombiniert, was zu einem einzigen Modell führt, das keinen zusätzlichen Rechenaufwand während der Laufzeit erfordert.
  • Modellzusammenführung vs. Transferlernen: Beim Transferlernen wird ein Basismodell genommen und anhand eines neuen Datensatzes weiter trainiert. Die Modellzusammenführung erfordert keine zusätzliche Feinabstimmung; sie nutzt mathematische Operationen, um bereits trainierte Modelle miteinander zu verschmelzen.

Gängige Techniken

Forscher haben verschiedene Methoden entwickelt, um Gewichte effektiv zu kombinieren, ohne die zugrunde liegenden Fähigkeiten des Netzwerks zu beeinträchtigen, wie aus aktuellen wissenschaftlichen Arbeiten auf arXiv hervorgeht.

  • Gewichtungsmittelwertbildung: Die einfachste Methode, bei der der Mittelwert der Gewichte aus mehreren Modellen mit derselben Architektur gebildet wird.
  • Task-Arithmetik: Eine Technik, bei der „Task-Vektoren“ (die Differenz zwischen einem feinabgestimmten Modell und seinem Basismodell) addiert oder subtrahiert werden, um bestimmte Verhaltensweisen zu kombinieren oder zu entfernen.
  • TIES-Merging: Ein fortschrittlicher Ansatz, der Parameterkonflikte löst, indem redundante Werte gekürzt und modellübergreifend konsistente Vorzeichen gewählt werden, wobei die Leistungsfähigkeit bei verschiedenen Aufgaben erhalten bleibt.

Anwendungsfälle in der Praxis

Das Zusammenführen von Modellen ist äußerst effektiv, um verallgemeinerte Systeme zu erstellen, ohne dass ein komplettes Neutraining erforderlich ist.

  • Autonome Fahrzeuge: Ein selbstfahrendes Auto könnte ein Ultralytics verwenden. Ingenieure können eine Modellversion eigenständig darauf trainieren, detect Bewegungen von Fußgängern detect , und eine andere darauf, komplexe Verkehrszeichen zu lesen. Durch die Zusammenführung dieser beiden Modelle entsteht ein einziger, leistungsstarker Detektor, der beide Aufgaben gleichzeitig bewältigt, ohne die Inferenzzeit zu verdoppeln.
  • KI im Gesundheitswesen: In der medizinischen Bildgebung können verschiedene Forschungskrankenhäuser Modelle aufgrund strenger Datenschutzgesetze anhand spezialisierter lokaler Datensätze (z. B. einen für MRT-Aufnahmen und einen für CT-Aufnahmen) feinabstimmen. Durch die sichere Zusammenführung der Modelle können Forscher ein umfassendes Diagnosewerkzeug schaffen, das von vielfältigen Datenverteilungen profitiert.

Beispiel: Einfache gewichtete Mittelwertbildung

Sie können einfache Modellzusammenführungen ganz einfach mit PyTorcheinfach durchführen. Das folgende Beispiel zeigt, wie man die Zustandswörterbücher zweier identisch strukturierter Modelle mittelt.

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")

Für Teams, die die komplexen Arbeitsabläufe bei der Annotation, dem Training und der Bereitstellung von Datensätzen vereinfachen möchten, bietet die Ultralytics eine intuitive Benutzeroberfläche, mit der sich End-to-End-Projekte im Bereich der Bildverarbeitungs-KI mühelos verwalten lassen.

Lassen Sie uns gemeinsam die Zukunft der KI gestalten!

Beginnen Sie Ihre Reise mit der Zukunft des maschinellen Lernens