XNNPack, le backend CPU de TensorFlow Lite, a récemment ajouté le support de la quantification dynamique pour les opérateurs Fully Connected et Convolution 2D. Cette avancée permet de quadrupler les performances d'inférence par rapport à la précision simple de base, facilitant ainsi le déploiement de fonctionnalités d'IA sur des appareils plus anciens et moins performants. La quantification dynamique diffère de la quantification entière en ce sens que les paramètres de quantification sont calculés dynamiquement pendant l'inférence, ce qui maximise la précision du processus de quantification. Cela permet d'obtenir la plupart des gains de performance de la quantification complète, tout en maintenant une précision globale plus élevée. Les modèles quantifiés dynamiquement peuvent désormais bénéficier des implémentations hautement optimisées de XNNPack pour les opérateurs Fully Connected et Convolution2D, optimisés pour toutes les architectures supportées par XNNPack, y compris les derniers processeurs ArmV9. Pour utiliser la quantification dynamique, les utilisateurs doivent convertir leur modèle de TensorFlow avec le support de la quantification dynamique. À partir de TensorFlow 2.17, l'inférence quantifiée dynamiquement XNNPack sera activée par défaut dans les binaires précompilés. La quantification dynamique et la précision demi-float (fp16) peuvent être combinées dans XNNPack pour obtenir les meilleures performances d'inférence CPU sur les appareils prenant en charge le fp16. Les benchmarks sur quatre modèles publics couvrant des tâches courantes de vision par ordinateur montrent des améliorations significatives des performances.
Inférence quantifiée dynamiquement plus rapide avec XNNPack
Points clés
- XNNPack améliore les performances d'inférence avec la quantification dynamique.
- La quantification dynamique permet un déploiement plus large des fonctionnalités d'IA.
- Les modèles quantifiés dynamiquement bénéficient des implémentations optimisées de XNNPack.
- La quantification dynamique et la précision demi-float peuvent être combinées pour de meilleures performances.
- Les benchmarks montrent des améliorations significatives des performances sur divers modèles.
Pourquoi c'est important
Cette avancée permet d'améliorer les performances d'inférence sur les appareils mobiles, rendant les fonctionnalités d'IA plus accessibles sur une gamme plus large de dispositifs, y compris les appareils plus anciens et moins performants. Cela ouvre la voie à des applications d'IA plus efficaces et plus larges.
Article original : https://blog.tensorflow.org/2024/04/faster-dynamically-quantized-inference-with-xnnpack.html
Synthèse éditoriale issue d’une veille et d’outils d’IA. Des erreurs ou approximations peuvent subsister. Référez‑vous à la source originale et à notre disclaimer.