Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Entraînement sensible à la quantification (QAT)

Découvrez comment la formation sensible à la quantification (QAT) optimise les modèles Ultralytics pour un déploiement en périphérie. Découvrez comment maintenir une grande précision avec la précision INT8.

La formation sensible à la quantification (QAT) est une technique spécialisée utilisée pendant la phase de formation des modèles d'apprentissage automatique afin de les préparer à des environnements de moindre précision. Dans les flux de travail d'apprentissage profond standard, les modèles fonctionnent généralement à l'aide de nombres à virgule flottante 32 bits de haute précision (FP32). Bien que cette précision offre une excellente exactitude, elle peut être coûteuse en termes de calcul et de mémoire, en particulier sur les appareils périphériques. Le QAT simule les effets de la quantification, en réduisant la précision à des formats tels que les entiers 8 bits (INT8), pendant que le modèle est encore en cours de formation. En introduisant ces erreurs de quantification pendant le processus d'apprentissage, le modèle apprend à adapter ses poids et à récupérer efficacement la précision qui pourrait autrement être perdue lors de la conversion post-formation.

Pourquoi QAT est important pour le déploiement en périphérie

Le déploiement de modèles de vision par ordinateur sur des appareils aux ressources limitées nécessite souvent de trouver un équilibre entre vitesse et performances. Les méthodes de quantification standard, connues sous le nom de quantification post-entraînement (PTQ), n'appliquent la réduction de précision qu'une fois le modèle entièrement entraîné. Bien que la PTQ soit rapide, elle peut parfois dégrader la précision des modèles sensibles, car les pondérations du réseau neuronal sont considérablement modifiées sans possibilité d'ajustement.

QAT résout ce problème en permettant au modèle de « s'entraîner » à être quantifié. Au cours de la phase ascendante de l'entraînement, les poids et les activations sont simulés sous forme de valeurs à faible précision. Cela permet au processus de descente de gradient de mettre à jour les paramètres du modèle de manière à minimiser la perte spécifiquement pour l'état quantifié. Il en résulte un modèle robuste qui conserve une grande précision même lorsqu'il est déployé sur du matériel tel que des microcontrôleurs ou des processeurs mobiles.

Différencier le QAT du quantification post-entraînement (PTQ)

Il est utile de distinguer le QAT de la quantification du modèle, en particulier la quantification post-entraînement (PTQ) :

  • Quantification post-entraînement (PTQ) : le modèle est entraîné normalement en FP32. Une fois l'entraînement terminé , les poids sont convertis en INT8. Ce procédé est plus rapide et ne nécessite aucun réentraînement, mais peut entraîner une perte de précision plus importante pour les architectures complexes.
  • Entraînement sensible à la quantification (QAT) : le processus de quantification est émulé pendant la phase de réglage fin. Le modèle ajuste ses paramètres internes pour s'adapter au bruit introduit par une précision moindre, ce qui permet généralement d' obtenir une meilleure précision que le PTQ.

Applications concrètes

Le QAT est essentiel pour les industries où l'inférence en temps réel sur le matériel périphérique est cruciale.

  • Drones autonomes : dans le cadre des opérations de drones basées sur l'IA, l'autonomie de la batterie et la puissance de traitement embarquée sont très limitées. Les drones utilisant des modèles optimisés via QAT peuvent detect des obstacles ou track avec une grande précision tout en utilisant des accélérateurs INT8, ce qui prolonge considérablement la durée de vol par rapport aux modèles FP32.
  • Caméras intelligentes pour le commerce de détail : les supermarchés utilisent la vision par ordinateur dans le commerce de détail pour surveiller les stocks en rayon ou gérer les files d'attente aux caisses. Ces systèmes fonctionnent souvent sur des passerelles périphériques à faible consommation d'énergie. QAT garantit que les modèles de détection d'objets fonctionnant sur ces appareils conservent la précision nécessaire pour distinguer des produits similaires sans nécessiter une connectivité cloud coûteuse.

Mise en œuvre du QAT avec Ultralytics

Ultralytics et YOLO prennent en charge l'exportation de modèles vers des formats quantifiés. Bien que le QAT soit une procédure d'entraînement complexe, les frameworks modernes facilitent la préparation de modèles pour l'inférence quantifiée.

Vous trouverez ci-dessous un exemple illustrant comment exporter un modèle YOLO26 entraîné vers un TFLite quantifié INT8, qui utilise les principes de quantification pour un déploiement efficace en périphérie.

from ultralytics import YOLO

# Load a trained YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to TFLite format with INT8 quantization
# This prepares the model for efficient execution on edge devices
model.export(format="tflite", int8=True)

Intégration avec les écosystèmes Edge

Les modèles optimisés via des techniques de quantification sont conçus pour fonctionner sur des moteurs d'inférence spécialisés. Les modèles entraînés par QAT sont souvent déployés à l'aide ONNX pour une compatibilité multiplateforme ou OpenVINO pour l'optimisation sur Intel . Cela garantit que, que la cible soit un Raspberry Pi ou un Edge TPU dédié, le modèle fonctionne avec la plus grande efficacité et la plus grande rapidité possibles.

Concepts clés liés au QAT

Pour bien comprendre le QAT, il est utile de se familiariser avec plusieurs concepts liés à l'apprentissage automatique :

  • Précision : fait référence au niveau de détail utilisé pour représenter les nombres. La demi-précision (FP16) et INT8 sont des cibles courantes pour la quantification.
  • Calibrage : processus consistant à déterminer la plage des valeurs d'activation dynamiques (min/max) afin de mapper efficacement les nombres à virgule flottante en nombres entiers. Il s'agit d'une étape cruciale dans le déploiement YOLO quantifiés.
  • Latence d'inférence : l'un des principaux avantages du QAT est la réduction de la latence d'inférence, ce qui permet une prise de décision plus rapide dans les systèmes en temps réel.
  • Réglage fin : le QAT est souvent utilisé comme étape de réglage fin sur un modèle pré-entraîné plutôt que comme entraînement à partir de zéro, ce qui permet d'économiser des ressources informatiques.

En intégrant la formation sensible à la quantification dans le pipeline MLOps, les développeurs peuvent combler le fossé entre les modèles de recherche de haute précision et les applications d'IA de pointe hautement efficaces et prêtes à être mises en production.

Rejoindre la communauté Ultralytics

Rejoignez le futur de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

Rejoindre maintenant