Intelligence artificielle

YOLO-World : DĂ©tection d’Objets en Temps RĂ©el avec Vocabulaire Ouvert

mm

La détection d’objets a toujours été un défi fondamental dans l’industrie de la vision par ordinateur, avec des applications dans la robotique, la compréhension d’images, les véhicules autonomes et la reconnaissance d’images. Ces dernières années, les travaux révolutionnaires dans le domaine de l’IA, en particulier grâce aux réseaux de neurones profonds, ont considérablement amélioré la détection d’objets. Cependant, ces modèles ont un vocabulaire fixe, limité à la détection d’objets dans les 80 catégories du jeu de données COCO. Cette limitation découle du processus d’entraînement, où les détecteurs d’objets sont formés pour reconnaître uniquement des catégories spécifiques, limitant ainsi leur applicabilité.

Pour surmonter cela, nous présentons YOLO-World, une approche innovante visant à améliorer le cadre YOLO (You Only Look Once) avec des capacités de détection de vocabulaire ouvert. Cela est réalisé en pré-entraînant le cadre sur des jeux de données à grande échelle et en mettant en œuvre une approche de modélisation vision-langage. Plus précisément, YOLO-World utilise un réseau de neurones Re-parameterizable Vision-Language Path Aggregation Network (RepVL-PAN) et une perte contrastive région-texte pour favoriser l’interaction entre les informations linguistiques et visuelles. Grâce à RepVL-PAN et à la perte contrastive région-texte, YOLO-World peut détecter avec précision une large gamme d’objets dans un cadre de détection à zéro coup, montrant des performances remarquables dans les tâches de segmentation et de détection d’objets à vocabulaire ouvert.

Cet article vise à fournir une compréhension approfondie des fondements techniques de YOLO-World, de son architecture de modèle, de son processus d’entraînement et de ses scénarios d’application. Plongeons dans le détail.

YOLO-World : Détection d’Objets en Temps Réel avec Vocabulaire Ouvert

YOLO ou You Only Look Once est l’une des méthodes les plus populaires pour la détection d’objets moderne dans l’industrie de la vision par ordinateur. Renommé pour sa vitesse et son efficacité incroyables, l’avènement du mécanisme YOLO a révolutionné la façon dont les machines interprètent et détectent des objets spécifiques dans des images et des vidéos en temps réel. Les cadres de détection d’objets traditionnels mettent en œuvre une approche de détection d’objets en deux étapes : dans la première étape, le cadre propose des régions qui pourraient contenir l’objet, et le cadre classe l’objet à l’étape suivante. Le cadre YOLO, en revanche, intègre ces deux étapes en un seul modèle de réseau de neurones, une approche qui permet au cadre de regarder l’image une seule fois pour prédire l’objet et sa localisation dans l’image, et donc, le nom YOLO ou You Only Look Once.

De plus, le cadre YOLO traite la détection d’objets comme un problème de régression, et prédit les probabilités de classe et les boîtes délimitantes directement à partir de l’image complète en un seul regard. La mise en œuvre de cette méthode non seulement augmente la vitesse du processus de détection, mais améliore également la capacité du modèle à généraliser à partir de données complexes et diverses, le rendant ainsi un choix approprié pour les applications fonctionnant en temps réel comme la conduite autonome, la détection de vitesse ou la reconnaissance de plaques d’immatriculation. De plus, les progrès significatifs des réseaux de neurones profonds au cours des dernières années ont également contribué de manière significative au développement des cadres de détection d’objets, mais le succès de la détection d’objets est toujours limité puisqu’ils ne peuvent détecter des objets qu’avec un vocabulaire limité. Il s’agit principalement du fait que, une fois que les catégories d’objets sont définies et étiquetées dans le jeu de données, les détecteurs d’objets formés dans le cadre ne peuvent reconnaître que ces catégories spécifiques, limitant ainsi leur applicabilité et leur capacité à déployer des modèles de détection d’objets en temps réel et dans des scénarios ouverts.

En poursuivant, les modèles de vision-langage récemment développés utilisent des connaissances de vocabulaire distillées à partir de codeurs de langage pour aborder la détection à vocabulaire ouvert. Bien que ces cadres performent mieux que les modèles de détection d’objets traditionnels sur la détection à vocabulaire ouvert, ils ont toujours une applicabilité limitée en raison de la rareté des données d’entraînement avec une diversité de vocabulaire limitée. De plus, les cadres sélectionnés forment des détecteurs d’objets à vocabulaire ouvert à grande échelle et catégorisent les détecteurs d’objets d’entraînement comme un pré-entraînement de vision-langage au niveau des régions. Cependant, l’approche rencontre toujours des difficultés pour détecter des objets en temps réel en raison de deux raisons principales : processus de déploiement complexe pour les appareils de bord et exigences computationnelles lourdes. Du point de vue positif, ces cadres ont démontré des résultats positifs à partir du pré-entraînement de grands détecteurs pour les utiliser avec des capacités de reconnaissance ouvertes.

Le cadre YOLO-World vise à atteindre une détection d’objets à vocabulaire ouvert hautement efficace et à explorer la possibilité d’approches de pré-entraînement à grande échelle pour améliorer l’efficacité des détecteurs YOLO traditionnels pour la détection d’objets à vocabulaire ouvert. Contrairement aux travaux précédents sur la détection d’objets, le cadre YOLO-World affiche une efficacité remarquable avec des vitesses d’inférence élevées et peut être déployé sur des applications en aval avec facilité. Le modèle YOLO-World suit l’architecture YOLO traditionnelle et encode les textes d’entrée en exploitant les capacités d’un codeur de texte CLIP pré-entraîné. De plus, le cadre YOLO-World inclut un composant Re-parameterizable Vision-Language Path Aggregation Network (RepVL-PAN) dans son architecture pour relier les fonctionnalités d’image et de texte pour des représentations visuo-sémantiques améliorées. Lors de la phase d’inférence, le cadre supprime le codeur de texte et re-paramètre les embeddings de texte dans les poids de RepVL-PAN, aboutissant à un déploiement efficace. Le cadre inclut également une perte contrastive région-texte dans son cadre pour étudier les méthodes de pré-entraînement à vocabulaire ouvert pour les modèles YOLO traditionnels. La méthode d’apprentissage contrastive région-texte unifie les données image-texte, les données de mise en correspondance et les données de détection en paires région-texte. Sur cette base, le cadre YOLO-World pré-entraîné sur des paires région-texte démontre des capacités remarquables pour la détection à grande vocabulaire. De plus, le cadre YOLO-World explore également un paradigme de détection après prompt pour améliorer l’efficacité de la détection d’objets à vocabulaire ouvert en temps réel et dans des scénarios du monde réel.

Comme le montre l’image suivante, les détecteurs d’objets traditionnels se concentrent sur un ensemble fermé de détection de vocabulaire fixe avec des catégories prédéfinies, tandis que les détecteurs à vocabulaire ouvert détectent des objets en codant des invites utilisateur avec des codeurs de texte pour un vocabulaire ouvert. En comparaison, l’approche de détection après prompt de YOLO-World construit d’abord un vocabulaire hors ligne (vocabulaire variable pour des besoins variables) en codant les invites utilisateur, permettant ainsi aux détecteurs d’interpréter le vocabulaire hors ligne en temps réel sans avoir à recoder les invites.

YOLO-World : Méthode et Architecture

Paires Région-Texte

Traditionnellement, les cadres de détection d’objets, y compris la famille de détecteurs d’objets YOLO, sont formés en utilisant des annotations d’instances qui contiennent des étiquettes de catégorie et des boîtes délimitantes. En revanche, le cadre YOLO-World reformule les annotations d’instances en paires région-texte où le texte peut être la description de l’objet, des phrases nominales ou le nom de la catégorie. Il est important de noter que le cadre YOLO-World adopte à la fois les textes et les images comme entrée et sortie des boîtes prédites avec leurs embeddings d’objets correspondants.

Architecture de Modèle

Au cœur du modèle YOLO-World se trouve un codeur de texte, un détecteur YOLO et le composant Re-parameterizable Vision-Language Path Aggregation Network (RepVL-PAN), comme illustré dans l’image suivante.

Pour un texte d’entrée, le composant de codeur de texte encode le texte en embeddings de texte, suivis de l’extraction de fonctionnalités multi-échelles à partir de l’image d’entrée par les détecteurs d’images dans le composant détecteur YOLO. Le composant Re-parameterizable Vision-Language Path Aggregation Network (RepVL-PAN) exploite ensuite la fusion cross-modale entre les embeddings de texte et les embeddings de fonctionnalités pour améliorer les représentations de texte et d’image.

Détecteur YOLO

Le modèle YOLO-World est construit sur le cadre YOLOv8 existant, qui contient un composant de réseau Darknet comme codeur d’image, une tête pour les embeddings d’objets et la régression de boîte délimitante, et un réseau de chemin d’agression (PAN) pour les pyramides de fonctionnalités multi-échelles.

Codeur de Texte

Pour un texte donné, le modèle YOLO-World extrait les embeddings de texte correspondants en adoptant un codeur de texte Transformer CLIP pré-entraîné avec un certain nombre de noms et de dimensions d’embedding. La principale raison pour laquelle le cadre YOLO-World adopte un codeur de texte CLIP est qu’il offre de meilleures performances visuo-sémantiques pour relier les textes aux objets visuels, surpassant considérablement les codeurs de langage traditionnels qui ne traitent que le texte. Cependant, si le texte d’entrée est soit une légende, soit une expression de référence, le modèle YOLO-World opte pour un algorithme de n-grammes plus simple pour extraire les phrases. Ces phrases sont ensuite alimentées dans le codeur de texte.

Tête Contrastive de Texte

La tête découplée est un composant utilisé par les modèles de détection d’objets plus anciens, et le cadre YOLO-World adopte une tête découplée avec des convolutions doubles 3×3 pour la régression des embeddings d’objets et des boîtes délimitantes pour un nombre fixe d’objets. Le cadre YOLO-World utilise une tête contrastive de texte pour obtenir la similarité objet-texte en utilisant l’approche de normalisation L2 et les embeddings de texte. De plus, le modèle YOLO-World emploie également l’approche de transformation affine avec un facteur de décalage et un facteur d’échelle apprenable, avec la normalisation L2 et la transformation affine améliorant la stabilité du modèle pendant l’entraînement région-texte.

Entraînement de Vocabulaire en Ligne

Pendant la phase d’entraînement, le modèle YOLO-World construit un vocabulaire en ligne pour chaque échantillon de mosaïque composé de 4 images chacune. Le modèle échantillonne tous les noms positifs inclus dans les images de mosaïque et échantillonne certains noms négatifs de manière aléatoire à partir du jeu de données correspondant. Le vocabulaire pour chaque échantillon est composé d’un maximum de n noms, avec la valeur par défaut étant de 80.

Inférence de Vocabulaire Hors Ligne

Pendant la phase d’inférence, le modèle YOLO-World présente une stratégie de détection après prompt avec un vocabulaire hors ligne pour améliorer encore l’efficacité du modèle. L’utilisateur définit d’abord une série d’invites personnalisées qui peuvent inclure des catégories ou même des légendes. Le modèle YOLO-World obtient ensuite les embeddings de vocabulaire hors ligne en utilisant le codeur de texte pour encoder ces invites. En conséquence, le vocabulaire hors ligne pour l’inférence aide le modèle à éviter les calculs pour chaque entrée et permet également au modèle d’ajuster le vocabulaire de manière flexible en fonction des besoins.

Réseau de Neurones Re-parameterizable Vision-Language Path Aggregation Network (RevVL-PAN)

La figure suivante illustre la structure du réseau de neurones Re-parameterizable Vision-Language Path Aggregation Network proposé, qui suit les chemins de haut en bas et de bas en haut pour établir la pyramide de fonctionnalités avec des images de fonctionnalités multi-échelles.

Pour améliorer l’interaction entre les fonctionnalités de texte et d’image, le modèle YOLO-World propose une attention de mise en page d’image et une couche de CSPL (Cross-Stage Partial Layers) guidée par le texte, avec pour objectif ultime d’améliorer les représentations visuo-sémantiques pour les capacités de vocabulaire ouvert. Pendant la phase d’inférence, le modèle YOLO-World re-paramètre les embeddings de vocabulaire hors ligne dans les poids des couches linéaires ou convolutionnelles pour un déploiement efficace.

Comme on peut le voir dans la figure ci-dessus, le modèle YOLO-World utilise la couche CSPL après la fusion de haut en bas ou de bas en haut, et intègre la guidance de texte dans les fonctionnalités d’image multi-échelles, formant ainsi la couche CSPL guidée par le texte, étendant ainsi la couche CSPL. Pour une fonctionnalité d’image donnée et son embedding de texte correspondant, le modèle adopte l’attention max-sigmoid après le dernier bloc de couche pour agréger les fonctionnalités de texte dans les fonctionnalités d’image. La fonctionnalité d’image mise à jour est ensuite concaténée avec les fonctionnalités cross-stage, et est présentée comme la sortie.

En poursuivant, le modèle YOLO-World agrège les fonctionnalités d’image pour mettre à jour l’embedding de texte en introduisant la couche d’attention de mise en page d’image pour améliorer les embeddings de texte avec des informations d’image. Au lieu d’utiliser l’attention cross directement sur les fonctionnalités d’image, le modèle utilise le pooling max sur les fonctionnalités multi-échelles pour obtenir 3×3 régions, aboutissant à 27 jetons de patch, avec le modèle mettant à jour les embeddings de texte à l’étape suivante.

Schémas de Pré-entraînement

Le modèle YOLO-World suit deux schémas de pré-entraînement principaux : l’apprentissage à partir de la perte contrastive région-texte et l’étiquetage pseudo avec des données image-texte. Pour le schéma de pré-entraînement principal, le modèle produit des prédictions d’objets avec des annotations pour un texte et des échantillons de mosaïque donnés. Le cadre YOLO-World correspond aux prédictions avec les annotations de vérité terrain en suivant et en exploitant l’attribution d’étiquette de tâche, et attribue des prédictions positives individuelles avec un index de texte qui sert d’étiquette de classification. D’un autre côté, le schéma de pré-entraînement d’étiquetage pseudo avec des données image-texte propose d’utiliser une approche d’étiquetage automatisée au lieu d’utiliser des paires image-texte pour générer des paires région-texte. L’approche d’étiquetage proposée consiste en trois étapes : extraction de phrases nominales, étiquetage pseudo et filtrage. La première étape utilise l’algorithme de n-grammes pour extraire des phrases nominales du texte d’entrée, la deuxième étape adopte un détecteur de vocabulaire ouvert pré-entraîné pour générer des boîtes pseudo pour la phrase nominale donnée pour chaque image, tandis que la troisième et dernière étape utilise un cadre CLIP pré-entraîné pour évaluer la pertinence des paires région-texte et texte-image, suivie de quoi le modèle filtre les images et les annotations de faible pertinence.

YOLO-World : Résultats

Une fois le modèle YOLO-World pré-entraîné, il est évalué directement sur le jeu de données LVIS dans un cadre de détection à zéro coup, le jeu de données LVIS comprenant plus de 1200 catégories, nettement plus que les jeux de données de pré-entraînement utilisés par les cadres existants pour tester leurs performances sur la détection à grande vocabulaire. La figure suivante démontre les performances du cadre YOLO-World avec certains des cadres de détection d’objets les plus récents sur le jeu de données LVIS dans un cadre de détection à zéro coup.

Comme on peut l’observer, le cadre YOLO-World surpasse la majorité des cadres existants en termes de vitesses d’inférence et de performances à zéro coup, même avec des cadres comme Grounding DINO, GLIP et GLIPv2 qui intègrent plus de données. Dans l’ensemble, les résultats démontrent que de petits modèles de détection d’objets comme YOLO-World-S avec seulement 13 millions de paramètres peuvent être utilisés pour le pré-entraînement sur des tâches de vision-langage avec des capacités de vocabulaire ouvert remarquables.

Pensées Finales

Dans cet article, nous avons discuté de YOLO-World, une approche innovante qui vise à améliorer les capacités du cadre YOLO avec des capacités de détection de vocabulaire ouvert en pré-entraînant le cadre sur des jeux de données à grande échelle et en mettant en œuvre l’approche de modélisation vision-langage. Plus précisément, le cadre YOLO-World propose de mettre en œuvre un réseau de neurones Re-parameterizable Vision Language Path Aggregation Network (RepVL-PAN) ainsi qu’une perte contrastive région-texte pour faciliter l’interaction entre les informations linguistiques et visuelles. En mettant en œuvre RepVL-PAN et la perte contrastive région-texte, le cadre YOLO-World est capable de détecter avec précision une large gamme d’objets dans un cadre de détection à zéro coup, montrant des performances remarquables dans les tâches de segmentation et de détection d’objets à vocabulaire ouvert.

Un ingĂ©nieur de profession, un Ă©crivain de cƓur. Kunal est un rĂ©dacteur technique avec une profonde affection et une comprĂ©hension de l'IA et du ML, dĂ©diĂ© Ă  simplifier les concepts complexes dans ces domaines grĂące Ă  sa documentation engageante et informative.