Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Quantification de modèle

Optimisez les performances de l'IA grâce à la quantification des modèles. Réduisez la taille, augmentez la vitesse et améliorez l'efficacité énergétique pour les déploiements dans le monde réel.

La quantification de modèle est une technique transformatrice de l'apprentissage l'apprentissage automatique, conçue pour réduire les de calcul et de mémoire des réseaux neuronaux. réseaux neuronaux. En convertissant les paramètres du modèle, notamment les poids et les activations, de nombres à virgule flottante de haute précision (généralement 32 bits, connus sous le nom de FP32) vers des formats de moindre précision comme les entiers de 8 bits (INT8), les développeurs peuvent réduire de manière significative la taille du fichier du modèle. modèle. Ce processus est essentiel pour permettre déploiement efficace de modèles sur du matériel aux sur du matériel aux ressources limitées, garantissant ainsi que des capacités d'IA sophistiquées puissent fonctionner sans problème sur tout type de matériel, des smartphones aux capteurs industriels. capteurs industriels.

Comment fonctionne la quantification de modèle

Le mécanisme de base de la quantification consiste à faire correspondre une large gamme de valeurs continues à un ensemble plus restreint de valeurs discrètes. discrètes. Dans un modèle d'apprentissage profond typique, les paramètres sont stockés sous forme de nombres à virgule flottante de 32 bits afin de maintenir une précision élevée pendant la phase d'apprentissage. précision pendant la phase d'apprentissage. Cependant, lors de l'inférence - l'étape où le modèle fait des prédictions - ce niveau de précision est souvent inutile.

La quantification comprime ces valeurs, ce qui réduit la largeur de bande de la mémoire nécessaire pour récupérer les poids du modèle et accélère les calculs mathématiques. les poids du modèle et accélère les opérations mathématiques. Le matériel moderne, y compris les CPU et les accélérateurs accélérateurs spécialisés comme les GPU, disposent souvent de jeux d'instructions dédiés à l'arithmétique des nombres entiers. d'instructions dédiées à l'arithmétique des nombres entiers qui sont plus rapides et plus économes en énergie que leurs homologues à virgule flottante. à virgule flottante. Cette optimisation permet de minimiser latence de l'inférence, offrant ainsi une expérience dans les applications en temps réel.

Types de quantification

Il existe deux approches principales pour appliquer cette optimisation, chacune servant à des étapes différentes du cycle de développement. développement :

  • Quantification post-entraînement (PTQ) : Cette méthode est appliquée après que le modèle a été entièrement formé. Elle nécessite un ensemble de données d'étalonnage pour déterminer la plage dynamique des activations et des poids. Elle nécessite un ensemble de données d'étalonnage pour déterminer la gamme dynamique des activations et des poids. Des outils comme TensorFlow Lite offrent une robuste pour PTQ, ce qui en fait un choix populaire pour les optimisations rapides.
  • Formation consciente de la quantification (QAT) : Dans cette approche, le modèle simule les effets de la quantification pendant le processus de formation lui-même. de la quantification pendant le processus de formation lui-même. En introduisant de "faux" nœuds de quantification, le réseau apprend à s'adapter à une précision moindre. apprend à s'adapter à une précision moindre, ce qui se traduit souvent par une meilleure conservation de la précision par rapport au PTQ. Vous pouvez en savoir sur cette technique spécifique sur notre site Formation consciente de la quantification (QAT) (QAT).

Applications concrètes

La quantification est la pierre angulaire de l'Edge AI, car elle permet d'effectuer des tâches complexes localement sur les appareils sans dépendre de la connectivité en nuage. d'effectuer des tâches complexes localement sur des appareils sans dépendre de la connectivité au nuage.

  1. Vision par ordinateur mobile : Les applications pour smartphones qui offrent des fonctions telles que le floutage de l'arrière-plan en temps réel ou les filtres de visage reposent sur des modèles quantifiés. ou les filtres de visage en temps réel reposent sur des modèles quantifiés. Par exemple, l'exécution d'un modèle de modèle de détection d'objets sur un téléphone d'un téléphone nécessite une efficacité élevée pour éviter le déchargement de la batterie et la surchauffe.
  2. L'IdO industriel et la robotique : Dans le domaine de la robotique, les unités autonomes fonctionnent souvent sur batterie. robotique, les unités autonomes fonctionnent souvent sur batterie et utilisent des processeurs embarqués comme le NVIDIA Jetson. Les modèles quantifiés permettent à ces de traiter les données visuelles pour la navigation et l'évitement des obstacles avec un délai minimal, ce qui est essentiel pour la sécurité des véhicules autonomes. dans les véhicules autonomes.

Mise en œuvre de la quantification avec Ultralytics YOLO

Le cadre Ultralytics simplifie le processus d'exportation des modèles vers des formats adaptés à la quantification. L'exemple suivant suivant montre comment exporter un modèle YOLO11 vers TFLite avec la quantification INT8 activée. Ce processus gère automatiquement l'étalonnage à l'aide des données spécifiées.

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

Quantification vs. Autres techniques d'optimisation

Il est utile de distinguer la quantification des autres stratégies d'optimisation des modèles. stratégies d'optimisation des modèles, car elles sont souvent utilisées en tandem mais fonctionnent différemment :

  • Quantification ou élagage : Alors que la quantification réduit la précision des poids, l'élagage du modèle consiste à supprimer les poids inutiles, l'élagage du modèle consiste à supprimer les connexions connexions (poids) inutiles afin de créer un réseau clairsemé. L'élagage modifie la structure, tandis que la quantification modifie le type de données.
  • Quantification vs. distillation : La distillation des connaissances forme un modèle d'étudiant plus petit à imiter un modèle d'enseignant plus grand. modèle d'élève plus petit à imiter un modèle d'enseignant plus grand. La quantification peut être appliquée au modèle de l'élève par la suite pour réduire encore sa taille.
  • Quantification ou précision mixte : La précision mixte est principalement une technique de formation qui utilise un mélange de FP16 et FP32 pour accélérer la formation et réduire l'utilisation de la mémoire sur les GPU, alors que la quantification est une optimisation du temps d'inférence utilisant des entiers. la quantification est typiquement une optimisation du temps d'inférence utilisant des entiers.

Développements futurs

Les accélérateurs matériels devenant de plus en plus spécialisés, l'importance de la quantification ne cesse de croître. Les recherches futures Ultralytics comme le prochain projet YOLO26, vise à améliorer encore l'efficacité l'efficacité en concevant des architectures qui sont nativement robustes à la quantification agressive, garantissant ainsi que la vision par ordinateur à haute performance ne sera pas compromise. vision par ordinateur à haute performance haute performance reste accessible même sur les plus petits appareils.

Pour une plus grande compatibilité, les modèles quantifiés sont souvent déployés à l'aide de normes interopérables telles que ONNX ou des moteurs d'inférence optimisés optimisés tels que TensorRT et OpenVINO.

Rejoindre la communauté Ultralytics

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

Rejoindre maintenant