Glossar

Modell Quantisierung

Optimiere die KI-Leistung mit Modellquantisierung. Verringere die Größe, erhöhe die Geschwindigkeit und verbessere die Energieeffizienz für reale Einsätze.

Trainiere YOLO Modelle einfach
mit Ultralytics HUB

Mehr erfahren

Die Modellquantisierung ist eine wichtige Technik zur Modelloptimierung, die beim Deep Learning (DL) eingesetzt wird, um die Rechen- und Speicherkosten der Modelle zu reduzieren. Dies wird erreicht, indem die numerische Genauigkeit der Modellparameter(Gewichte und Aktivierungen) von hochpräzisen Darstellungen, typischerweise 32-Bit-Gleitkommazahlen(FP32), in niedrigere Präzisionsformate wie 16-Bit-Gleitkommazahlen (FP16), 8-Bit-Ganzzahlen (INT8) oder noch niedrigere Bit-Darstellungen umgewandelt werden. Dadurch werden die Modelle kleiner, schneller und energieeffizienter, was besonders wichtig für den Einsatz komplexer Modelle in ressourcenbeschränkten Umgebungen wie mobilen Geräten oder Edge-KI-Systemen ist.

So funktioniert die Modellquantisierung

Im Kern geht es bei der Modellquantisierung darum, den Wertebereich von hochpräzisen Tensoren (wie Gewichte und Aktivierungen in FP32) in einen kleineren Bereich umzuwandeln, der durch Datentypen mit geringerer Genauigkeit (wie INT8) dargestellt werden kann. Diese Umwandlung reduziert den Speicherbedarf für das Modell und die für die Inferenz benötigte Rechenleistung erheblich, da Operationen mit Zahlen geringerer Genauigkeit (insbesondere Ganzzahlen) auf moderner Hardware wie GPUs und speziellen Beschleunigern wie TPUs oft schneller und energieeffizienter sind.

Vorteile der Modellquantisierung

Die Anwendung der Quantisierung auf Deep Learning-Modelle bietet mehrere entscheidende Vorteile:

  • Geringere Modellgröße: Eine geringere Genauigkeit erfordert weniger Bits pro Parameter, wodurch der Speicherplatzbedarf des Modells drastisch reduziert wird. Das ist vorteilhaft für Over-the-Air-Updates und Geräte mit begrenztem Speicherplatz.
  • Schnellere Inferenzgeschwindigkeit: Berechnungen mit Zahlen geringerer Genauigkeit, insbesondere Ganzzahlarithmetik, sind auf kompatibler Hardware in der Regel schneller, was zu einer geringeren Latenz bei den Schlussfolgerungen führt.
  • Geringerer Stromverbrauch: Weniger Speicherzugriffe und einfachere Berechnungen führen zu einem geringeren Energieverbrauch, was für batteriebetriebene Edge-Geräte entscheidend ist.
  • Verbesserte Einsetzbarkeit: Ermöglicht den Einsatz von großen, komplexen Modellen wie Ultralytics YOLO auf Hardware mit begrenzten Rechenressourcen, wie Mikrocontrollern oder Edge-TPUs.

Quantisierungstechniken

Es gibt zwei Hauptansätze für die Modellquantisierung:

  1. Post-Training-Quantisierung (PTQ): Bei dieser Methode wird ein bereits trainiertes Modell mit Standard-Gleitkommapräzision quantisiert. Sie ist einfacher zu implementieren, da sie kein erneutes Training erfordert, kann aber manchmal zu einem deutlichen Rückgang der Modellgenauigkeit führen. Die Kalibrierung mit einem repräsentativen Datensatz wird oft verwendet, um diesen Genauigkeitsverlust zu minimieren.
  2. Quantisierungsorientiertes Training (QAT): QAT simuliert die Auswirkungen der Quantisierung während des Trainingsprozesses selbst. Das Modell lernt, sich an die geringere Genauigkeit anzupassen, was in der Regel zu einer höheren Genauigkeit im Vergleich zu PTQ führt, obwohl es Zugriff auf die ursprüngliche Trainingspipeline und die Daten benötigt.

Anwendungen in der realen Welt

Die Modellquantisierung ist in verschiedenen Bereichen weit verbreitet:

  1. Mobile Computing: Ermöglicht anspruchsvolle KI-Funktionen wie Objekterkennung in Echtzeit für Kamerafilter, Bildklassifizierung und die Verarbeitung natürlicher Sprache direkt auf Smartphones, ohne dabei auf Cloud-Computing angewiesen zu sein. Frameworks wie TensorFlow Lite nutzen stark die Quantisierung.
  2. Autonome Fahrzeuge: Quantisierte Modelle ermöglichen eine schnellere Verarbeitung von Sensordaten (Kamera, LiDAR) für Aufgaben wie die Erkennung von Fußgängern, das Einhalten von Fahrspuren und die Erkennung von Verkehrszeichen, die für die Entscheidungsfindung in selbstfahrenden Systemen in Echtzeit entscheidend sind. Ultralytics bietet verschiedene Optionen für den Einsatz von Modellen, die für solche Anwendungen geeignet sind.

Überlegungen und verwandte Konzepte

Die Quantisierung ist zwar sehr vorteilhaft, kann aber auch die Modellgenauigkeit beeinträchtigen. Eine sorgfältige Bewertung anhand relevanter Leistungskennzahlen ist nach der Quantisierung unerlässlich. Techniken wie die Verwendung quantisierungsfreundlicher Modellarchitekturen (z. B. das Ersetzen bestimmter Aktivierungsfunktionen wie bei YOLO) können dazu beitragen, die Verschlechterung der Genauigkeit abzumildern, wie in der Anwendung quantisierter YOLOv8 beschrieben.

Die Modellquantisierung ist eine von mehreren Techniken zur Modelloptimierung. Andere sind:

  • Modellbereinigung: Entfernen von weniger wichtigen Gewichten oder Verbindungen, um die Komplexität des Modells zu reduzieren.
  • Gemischte Präzision: Verwendung einer Kombination aus FP16 und FP32 beim Training oder bei der Inferenz, um ein Gleichgewicht zwischen Geschwindigkeit/Speicher und Genauigkeit zu erreichen.
  • Wissensdestillation: Training eines kleineren "Schüler"-Modells, um die Ausgabe eines größeren, vorab trainierten "Lehrermodells" nachzuahmen.

Ultralytics unterstützt den Export von Modellen in verschiedene Formate, die die Quantisierung erleichtern, darunter ONNX, OpenVINO, TensorRT, CoreMLund TFLite, was einen effizienten Einsatz auf verschiedenen Hardware-Plattformen ermöglicht. Mit Tools wie Ultralytics HUB kannst du deine Modelle, einschließlich quantisierter Versionen, verwalten und einsetzen.

Alles lesen