Faster R-CNN est une architecture de détection d'objets dans le domaine de l'apprentissage profond et de la vision par ordinateur. Elle unifie la génération de propositions de régions et la classification d'objets en un seul réseau neuronal entraînable. Elle a été introduite par Shaoqing Ren, Kaiming He, Ross Girshick et Jian Sun en 2015, s'appuyant sur les modèles antérieurs R-CNN et Fast R-CNN. L'innovation clé est le Réseau de Propositions de Régions (RPN), qui partage les caractéristiques convolutionnelles de l'image avec le détecteur, réduisant considérablement le coût de calcul pour générer des régions candidates. Cette conception permet des vitesses d'inférence quasi temps réel tout en maintenant une grande précision de détection, ce qui en fait un modèle fondateur pour les systèmes modernes de détection d'objets.
Faster R-CNN fonctionne comme un détecteur en deux étapes. La première étape utilise le RPN pour proposer un ensemble de rectangles de régions. La deuxième étape, un réseau de détection, classe ces régions dans des catégories d'objets spécifiques et affine leurs boîtes englobantes. Cette séparation contraste avec les détecteurs à une seule étape comme YOLO ou SSD, qui régressent les boîtes englobantes et les probabilités de classe directement à partir d'une grille de caractéristiques. L'approche en deux étapes offre généralement une meilleure précision de localisation, en particulier pour les petits objets ou les objets occlus, ce qui a fait de Faster R-CNN une référence standard dans la recherche en apprentissage automatique.
Architecture
L'architecture se compose de trois éléments principaux : un réseau convolutionnel de base (backbone), le RPN, et le classificateur de Régions d'Intérêt (RoI). Le backbone, souvent un réseau pré-entraîné comme VGG-16 ou ResNet, extrait les cartes de caractéristiques de l'image d'entrée. Le RPN opère sur ces cartes de caractéristiques, utilisant une petite fenêtre glissante pour prédire des scores d'"objectness" et des décalages de boîtes pour un ensemble d'ancres à différentes échelles et ratios d'aspect. Ces ancres permettent au réseau de gérer des objets de formes variées sans avoir besoin de pyramides d'images multi-échelles. Les propositions résultantes sont ensuite redimensionnées à une taille fixe par un pooling RoI et passées au classificateur, qui produit les probabilités de classe et affine les boîtes englobantes.
Entraînement
L'entraînement est effectué de bout en bout en utilisant une fonction de perte multi-tâches qui combine les pertes de classification et de régression pour le RPN et le détecteur. L'implémentation originale utilisait un schéma d'optimisation alterné, mais les versions ultérieures ont adopté un entraînement conjoint avec rétropropagation à travers toutes les couches. Le RPN est entraîné avec des étiquettes binaires indiquant si une ancre contient un objet, tandis que le détecteur utilise des étiquettes de classe fines. Pour gérer le grand nombre d'ancres, une stratégie d'échantillonnage sélectionne un lot équilibré pendant l'entraînement. Cette approche d'entraînement unifié est un écart significatif par rapport aux méthodes R-CNN antérieures, qui nécessitaient un entraînement séparé des propositions de régions et des classificateurs, comme les algorithmes de recherche sélective.
Performance et impact
Sur les benchmarks PASCAL VOC 2007 et 2012, Faster R-CNN a atteint des scores mAP (mean Average Precision) de 73,2 % et 70,4 % respectivement, tout en fonctionnant à 5 images par seconde sur un GPU. Cela représentait une amélioration substantielle par rapport à Fast R-CNN, qui prenait plusieurs secondes par image. L'introduction du RPN a éliminé le goulot d'étranglement des méthodes externes de proposition de régions, rendant l'ensemble du pipeline de détection entraînable de bout en bout. Ce travail a influencé de nombreux modèles ultérieurs, y compris Mask R-CNN pour la segmentation d'instances et divers cadres basés sur des régions. Ses principes ont été largement adoptés dans les systèmes commerciaux, notamment dans les piles de perception pour la conduite autonome chez des entreprises comme Waymo et Tesla.
Variantes et extensions
De nombreuses extensions ont été proposées pour améliorer des aspects spécifiques de Faster R-CNN. Les Réseaux de Pyramides de Caractéristiques (FPN) intègrent des cartes de caractéristiques multi-échelles pour améliorer la détection des petits objets. Les Cascades R-CNN utilisent une séquence de détecteurs avec des seuils d'IoU croissants pour affiner itérativement les prédictions. D'autres travaux ont exploré des backbones plus légers pour les appareils mobiles, comme les réseaux basés sur des architectures de type MobileNet. Dans le contexte de l'IA générative, Faster R-CNN a également été utilisé comme composant dans des modèles de vision-langage, bien que les grands systèmes aient tendance à privilégier les détecteurs basés sur des transformeurs. La recherche continue pour le rendre plus efficace, avec des techniques de quantification et d'élagage appliquées par des fournisseurs de matériel comme Intel et Qualcomm.
Méthodes connexes
Faster R-CNN appartient à la famille plus large des réseaux convolutionnels basés sur les régions, qui comprend également R-CNN et Fast R-CNN. Il est souvent comparé aux détecteurs à une seule étape comme YOLO et SSD, qui offrent une vitesse plus élevée mais généralement une précision moindre. Des architectures hybrides ultérieures, comme RetinaNet, tentent de combler cet écart avec une fonction de perte focale. Dans le paysage moderne de l'apprentissage profond, les détecteurs basés sur l'attention utilisant des architectures de transformeurs ont gagné en importance, mais Faster R-CNN reste une référence largement utilisée et un composant courant dans les méthodes d'ensemble.