Optimieren Sie die KI-Leistung mit Modellquantisierung. Reduzieren Sie die Größe, steigern Sie die Geschwindigkeit und verbessern Sie die Energieeffizienz für reale Anwendungen.
Modellquantisierung ist eine transformative Technik im maschinellen Lernens, die die Rechen- und Rechen- und Speicherkosten bei der Ausführung neuronaler Netzwerke. Durch die Konvertierung der Parameter des Modells Parameter des Modells - insbesondere Gewichte und Aktivierungen - von hochpräzisen Gleitkommazahlen (normalerweise 32-Bit, bekannt als FP32) in Formate mit geringerer Genauigkeit, wie z. B. 8-Bit-Ganzzahlen (INT8), können Entwickler die Dateigröße des Modells erheblich verringern. Modells erheblich verringern. Dieser Prozess ist unerlässlich für eine effiziente Modellbereitstellung auf Hardware mit Hardware mit begrenzten Ressourcen zu ermöglichen und sicherzustellen, dass hochentwickelte KI-Funktionen reibungslos auf allen Geräten - von Smartphones bis zu industriellen Sensoren.
Der Kernmechanismus der Quantisierung besteht darin, einen großen Bereich kontinuierlicher Werte auf einen kleineren Satz diskreter Werte abzubilden. Werte. In einem typischen Deep-Learning-Modell werden die Parameter als 32-Bit-Gleitkommazahlen gespeichert, um eine hohe Genauigkeit während der Trainingsphase zu gewährleisten. Während der Inferenz - der Phase, in der das Modell Vorhersagen trifft - ist dieses Maß an Präzision jedoch oft unnötig.
Die Quantisierung komprimiert diese Werte, wodurch die zum Abrufen der Modellgewichte erforderliche Speicherbandbreite Modellgewichte und beschleunigt mathematische Operationen beschleunigt. Moderne Hardware, einschließlich CPUs und spezialisierte Beschleuniger wie GPUs, haben oft spezielle Befehlssätze für Ganzzahlarithmetik, die schneller und energieeffizienter sind als ihre Gleitkomma Pendants. Diese Optimierung trägt zur Minimierung der Inferenzlatenz zu minimieren, was zu einer schnelleren Benutzererfahrung in Echtzeitanwendungen.
Es gibt zwei Hauptansätze für die Anwendung dieser Optimierung, die jeweils für verschiedene Phasen des Entwicklungs Lebenszyklus:
Quantisierung ist ein Eckpfeiler der Edge-KI, der es ermöglicht, komplexe Aufgaben lokal auf Geräten durchgeführt werden können, ohne auf eine Cloud-Konnektivität angewiesen zu sein.
Der Ultralytics vereinfacht den Export von Modellen in quantisierungsfreundliche Formate. Das folgende Beispiel zeigt, wie man ein YOLO11 Modell nach TFLite mit aktivierter INT8-Quantisierung exportiert wird. Bei diesem Vorgang wird die Kalibrierung automatisch anhand der angegebenen Daten durchgeführt.
from ultralytics import YOLO
# Load the standard YOLO11 model
model = YOLO("yolo11n.pt")
# Export to TFLite format with INT8 quantization
# The 'data' argument provides calibration images
model.export(format="tflite", int8=True, data="coco8.yaml")
Es ist hilfreich, die Quantisierung von anderen Modelloptimierungsstrategien zu unterscheiden, zu unterscheiden, da sie oft zusammen verwendet werden, aber unterschiedlich funktionieren:
Mit der zunehmenden Spezialisierung der Hardware-Beschleuniger nimmt die Bedeutung der Quantisierung weiter zu. Zukünftige Ultralytics Forschung, wie die kommende YOLO26, zielt darauf ab, die Effizienz weiter voranzutreiben, indem Architekturen entwickelt werden, die von Natur aus robust gegenüber aggressiver Quantisierung sind, um sicherzustellen, dass Hochleistungs-Computer-Vision selbst auf den kleinsten Endgeräten zugänglich bleibt.
Um eine breitere Kompatibilität zu erreichen, werden quantisierte Modelle häufig unter Verwendung interoperabler Standards wie ONNX oder optimierte Inferenz Engines wie TensorRT und OpenVINO.