En cliquant sur « Accepter tous les cookies », vous acceptez le stockage de cookies sur votre appareil pour améliorer la navigation sur le site, analyser son utilisation et contribuer à nos efforts de marketing. Plus d’infos
Paramètres des cookies
En cliquant sur « Accepter tous les cookies », vous acceptez le stockage de cookies sur votre appareil pour améliorer la navigation sur le site, analyser son utilisation et contribuer à nos efforts de marketing. Plus d’infos
Rejoignez-nous pour revenir sur une conférence de YOLO Vision 2024 qui se concentre sur la façon dont les outils open-source de Hugging Facefont progresser le développement de l'IA.
Le choix des bons algorithmes n'est qu'une partie de la création de solutions de vision par ordinateur percutantes. Les ingénieurs en IA travaillent souvent avec de grands ensembles de données, affinent les modèles pour des tâches spécifiques et optimisent les systèmes d'IA pour des performances réelles. À mesure que les applications d'IA sont adoptées plus rapidement, le besoin d'outils qui simplifient ces processus augmente également.
Lors de YOLO Vision 2024 (YV24), l'événement hybride annuel organisé par Ultralytics, des experts en IA et des passionnés de technologie se sont réunis pour explorer les dernières innovations en matière de vision par ordinateur. L'événement a suscité des discussions sur divers sujets, tels que les moyens d'accélérer le développement d'applications d'IA.
L'un des points forts de l'événement a été la présentation de Hugging Face, une plateforme d'IA open-source qui rationalise l'entraînement, l'optimisation et le déploiement des modèles. Pavel Lakubovskii, ingénieur en apprentissage automatique chez Hugging Face, a expliqué comment ses outils améliorent les flux de travail pour les tâches de vision artificielle telles que la détection d'objets dans les images, la catégorisation des images en différents groupes et l'élaboration de prédictions sans formation préalable sur des exemples spécifiques (apprentissage à partir de zéro).
Hugging Face Hub héberge et donne accès à divers modèles d' IA et de vision par ordinateur comme Ultralytics YOLO11. Dans cet article, nous récapitulerons les points clés de l'intervention de Pavel et verrons comment les développeurs peuvent utiliser les outils open-source de Hugging Facepour construire et déployer rapidement des modèles d'IA.
Fig 1. Pavel sur scène à YV24.
Le Hugging Face Hub permet d'accélérer le développement de l'IA
Pavel a commencé son exposé en présentant Hugging Face , une plateforme d'IA à code source ouvert qui propose des modèles pré-entraînés pour une variété d'applications. Ces modèles sont conçus pour différentes branches de l'IA, notamment le traitement du langage naturel (NLP), la vision par ordinateur et l'IA multimodale, ce qui permet aux systèmes de traiter différents types de données, comme le texte, les images et l'audio.
Pavel a indiqué que Hugging Hugging Face Hub hébergeait désormais plus d'un million de modèles, et que les développeurs pouvaient facilement trouver des modèles adaptés à leurs projets spécifiques. Hugging Face vise à simplifier le développement de l'IA en offrant des outils pour la formation, l'ajustement et le déploiement des modèles. Lorsque les développeurs peuvent expérimenter différents modèles, cela simplifie le processus d'intégration de l'IA dans les applications du monde réel.
Si Hugging Face était initialement connu pour le NLP, il s'est depuis étendu à la vision par ordinateur et à l'IA multimodale, permettant aux développeurs de s'attaquer à un plus large éventail de tâches d'IA. Il dispose également d'une communauté solide où les développeurs peuvent collaborer, partager des idées et obtenir de l'aide par le biais de forums, de Discord et de GitHub.
Exploration de modèles de Hugging Face pour des applications de vision par ordinateur
Plus en détail, Pavel a expliqué comment les outils de Hugging Facefacilitent la création d'applications de vision par ordinateur. Les développeurs peuvent les utiliser pour des tâches telles que la classification d'images, la détection d'objets et les applications de langage de vision.
Il a également souligné que bon nombre de ces tâches de vision par ordinateur peuvent être traitées à l'aide de modèles pré-entraînés disponibles sur le Hugging Face Hub, ce qui permet de gagner du temps en réduisant la nécessité d'un entraînement à partir de zéro. En fait, Hugging Face propose plus de 13 000 modèles pré-entraînés pour les tâches de classification d'images, notamment pour la classification des aliments, des animaux et la détection des émotions.
Soulignant l'accessibilité de ces modèles, il a déclaré : « Vous n'avez probablement même pas besoin d'entraîner un modèle pour votre projet : vous pourriez en trouver un sur le Hub qui a déjà été entraîné par un membre de la communauté. »
Modèles de Hugging Face pour la détection d'objets
En donnant un autre exemple, Pavel a expliqué comment Hugging Face peut aider à la détection d'objets, une fonction clé de la vision par ordinateur qui est utilisée pour identifier et localiser des objets dans des images. Même avec des données étiquetées limitées, les modèles pré-entraînés disponibles sur le Hugging Face Hub peuvent rendre la détection d'objets plus efficace.
Il a également donné un aperçu rapide de plusieurs modèles construits pour cette tâche que vous pouvez trouver sur Hugging Face
Modèles de détection d'objets en temps réel: Pour les environnements dynamiques où la vitesse est cruciale, des modèles comme Detection Transformer (DETR) offrent des capacités de détection d'objets en temps réel. DETR est entraîné sur l'ensemble de données COCO et est conçu pour traiter efficacement les caractéristiques multi-échelles, ce qui le rend adapté aux applications sensibles au temps.
Modèles vision-langage : Ces modèles combinent le traitement d’images et de texte, ce qui permet aux systèmes d’IA de faire correspondre des images avec des descriptions ou de reconnaître des objets au-delà de leurs données d’entraînement. Les exemples incluent CLIP et SigLIP, qui améliorent la recherche d’images en reliant le texte aux visuels et permettent aux solutions d’IA d’identifier de nouveaux objets en comprenant leur contexte.
Modèles de détection d'objets à partir de zéro : Ils peuvent identifier des objets qu'ils n'ont jamais vus auparavant en comprenant la relation entre les images et le texte. Les exemples incluent OwlVit, GroundingDINO et OmDet, qui utilisent l'apprentissage à partir de zéro pour detect nouveaux objets sans avoir besoin de données d'entraînement étiquetées.
Comment utiliser les modèles de Hugging Face
Pavel a ensuite mis l'accent sur l'utilisation des modèles de Hugging Face , en expliquant les trois façons dont les développeurs peuvent les exploiter : explorer les modèles, les tester rapidement et les personnaliser davantage.
Il a montré comment les développeurs peuvent parcourir les modèles directement sur le Hugging Face Hub sans écrire de code, ce qui facilite le test instantané des modèles par le biais d'une interface interactive. "Vous pouvez l'essayer sans même écrire une ligne de code ou télécharger le modèle sur votre ordinateur", a ajouté Pavel. Certains modèles étant volumineux, leur exécution sur le Hub permet d'éviter les limitations de stockage et de traitement.
Fig. 2. Comment utiliser les modèles de Hugging Face .
De plus, l'Inference API Hugging Face Inference API permet aux développeurs d'exécuter des modèles d'IA avec de simples appels d'API. Elle est idéale pour les tests rapides, les projets de validation de concept et le prototypage rapide, sans nécessiter de configuration complexe.
Pour les cas d'utilisation plus avancés, les développeurs peuvent utiliser le cadre Hugging Face Transformers, un outil open-source qui fournit des modèles pré-entraînés pour le texte, la vision et les tâches audio tout en prenant en charge PyTorch et TensorFlow. Pavel a expliqué qu'avec seulement deux lignes de code, les développeurs peuvent récupérer un modèle à partir du Hugging Face Hub et le lier à un outil de prétraitement, tel qu'un processeur d'image, afin d'analyser les données d'image pour les applications Vision AI.
Optimiser les flux de travail de l'IA avec Hugging Face
Ensuite, Pavel a expliqué comment Hugging Face peut rationaliser les flux de travail de l'IA. Il a notamment abordé l'optimisation du mécanisme d'attention dans Transformers, une caractéristique essentielle des modèles d'apprentissage profond qui les aide à se concentrer sur les parties les plus pertinentes des données d'entrée. Cela permet d'améliorer la précision des tâches impliquant le traitement du langage et la vision par ordinateur. Cependant, il peut être gourmand en ressources.
L'optimisation du mécanisme d'attention peut considérablement réduire l'utilisation de la mémoire tout en améliorant la vitesse. Pavel a souligné : "Par exemple, en passant à une implémentation d'attention plus efficace, vous pourriez constater une performance jusqu'à 1,8 fois plus rapide."
Hugging Face offre un support intégré pour des implémentations d'attention plus efficaces dans le cadre de Transformers. Les développeurs peuvent activer ces optimisations en spécifiant simplement une implémentation alternative de l'attention lors du chargement d'un modèle.
Optimum et Torch Compile
Il a également parlé de la quantification, une technique qui réduit la taille des modèles d'IA en réduisant la précision des nombres qu'ils utilisent sans trop affecter les performances. Cela aide les modèles à utiliser moins de mémoire et à s'exécuter plus rapidement, ce qui les rend plus adaptés aux appareils dotés d'une puissance de traitement limitée, comme les smartphones et les systèmes embarqués.
Pour améliorer encore l'efficacité, Pavel a présenté la bibliothèque Hugging Face Optimum, un ensemble d'outils conçus pour optimiser et déployer des modèles. Avec seulement quelques lignes de code, les développeurs peuvent appliquer des techniques de quantification et convertir les modèles dans des formats efficaces tels que ONNX (Open Neural Network Exchange), ce qui leur permet de fonctionner sans problème sur différents types de matériel, y compris les serveurs en nuage et les périphériques.
Fig 3. Pavel a parlé de la bibliothèque Optimum et de ses fonctionnalités.
Enfin, Pavel a mentionné les avantages de Torch Compile, une fonctionnalité de PyTorch qui optimise la façon dont les modèles d'IA traitent les données, ce qui les rend plus rapides et plus efficaces. Hugging Face intègre Torch Compile dans ses bibliothèques Transformers et Optimum, ce qui permet aux développeurs de profiter de ces améliorations de performance avec des changements de code minimes.
En optimisant la structure de calcul du modèle, Torch Compile peut accélérer les temps d'inférence et augmenter les taux d'images de 29 à 150 images par seconde sans compromettre la précision ou la qualité.
Déployer des modèles avec les outils Hugging Face
Pavel a ensuite brièvement abordé la manière dont les développeurs peuvent étendre et déployer les modèles Vision AI à l'aide des outils Hugging Face après avoir sélectionné le bon modèle et choisi la meilleure approche pour le développement.
Par exemple, les développeurs peuvent déployer des applications d'IA interactives en utilisant Gradio et Streamlit. Gradio permet aux développeurs de créer des interfaces web pour les modèles d'apprentissage automatique, tandis que Streamlit aide à créer des applications de données interactives avec de simples scripts Python .
Pavel a également souligné que "vous n'avez pas besoin de commencer à tout écrire à partir de zéro", en faisant référence aux guides, aux cahiers de formation et aux exemples de scripts fournis par Hugging Face . Ces ressources aident les développeurs à démarrer rapidement sans avoir à tout construire à partir de zéro.
Fig. 4. Pavel discute des capacités de Hugging Face YV24.
Avantages de l'Hugging Face
Pour conclure, Pavel a résumé les avantages de l'utilisation de Hugging Face Hub. Il a insisté sur la simplification de la gestion des modèles et de la collaboration. Il a également attiré l'attention sur la disponibilité de guides, de carnets de notes et de tutoriels, qui peuvent aider les débutants et les experts à comprendre et à mettre en œuvre des modèles d'IA.
"Il existe déjà de nombreux espaces intéressants sur le Hub. Vous pouvez en trouver des similaires, cloner le code partagé, modifier quelques lignes, remplacer le modèle par le vôtre et le repousser", a-t-il expliqué, encourageant les développeurs à profiter de la flexibilité de la plateforme.
Principaux points à retenir
Lors de son intervention à l'YV24, Pavel a expliqué comment Hugging Face fournit des outils qui soutiennent la formation, l'optimisation et le déploiement de modèles d'IA. Par exemple, des innovations telles que Transformers, Optimum et Torch Compile peuvent aider les développeurs à améliorer les performances des modèles.
Les modèles d'IA devenant plus efficaces, les progrès en matière de quantification et de déploiement en périphérie facilitent leur exécution sur des appareils aux ressources limitées. Ces améliorations, associées à des outils tels que Hugging Face et à des modèles de vision artificielle avancés comme Ultralytics YOLO11, sont essentielles pour créer des applications Vision AI évolutives et performantes.