web-dev-qa-db-fra.com

Pourquoi les réseaux de neurones invariants en rotation ne sont-ils pas utilisés par les gagnants des compétitions populaires?

Comme le CNN (réseau neuronal convolutionnel) le plus populaire et le plus moderne: VGG/ResNet (FasterRCNN), SSD, Yolo, Yolo v2, DenseBox, DetectNet - ne sont pas invariants en rotation: sont le CNN moderne (réseau neuronal convolutionnel) comme DetectNet rotation invariante?

Il est également connu qu'il existe plusieurs réseaux de neurones avec détection d'objets à invariance de rotation:

  1. Rotation-Invariant Neoperceptron 2006 ( PDF ): https://www.researchgate.net/publication/224649475_Rotation-Invariant_Neoperceptron

  2. Apprentissage des filtres convolutionnels invariants de rotation pour la classification de texture 2016 ( PDF ): https://arxiv.org/abs/1604.0672

  3. RIFD-CNN: Réseaux de neurones convolutifs discriminants à rotation et Fisher pour la détection d'objets 2016 ( [[# #] pdf [~ # ~] ): http: //www.cv- foundation.org/openaccess/content_cvpr_2016/html/Cheng_RIFD-CNN_Rotation-Invariant_and_CVPR_2016_paper.html

  4. Invariance codée dans les réseaux de neurones convolutifs 2014 ( PDF )

  5. Réseaux de neurones convolutionnels invariants en rotation pour la prédiction de la morphologie des galaxies ( PDF ): https://arxiv.org/abs/1503.07077

  6. Apprentissage des réseaux de neurones convolutionnels invariants en rotation pour la détection d'objets dans les images de télédétection optique VHR 2016: http://ieeexplore.ieee.org/document/7560644/

Nous savons que, dans des compétitions de détection d'images telles que: IMAGE-NET, MSCOCO, Pascal VOC - ont utilisé des ensembles de réseaux (simultanément certains réseaux de neurones). Ou réseaux d'ensembles en réseau unique tels que ResNet ( les réseaux résiduels se comportent comme des ensembles de réseaux relativement peu profonds )

Mais sont utilisés des ensembles de réseaux invariants de rotation dans des gagnants comme MSRA, et sinon, pourquoi? Pourquoi dans l'ensemble le réseau invariant de rotation supplémentaire n'ajoute pas de précision pour détecter certains objets tels que des objets d'avion - quelles images sont faites à des angles de rotation différents?

Ça peut être:

  • objets aéronautiques photographiés depuis le sol enter image description here

  • ou des objets au sol photographiés depuis les airs enter image description here

Pourquoi les réseaux de neurones invariants en rotation ne sont-ils pas utilisés par les gagnants des concours populaires de détection d'objets?

26
Alex

Les progrès récents dans la reconnaissance d'image qui ont été principalement réalisés en changeant l'approche d'une sélection de fonctionnalités classique - algorithme d'apprentissage superficiel à aucune sélection de fonctionnalités - l'algorithme d'apprentissage en profondeur n'était pas uniquement causé par les propriétés mathématiques des réseaux de neurones convolutifs. Oui - bien sûr, leur capacité à capturer les mêmes informations en utilisant un plus petit nombre de paramètres a été partiellement causée par leur propriété d'invariance de décalage mais la récente recherche a montré que ce n'est pas une clé pour comprendre leur succès.

À mon avis, la principale raison de ce succès a été de développer des algorithmes d'apprentissage plus rapides que plus précis mathématiquement ceux et c'est pourquoi moins d'attention est accordée au développement d'un autre propriété invariante réseaux neuronaux.

Bien sûr, l'invariance de rotation n'est pas du tout ignorée. Cela est partiellement dû à l'augmentation des données où vous placez l'image légèrement modifiée (par exemple, pivotée ou redimensionnée) dans votre jeu de données - avec la même étiquette. Comme nous pouvons le lire dans ce livre fantastique ces deux approches ( plus de structure vs moins structure + augmentation de données ) sont plus ou moins équivalents. (Chapitre 5.5.3, intitulé: Invariances)

7
Marcin Możejko

Je me demande également pourquoi la communauté ou l'érudit n'a pas accordé beaucoup d'attention à CNN invariant les rations comme @Alex.

Une cause possible, à mon avis, est que de nombreux scénarios n'ont pas besoin de cette propriété, en particulier pour ces compétitions populaires. Comme Rob l'a mentionné, certaines photos naturelles sont déjà prises de manière unifiée horizontale (ou verticale). Par exemple, dans la détection des visages, de nombreux travaux aligneront l'image pour s'assurer que les personnes se tiennent sur la terre avant de se nourrir de n'importe quel modèle CNN. Pour être honnête, c'est le moyen le plus économique et le plus efficace pour cette tâche particulière.

Cependant, il existe certains scénarios dans la vie réelle, nécessitant une propriété invariante de rotation. J'en viens donc à une autre supposition: ce problème n'est pas difficile du point de vue de ces experts (ou chercheurs). Au moins, nous pouvons utiliser l'augmentation des données pour obtenir une rotation invariante.

Enfin, merci beaucoup pour votre résumé sur les articles. J'ai ajouté un autre article Group Equivariant Convolutional Networks_icml2016_GCNN et son implémentation sur github par d'autres personnes.

3
Tan Cniao

La détection d'objets est principalement motivée par les succès des algorithmes de détection dans les référentiels de détection d'objets de renommée mondiale comme Pascal-VOC et MS-COCO, qui sont des ensembles de données centrés sur les objets où la plupart des objets sont verticaux (plantes en pot, humains, chevaux, etc.) et donc l'augmentation des données avec des flips gauche-droite est souvent suffisante (pour tout ce que nous savons, l'augmentation des données avec des images tournées comme des flips à l'envers pourrait même nuire aux performances de détection).
Chaque année, toute la communauté adopte la structure algorithmique de base de la solution gagnante et s'appuie dessus (j'exagère un peu pour prouver un point, mais pas tant).

Il est intéressant de noter que d'autres sujets moins connus comme les détections de texte orientées et les détections de véhicules orientées en imagerie aérienne ont tous deux besoin de caractéristiques invariantes en rotation et de pipelines de détection équivalents en rotation (comme dans les deux articles de Cheng que vous avez mentionnés).

Si vous voulez trouver de la littérature et du code dans ce domaine, vous devez plonger dans ces deux domaines. Je peux déjà vous donner quelques conseils comme le défi DOTA pour l'imagerie aérienne ou le défis ICDAR pour les détections de texte orientées.

Comme l'a dit @Marcin Mozejko, les CNN sont par nature invariants en translation et non en rotation. C'est un problème ouvert de savoir comment incorporer une invariance de rotation parfaite, les quelques articles qui la traitent doivent encore devenir des standards même si certainsd'entre eux semblent prometteurs. Mon préféré pour la détection est la modification de Faster R-CNN récemment proposée par Ma .

J'espère que cette direction de la recherche sera étudiée de plus en plus une fois que les gens en auront marre du MS-COCO et des COV.

Ce que vous pourriez essayer est de prendre un détecteur de pointe formé sur MS-COCO comme Faster R-CNN avec NASNet à partir de l'API de détection TF et voir comment il fonctionne en tournant l'image de test par rotation à mon avis, ce serait loin d'être invariant par rotation.

3
jean