Erfahren Sie, wie die Modellquantisierung Ultralytics für Edge-KI optimiert. Entdecken Sie, wie Sie den Speicherbedarf reduzieren, die Latenz verringern und INT8-Modelle für eine schnellere Inferenz exportieren können.
Die Modellquantisierung ist eine ausgefeilte Technik zur Modelloptimierung, mit der die Rechen- und Speicherkosten für die Ausführung von Deep-Learning-Modellen reduziert werden. In Standard-Trainingsworkflows speichern neuronale Netze in der Regel Parameter (weights and biases) und Aktivierungskarten unter Verwendung von 32-Bit-Gleitkommazahlen (FP32). Diese hohe Präzision gewährleistet zwar genaue Berechnungen während des Trainings, ist jedoch für die Inferenz oft unnötig. Durch die Quantisierung werden diese Werte in Formate mit geringerer Genauigkeit umgewandelt, z. B. 16-Bit-Gleitkommazahlen (FP16) oder 8-Bit-Ganzzahlen (INT8), wodurch die Modellgröße effektiv verringert und die Ausführungsgeschwindigkeit beschleunigt wird, ohne die Genauigkeit wesentlich zu beeinträchtigen .
Der Hauptgrund für die Quantisierung ist die Notwendigkeit, leistungsstarke KI auf Hardware mit begrenzten Ressourcen einzusetzen. Da Computer-Vision- Modelle wie YOLO26 immer komplexer werden, steigen auch ihre Rechenanforderungen . Die Quantisierung beseitigt drei kritische Engpässe:
Es ist wichtig, die Quantisierung von anderen Optimierungstechniken zu unterscheiden, da sie das Modell auf unterschiedliche Weise verändern :
Die Quantisierung ermöglicht Computer Vision und KI in verschiedenen Branchen, in denen Effizienz von größter Bedeutung ist.
Die Ultralytics vereinfacht den Exportprozess und ermöglicht es Entwicklern, Modelle wie das hochmoderne YOLO26 in quantisierte Formate zu konvertieren. Die Ultralytics bietet auch Tools zur nahtlosen Verwaltung dieser Bereitstellungen .
Das folgende Beispiel zeigt, wie ein Modell nach TFLite mit aktivierter INT8-Quantisierung exportiert wird. Dieser Prozess umfasst einen Kalibrierungsschritt, bei dem das Modell Beispieldaten beobachtet, um den optimalen Dynamikbereich für die quantisierten Werte zu bestimmen.
from ultralytics import YOLO
# Load a standard YOLO26 model
model = YOLO("yolo26n.pt")
# Export to TFLite format with INT8 quantization
# The 'int8' argument triggers Post-Training Quantization
# 'data' provides the calibration dataset needed for mapping values
model.export(format="tflite", int8=True, data="coco8.yaml")
Optimierte Modelle werden häufig unter Verwendung interoperabler Standards wie ONNX oder leistungsstarken Inferenz-Engines wie OpenVINO, wodurch eine breite Kompatibilität über verschiedene Hardware-Ökosysteme hinweg gewährleistet wird.