YOLO-MS : Repenser l'apprentissage de la représentation multi-échelles pour la détection d'objets en temps réel (notes d'étude sur papier)

Performances au-delà de YOLOv8 et RTMDet, plug and play

Adresse papier : https://arxiv.org/pdf/2308.05480.pdf

Adresse de code : L'adresse github est donnée dans l'article, mais elle ne peut pas être ouverte temporairement (2023.08.15)

Résumé

Les auteurs visent à fournir un détecteur d'objets efficace et performant appelé YOLO-MS à la communauté de détection d'objets. La conception de base est basée sur une série d'études sur la façon dont différentes convolutions de taille de noyau affectent les performances de détection de cible à différentes échelles. Le résultat de la recherche est une nouvelle stratégie qui peut considérablement améliorer la représentation des caractéristiques multi-échelles pour les détecteurs d'objets en temps réel. Afin de vérifier l'efficacité de la stratégie de l'auteur, celui-ci a construit une architecture réseau appelée YOLO-MS. Les auteurs forment YOLO-MS à partir de zéro sur l'ensemble de données MS COCO sans s'appuyer sur d'autres ensembles de données à grande échelle, tels que ImageNet, ou des poids pré-formés. Notre YOLO-MS surpasse les récents détecteurs d'objets en temps réel de pointe, y compris YOLO-v7 et RTMDet, tout en utilisant le même nombre de paramètres et de FLOP. En prenant la version XS de YOLO-MS comme exemple, avec seulement 4,5 millions de paramètres apprenables et 870 millions de FLOP, elle peut atteindre un score AP de 43 %+ sur MS COCO, soit environ 2 %+ de plus que RTMDet du même modèle. taille. De plus, le travail de l'auteur peut également être utilisé comme module plug-and-play pour d'autres modèles YOLO. En général, la méthode de l'auteur peut augmenter considérablement l'AP de YOLOv8 de 37 % + à 40 % +, et même utiliser moins de paramètres et de FLOP.

1. Introduction

La détection d'objets en temps réel, illustrée par la série YOLO, a trouvé d'importantes applications dans le domaine industriel, en particulier dans les dispositifs de pointe tels que les drones et les robots. Contrairement aux détecteurs d'objets précédents, les détecteurs d'objets en temps réel visent à trouver un équilibre optimal entre vitesse et précision. Pour atteindre cet objectif, un grand nombre de travaux ont été proposés : du DarkNet de première génération au CSPNet, en passant par le récent ELAN étendu, l'architecture des détecteurs d'objets en temps réel a subi des changements spectaculaires avec l'augmentation rapide des performances.

Malgré des performances impressionnantes, la reconnaissance d'objets à différentes échelles reste un défi fondamental pour les détecteurs d'objets en temps réel. Cela motive les auteurs à concevoir une architecture d'encodeur puissante pour l'apprentissage de représentations d'entités multi-échelles expressives. Plus précisément, les auteurs envisagent d'encoder des fonctionnalités multi-échelles pour la détection d'objets en temps réel sous deux nouvelles perspectives :

  • D'un point de vue local, les auteurs conçoivent un MS-Block avec une stratégie de fusion de caractéristiques hiérarchiques simple mais efficace. Inspiré par Res2Net, l'auteur a introduit plusieurs branches dans MS-Block pour l'extraction de caractéristiques, mais la différence est que l'auteur a utilisé un bloc de goulot d'étranglement inversé avec une convolution profonde pour obtenir une utilisation efficace d'un grand noyau.

  • D'un point de vue global, l'auteur propose d'augmenter progressivement la taille du noyau de la convolution au fur et à mesure que le réseau s'approfondit. L'auteur utilise de petites convolutions du noyau dans la couche peu profonde pour traiter plus efficacement les caractéristiques à haute résolution. D'autre part, dans la couche profonde, l'auteur adopte une grande convolution du noyau pour capturer un large éventail d'informations.

Sur la base des principes de conception ci-dessus, les auteurs présentent notre détecteur d'objets en temps réel, appelé YOLO-MS. Pour évaluer les performances de notre YOLO-MS, nous menons des expériences complètes sur l'ensemble de données MS COCO. Des comparaisons quantitatives avec d'autres méthodes de pointe sont également fournies pour démontrer la performance robuste de notre méthode. Comme le montre la figure 1, YOLO-MS surpasse les autres détecteurs d'objets en temps réel récents en termes d'équilibre des performances de calcul.

Plus précisément, YOLO-MS-XS atteint un score AP de 43 % + sur MS COCO avec seulement 4,5 millions de paramètres apprenables et 870 millions de FLOP. YOLO-MS-S et YOLO-MS ont obtenu des AP de 46 % + et 51 % + respectivement, et les paramètres apprenables étaient respectivement de 8,1 millions et 22,2 millions. De plus, le travail de l'auteur peut également être utilisé comme module plug-and-play pour d'autres modèles YOLO. En général, la méthode de l'auteur peut augmenter considérablement l'AP de YOLOv8 de 37 % + à 40 % +, et même utiliser moins de paramètres et de FLOP.

2 travaux connexes

2.1 Détection d'objets en temps réel

2.2 Représentation multi-échelle des caractéristiques

Cette partie est sautée, ceux qui sont intéressés peuvent lire le texte original par eux-mêmes

3 Méthode

3.1 Conception de blocs de construction multi-échelles

CSP Block est un réseau basé sur des chemins de gradient au niveau de l'étape, qui équilibre la combinaison de gradient et le coût de calcul. C'est le bloc de construction de base largement utilisé dans la famille YOLO. Plusieurs variantes ont été proposées, dont la version originale en YOLOv4 et YOLOv5, CSPVoVNet en Scaled YOLOv4, ELAN en YOLOv7, et la grande unité Kernel proposée en RTMDet. Les auteurs montrent la structure du bloc CSP d'origine et de l'ELAN sur la figure 2 (a) et la figure 2 (b), respectivement.

Un aspect clé négligé dans les détecteurs en temps réel susmentionnés est de savoir comment coder les caractéristiques multi-échelles dans les blocs de construction de base. L'un des principes de conception puissants est Res2Net, qui agrège des fonctionnalités de différentes couches pour améliorer les représentations multi-échelles. Cependant, ce principe n'explore pas complètement le rôle des grandes convolutions du noyau, qui se sont avérées efficaces dans les modèles basés sur CNN pour les tâches de reconnaissance visuelle. Le principal obstacle à l'incorporation de grandes convolutions du noyau dans Res2Net est la surcharge de calcul qu'elles introduisent, puisque les blocs de construction utilisent des convolutions standard. Dans la méthode de l'auteur, l'auteur propose de remplacer la convolution standard 3 × 3 par le bloc de goulot d'étranglement inversé pour profiter des avantages de la grande convolution du noyau.

Sur la base de l'analyse précédente, les auteurs proposent un nouveau bloc avec une stratégie de fusion de caractéristiques hiérarchiques, appelée MS-Block , pour améliorer la capacité des détecteurs d'objets en temps réel à extraire des caractéristiques multi-échelles tout en maintenant une vitesse d'inférence rapide.

La structure spécifique de MS-Block est illustrée à la figure 2(c). L'hypothèse X\in R^{H \fois W \fois C }est la caractéristique d'entrée. Après conversion par convolution 1×1, la dimension de canal de X est augmentée à n*C. Ensuite, les auteurs ont divisé X en n groupes distincts, notés \left \{ X_{i} \right \}, où i\en 1,2,3,...,n. Afin de réduire le coût de calcul, l'auteur choisit n égal à 3.

Notez que, à l'exception de X_{1}chaque autre groupe, chaque autre groupe passe par une couche de bloc de goulot d'étranglement inversé, désignée par IB_{k \fois k}(\cdot ), où k représente la taille du noyau, pour obtenir Y_{i}. Y_{i}La représentation mathématique de est la suivante :

Selon cette formulation, les auteurs ne connectent pas la couche Inverted Bottleneck Block à X_{1}, ce qui en fait une connexion inter-étages et conserve les informations des couches précédentes. Enfin, les auteurs concatènent toutes les divisions et appliquent des convolutions 1 × 1 pour interagir sur toutes les divisions, chacune encodant des caractéristiques à différentes échelles. Cette convolution 1 × 1 est également utilisée pour ajuster le nombre de canaux à mesure que le réseau s'approfondit.

3.2 Protocole de sélection de noyau hétérogène

En plus de la conception des blocs de construction, l'auteur explore également l'utilisation de la convolution d'un point de vue macro. Les détecteurs d'objets en temps réel précédents ont adopté des convolutions homogènes (c'est-à-dire des convolutions avec la même taille de noyau) dans différents étages d'encodeur, mais les auteurs pensent que ce n'est pas la meilleure option pour extraire des informations sémantiques multi-échelles.

Dans la structure pyramidale, les caractéristiques à haute résolution extraites des étages peu profonds du détecteur sont généralement utilisées pour capturer une sémantique à grain fin, qui sera utilisée pour détecter de petits objets. Au lieu de cela, des fonctionnalités basse résolution provenant d'étapes plus profondes du réseau sont utilisées pour capturer la sémantique de haut niveau, qui sera utilisée pour détecter les objets volumineux. Si l'auteur utilise une petite convolution de noyau unifiée à toutes les étapes, le champ récepteur effectif (ERF) de l'étape profonde sera limité, affectant les performances des grandes cibles. L'introduction de grandes convolutions du noyau à chaque étape peut aider à résoudre ce problème. Cependant, un gros noyau avec un grand ERF peut coder une région plus large, ce qui augmente la probabilité de contenir des informations bruyantes en dehors des petits objets et réduit la vitesse d'inférence.

Dans ce travail, les auteurs proposent des convolutions hétérogènes à différentes étapes pour aider à capturer des caractéristiques multi-échelles plus riches. Plus précisément, dans la première étape de l'encodeur, l'auteur adopte la convolution minimale du noyau, tandis que la convolution maximale du noyau se trouve dans la dernière étape. Par la suite, l'auteur a progressivement augmenté la taille du noyau au stade intermédiaire pour la maintenir cohérente avec l'augmentation de la résolution des fonctionnalités. Cette stratégie permet l'extraction d'informations sémantiques à grain fin et à grain grossier, améliorant la capacité de représentation de caractéristiques multi-échelles du codeur.

Comme le montre la figure 3, l'auteur attribue la valeur de k de l'étage peu profond à l'étage profond dans l'encodeur, avec des valeurs de 3, 5, 7 et 9, respectivement. Les auteurs l'appellent le protocole Heterogeneous Kernel Selection (HKS).

Le protocole HKS des auteurs est capable d'étendre le champ récepteur dans les couches profondes sans autre impact sur les couches peu profondes. La figure 4 de la section 4 appuie l'analyse des auteurs. De plus, HKS aide non seulement à coder des fonctionnalités multi-échelles plus riches, mais assure également une inférence efficace.

Comme le montre le tableau 1, l'application de grandes convolutions du noyau à des caractéristiques à haute résolution entraîne une surcharge de calcul élevée. Cependant, le protocole HKS de l'auteur utilise de grandes convolutions de noyau sur des caractéristiques à basse résolution, réduisant ainsi considérablement le coût de calcul par rapport à l'utilisation uniquement de grandes convolutions de noyau.

En pratique, les auteurs ont constaté de manière empirique que la vitesse d'inférence de YOLO-MS avec le protocole HKS était presque la même qu'en utilisant uniquement des convolutions 3 × 3 séparables en profondeur.

3.3 Architecture

Comme le montre la figure 3, l'épine dorsale du modèle de l'auteur se compose de 4 étapes, chaque étape est suivie d'une convolution 3 × 3 avec une foulée de 2 pour le sous-échantillonnage. Après la 3ème étape, l'auteur a ajouté 1 bloc SPP, comme dans RTMDet. Sur l'encodeur de l'auteur, l'auteur utilise PAFPN comme Neck pour construire la pyramide des caractéristiques [31, 35]. Il fusionne des fonctionnalités multi-échelles extraites de différentes étapes de Backbone. Le bloc de construction de base utilisé dans Neck est également le MS-Block de l'auteur, dans lequel des convolutions séparables en profondeur 3 × 3 sont utilisées pour une inférence rapide.

De plus, afin d'obtenir un meilleur équilibre entre vitesse et précision, l'auteur a réduit de moitié la profondeur de canal des fonctionnalités multi-niveaux dans Backbone. L'auteur propose 3 variantes de YOLO-MS à différentes échelles, à savoir YOLO-MS-XS, YOLO-MS-S et YOLO-MS. Les configurations détaillées de YOLO-MS à différentes échelles sont répertoriées dans le tableau 2. Pour les autres parties de YOLO-MS, les auteurs le conservent comme RTMDet.

4 expériences

4.1 Configuration de l'expérience

Les paramètres expérimentaux parlent de l'équipement, des ensembles de données, etc. utilisés dans l'expérience.

4.2 Analyse de MS-Bloc

Dans cette sous-section, nous effectuons une série d'analyses d'ablation sur notre MS-Block. Par défaut, les auteurs utilisent le modèle YOLO-MS-XS pour toutes les expériences.

L'auteur du bloc de goulot d'étranglement inversé  a mené une étude d'ablation sur le taux d'expansion du canal (noté r) dans le bloc de goulot d'étranglement inversé du bloc MS, et les résultats sont présentés dans le tableau 3.

Les résultats montrent qu'à r = 2, le détecteur atteint le meilleur équilibre entre performances et surcharge de calcul. De plus, le taux d'expansion du canal affecte de manière significative les performances du détecteur, par rapport à r = 2, les performances chutent de 1,2 AP lorsque r = 1, tandis que les performances s'améliorent de 1 AP lorsque r = 3. Cela signifie que l'expansion du canal dans le bloc de goulot d'étranglement inversé améliore la capacité de représentation des convolutions séparables en profondeur et enrichit les informations sémantiques des caractéristiques.

Cependant, bien que r = 3 permette d'obtenir les performances les plus élevées, il est également plus coûteux en termes de calcul. Par conséquent, les auteurs ont défini r = 2 comme paramètre par défaut dans toutes les expériences ultérieures afin de maintenir une efficacité de calcul élevée.

Stratégie de fusion de fonctionnalités  En règle générale, MS-Block fusionne progressivement les fonctionnalités entre les branches adjacentes par addition. Les auteurs mènent des études d'ablation pour évaluer l'efficacité des stratégies de fusion de caractéristiques.

Les résultats sont présentés dans le tableau 4, montrant que la fusion de caractéristiques entre les branches est cruciale pour améliorer les performances du modèle. En particulier, il améliore significativement le score AP de YOLO-MS de +1,2%.

Nombre de MS-Layers Les auteurs analysent également N_{l}le coût de calcul et la vitesse d'inférence pour différents nombres de MS-Layers (désignés par ). Les résultats sont présentés dans le tableau 5.

On peut voir que le nombre de MS-Layers dans MS-Block affecte de manière significative la vitesse de YOLO-MS. Par exemple, dans le cas de YOLO-MS-XS, le N_{l}nombre de paramètres augmente de 25,8 % et 51,5 % en passant de 1 à 2 puis à 3, respectivement.

De plus, les FLOP ont augmenté de 18,1% et 36,2%, respectivement. Lorsque N_{l}= 2 et N_{l} = 3, le FPS du processus d'inférence chute également de 9,2 % et 16,6 %, respectivement. N_{l}Par conséquent, les auteurs ont utilisé = 1 comme paramètre par défaut dans toutes les expériences ultérieures

Le mécanisme d'attention  est cohérent avec RTMDet, et les auteurs utilisent l'attention SE après la convolution finale 1 × 1 pour capturer les corrélations inter-canaux. Les auteurs mènent des études expérimentales pour étudier l'effet de l'attention du canal. L'analyse de calcul est présentée dans le tableau 6 et les performances sont présentées dans le tableau 12. Fait intéressant, le mécanisme d'attention n'améliore que légèrement les performances, mais diminue le temps d'inférence. Par conséquent, les utilisateurs peuvent utiliser sélectivement l'attention du canal en fonction de leurs propres conditions.

Nombre de branches  Le MS-Block de l'auteur divise et transmet les entrées de fonctionnalités dans plusieurs branches. Cependant, l'augmentation du nombre de branches entraîne également une augmentation du nombre de MS-Layers et une réduction du nombre de canaux dans chaque branche. Pour étudier N_{b}l'effet du nombre de branches (noté par ), les auteurs ont réalisé une étude d'ablation. Les résultats sont présentés dans le tableau 7. Il est intéressant de noter que l'augmentation directe du nombre d'agences ne conduit pas toujours à des gains de performances.

En particulier, lorsque N_{b}= 3, YOLO-MS atteint les meilleures performances avec un AP de 43,4 %, soit N_{b}1,2 % supérieur à = 2 et N_{b}0,2 % supérieur à = 4. Par conséquent, les auteurs ont utilisé = 3 comme paramètre par défaut dans toutes les expériences ultérieures N_{b}.

Analyse d'ablation du module PAFPN  L'auteur a mené une étude d'ablation sur le module PAFPN, et les résultats sont présentés dans le tableau 9. PAFPN est une structure populaire largement utilisée dans d'autres modèles YOLO. L'auteur supprime le module PAFPN de YOLO-MS pour vérifier davantage l'efficacité de la méthode de l'auteur.

Les résultats expérimentaux montrent que la méthode proposée par les auteurs peut produire des performances similaires à PAFPN sans poids pré-formés avec peu d'augmentation du coût de calcul.

De plus, la méthode proposée par l'auteur est également meilleure que le modèle de base sans PAFPN. De plus, la méthode des auteurs est orthogonale au module FPN. Les auteurs ont comparé le PAFPN original avec le PAFPN-MS (PAFPN avec MS-Block). Comme le montrent les résultats expérimentaux, le détecteur avec PAFPN-MS atteint de meilleures performances (+0,2% AP) avec seulement environ 60% des paramètres et environ 80% des FLOP.

Analyse de résolution d'image  Ici, les auteurs mènent une expérience pour étudier la relation entre la résolution d'image et la conception de blocs de construction multi-échelles. Les auteurs ont appliqué Test Time Augmentation pendant l'inférence pour effectuer des transformations multi-échelles sur des images (320 × 320, 640 × 640 et 1280 × 1280). De plus, les auteurs ont également effectué des tests en utilisant ces résolutions séparément. Il convient de noter que la résolution d'image utilisée par l'auteur en formation est de 640 × 640. Les résultats sont présentés dans le tableau 10. Les résultats expérimentaux montrent une tendance constante : à mesure que la résolution de l'image augmente, l'AP augmente également. Cependant, des images de résolution inférieure peuvent atteindre un APl plus élevé. Cela vérifie également la validité du protocole HKS des auteurs.

Les méthodes appliquées par d'autres   auteurs de modèles YOLO peuvent être utilisées comme modules plug-and-play pour d'autres modèles YOLO. Afin de démontrer la capacité de généralisation de la méthode de l'auteur, l'auteur applique la méthode à d'autres modèles YOLO et effectue une comparaison complète sur l'ensemble de données MS COCO. Les résultats sont présentés dans le tableau 11. Les scores AP de YOLOv6 et YOLOv8 peuvent être augmentés à 43,5 % (+2,5 %) et 40,3 % (+3,1 %), respectivement, avec moins de paramètres et de FLOP.

 4.3 Analyse du protocole HKS

Dans cette sous-section, les auteurs mènent des expériences pour évaluer l'efficacité du protocole HKS en explorant différents paramètres convolutionnels de taille du noyau. Pour simplifier la notation, les auteurs utilisent le format [ k_{1}, k_{2}, k_{3}, k_{4}], où k_{je}désignent la convolutionnelle Kernel-Size de la ième étape. Les auteurs étudient les paramètres de convolution uniforme Kernel-Size avec 3, 5, 7, 9 et 11, ainsi qu'une version inversée de HKS, à savoir [9, 7, 5, 3].

Comme le montre le tableau 8, les résultats de nos expériences révèlent des informations intéressantes. Les auteurs observent que la simple augmentation de la taille du noyau convolutif n'entraîne pas toujours des améliorations significatives des performances. Cependant, lorsque nous utilisons HKS, nous obtenons une amélioration significative des performances (43,4 % AP), qui surpasse tous les autres paramètres de convolution uniforme Kernel-Size.

De plus, l'ordre dans lequel les noyaux de convolution sont disposés dans une étape joue un rôle clé. Plus précisément, lorsqu'un gros noyau est utilisé dans la phase peu profonde et qu'un petit noyau est utilisé dans la phase profonde, les performances chutent de 0,9 % AP par rapport à HKS. Cela montre que, par rapport à la phase peu profonde, la phase profonde nécessite un champ de réception plus large pour capturer efficacement les informations à gros grains.

Compte tenu du coût de calcul, notre HKS se distingue par sa surcharge de calcul minimale. Cela montre qu'en plaçant stratégiquement des convolutions avec différentes tailles de noyau de convolution à des positions appropriées, les auteurs peuvent maximiser l'utilisation efficace de ces convolutions.

Les auteurs utilisent également deux nouveaux paramètres, [5, 7, 9, 11] et [3, 7, 11, 15]. Les résultats sont présentés dans le tableau ci-dessous. Selon les résultats, on peut voir intuitivement que les paramètres de [3, 5, 7, 9] permettent d'obtenir de meilleures performances à moindre coût de calcul.

Analyse de champ réceptif efficace  Des études antérieures ont introduit le concept de champ récepteur effectif (ERF) comme métrique pour comprendre le comportement des réseaux de neurones à convolution profonde (CNN). ERF mesure la surface effective dans l'espace d'entrée affectée par la représentation de l'entité. Ici, les auteurs exploitent davantage le concept d'ERF pour étudier l'efficacité de HKS.

Plus précisément, les auteurs mesurent les longueurs latérales des ERF contenues par les pixels à forte contribution dans les étapes 2, 3 et 4 de l'encodeur. Une comparaison visuelle est illustrée à la figure 4. Comme le montre la figure 4 (a), à mesure que la taille du noyau convolutif augmente, la zone ERF de tous les étages devient également plus grande, ce qui confirme la corrélation positive entre la taille du noyau convolutif et le champ récepteur.

De plus, aux étages peu profonds, la zone ERF est plus petite que la plupart des autres paramètres, alors que l'inverse est vrai aux étages profonds. Cette observation suggère que ce protocole élargit le champ réceptif des étapes profondes sans compromettre les étapes peu profondes. Sur la figure 4 (b), nous pouvons observer que notre HKS atteint le plus grand ERF dans la phase profonde, ce qui conduit à une meilleure détection des gros objets.

4.4 Comparaison avec l'état de l'art

Comparaison visuelle avec CAM  Pour évaluer sur quelles parties de l'image le détecteur se concentre, les auteurs utilisent Grad-CAM pour générer des cartes de réponse de classe. L'auteur a généré des cartes de réponse de classe à partir de la partie du cou de YOLOv6-tiny, RTMDet-tiny RTMDet, YOLOV7-tiny et YOLO-MS-XS, et a sélectionné des images typiques de différentes tailles à partir de l'ensemble de données MS COCO, y compris les petites, moyennes et grandes cibles. .

Les résultats de visualisation sont présentés dans la figure 5. YOLOv6-tiny, RTMDet-tiny et YOLOV7-tiny ne peuvent pas détecter de petits objets denses, tels que des foules, et ignorent certaines parties de l'objet. En revanche, YOLO-MS-XS présente de fortes réponses à toutes les cibles dans les cartes de réponse de classe, indiquant son excellente capacité de représentation des caractéristiques multi-échelles. De plus, cela met en évidence les excellentes performances de détection de notre détecteur à la fois pour des objets de différentes tailles et dans des images contenant des objets de différentes densités.

Comparaison quantitative  Les auteurs comparent YOLO-MS avec les détecteurs d'objets de pointe actuels.

À partir du tableau 12, les auteurs peuvent voir que YOLO-MS atteint un équilibre vitesse-précision remarquable. Comparé au deuxième meilleur micro-détecteur, RTMDet RTMDet, YOLO-MS-XS atteint 43,4% AP, ce qui est 2,3% supérieur à celui utilisant le modèle pré-formé ImageNet. YOLO-MS-S atteint 46,2 % AP, ce qui réduit la taille du paramètre de moitié par rapport à YOLOv6, apportant une amélioration de 5,7 % AP. De plus, YOLO-MS présente un AP de 51,0 %, surpassant les détecteurs d'objets de pointe avec des paramètres et une complexité de calcul similaires, même les grands modèles tels que YOLOv6-M et YOLOv6-L. En conclusion, YOLO-MS peut servir de base de référence prometteuse pour la détection d'objets en temps réel, offrant de puissantes capacités de représentation de caractéristiques multi-échelles.

Je suppose que tu aimes

Origine blog.csdn.net/athrunsunny/article/details/132306207
conseillé
Classement