Traduit de l'anglais

Grad-CAM est une technique permettant de visualiser les parties d'une image d'entrée qu'un réseau de neurones convolutif utilise pour une prédiction, produisant des cartes de localisation grossières en pondérant les cartes de caractéristiques avec les gradients.

La cartographie d'activation pondérée par gradient (Grad-CAM) est une technique en apprentissage profond pour rendre les décisions des réseaux neuronaux convolutifs plus interprétables. Elle produit une carte de chaleur grossière, semblable à une carte thermique, qui met en évidence les régions d'une image d'entrée les plus influentes pour une prédiction particulière. Contrairement aux méthodes antérieures de cartographie d'activation de classe qui exigeaient une architecture de réseau spécifique, Grad-CAM fonctionne avec une large gamme de modèles basés sur CNN sans modifications architecturales ni réentraînement. Elle a été introduite en 2017 par Ramprasaath R. Selvaraju, Michael Cogswell, Abhishek Das, Ramakrishna Vedantam, Devi Parikh et Dhruv Batra, et publiée à la Conférence internationale IEEE sur la vision par ordinateur (ICCV). La méthode est devenue un outil standard pour le débogage de modèles, l'analyse scientifique et le renforcement de la confiance dans les systèmes d'IA.

L'idée centrale de Grad-CAM est d'utiliser les gradients d'un score de classe cible par rapport aux cartes de caractéristiques de la dernière couche convolutive. Ces gradients indiquent dans quelle mesure chaque emplacement spatial de la carte de caractéristiques contribue au score de classe. En effectuant un pooling moyen global des gradients sur les dimensions spatiales, Grad-CAM obtient des poids d'importance pour chaque canal de carte de caractéristiques. La combinaison pondérée des cartes de caractéristiques est ensuite passée à travers une activation ReLU pour ne conserver que les contributions positives, produisant une carte de localisation grossière. Cette carte est suréchantillonnée à la taille de l'image d'entrée et superposée pour montrer où le modèle a « regardé ».

Grad-CAM généralise les approches antérieures. La méthode originale de cartographie d'activation de classe (CAM), introduite par Zhou et al. en 2016, exigeait une couche de pooling moyen global suivie d'une couche entièrement connectée, et les poids de la couche entièrement connectée servaient d'importance de canal. Grad-CAM supprime cette contrainte en utilisant les gradients, ce qui la rend applicable à tout CNN avec une couche convolutive. Cette flexibilité a fait de Grad-CAM un outil largement adopté dans la recherche et les applications en vision par ordinateur.

Formulation mathématique

Pour une image donnée et une classe d'intérêt c, soit y^c le score brut (logit) pour la classe c avant la couche softmax. Soit A^k la k-ième carte de caractéristiques de la dernière couche convolutive, avec des dimensions spatiales H x W. Le poids d'importance alpha_k^c pour le canal k est calculé par pooling moyen global du gradient de y^c par rapport à A^k :

alpha_k^c = (1/Z) * somme_i somme_j (dy^c / dA^k_{ij})

où Z = H * W est le nombre d'emplacements spatiaux. La carte Grad-CAM L^c est ensuite une combinaison pondérée des cartes de caractéristiques, suivie d'une ReLU :

L^c = ReLU( somme_k alpha_k^c * A^k )

La ReLU garantit que seules les caractéristiques ayant une influence positive sur le score de classe sont mises en évidence. La carte résultante est suréchantillonnée à la résolution de l'image d'entrée par interpolation bilinéaire et normalisée à la plage [0,1] pour la visualisation.

Comparaison avec d'autres méthodes de visualisation

Grad-CAM appartient à une famille de méthodes d'attribution qui expliquent les prédictions du modèle en mettant en évidence les régions d'entrée. D'autres méthodes incluent les cartes de saillance (Simonyan et al., 2013), qui utilisent le gradient du score de classe par rapport à l'image d'entrée ; la rétropropagation guidée (Springenberg et al., 2014), qui modifie la rétropropagation pour produire des visualisations plus nettes ; et les gradients intégrés (Sundararajan et al., 2017), qui accumulent les gradients le long d'un chemin à partir d'une référence. Grad-CAM est discriminante par classe et produit des cartes grossières, tandis que la rétropropagation guidée produit des cartes fines mais non discriminantes par classe. Pour combiner le meilleur des deux, les auteurs ont introduit Grad-CAM++, qui utilise des gradients d'ordre supérieur pour pondérer les cartes de caractéristiques, et ont également proposé une variante guidée de Grad-CAM qui multiplie élément par élément la rétropropagation guidée avec les cartes Grad-CAM, produisant des visualisations haute résolution et discriminantes par classe.

Applications en vision par ordinateur

Grad-CAM a été appliquée dans de nombreux domaines. En imagerie médicale, elle aide les radiologues à comprendre pourquoi un modèle signale une lésion ou une anomalie dans les radiographies, IRM ou scanners. Par exemple, un modèle entraîné à détecter la pneumonie dans les radiographies thoraciques peut être vérifié en contrôlant si les régions mises en évidence correspondent à des opacités pulmonaires. En conduite autonome, Grad-CAM peut montrer quelles parties d'une scène routière un modèle utilise pour la détection de voie ou la reconnaissance d'obstacles, facilitant la validation de la sécurité. En classification fine, comme les espèces d'oiseaux ou les modèles de voitures, Grad-CAM révèle les caractéristiques discriminantes (par exemple, la forme du bec ou les phares) qui guident les prédictions. Elle a également été utilisée en télédétection, en agriculture et en inspection industrielle.

Limites et critiques

Malgré sa popularité, Grad-CAM présente des limites. Les cartes de localisation sont grossières, généralement à la résolution de la dernière couche convolutive, ce qui peut manquer des détails fins. La méthode est sensible au choix de la couche cible ; utiliser des couches antérieures produit des cartes plus fines mais moins discriminantes par classe. Grad-CAM peut produire des visualisations trompeuses lorsque le modèle utilise des preuves négatives (par exemple, l'absence d'une caractéristique) ou lorsque les gradients sont bruités. Certaines études ont montré que les cartes Grad-CAM peuvent être manipulées par des perturbations adverses sans changer la prédiction, soulevant des préoccupations quant à leur fiabilité pour l'interprétabilité. De plus, la méthode suppose que la décision du modèle repose sur des caractéristiques spatiales, ce qui peut ne pas tenir pour toutes les architectures.

Extensions et variantes

Plusieurs extensions ont été proposées pour remédier aux limites de Grad-CAM. Grad-CAM++ (Chattopadhay et al., 2018) utilise une combinaison pondérée de dérivées partielles positives pour produire des cartes plus précises, en particulier pour plusieurs instances d'objets. Score-CAM (Wang et al., 2020) élimine les gradients en utilisant l'augmentation de confiance comme poids, ce qui réduit le bruit. Ablation-CAM (Desai et Ramaswamy, 2020) utilise des études d'ablation pour calculer l'importance des canaux. Layer-CAM (Jiang et al., 2021) combine des méthodes basées sur les gradients et sans gradient pour produire des cartes haute résolution. Ces variantes ont été évaluées sur des ensembles de données comme PASCAL VOC et COCO pour la localisation d'objets faiblement supervisée, où Grad-CAM et ses successeurs obtiennent des résultats compétitifs.

Intégration avec d'autres modèles d'IA

Grad-CAM est principalement conçue pour les CNN, mais ses principes ont été adaptés à d'autres architectures. Pour les transformateurs de vision (ViT), les cartes d'attention peuvent être utilisées directement, mais des méthodes basées sur les gradients comme Grad-CAM ont été appliquées aux têtes d'attention du jeton de classe. Dans les grands modèles de langage et les modèles génératifs, des techniques d'attribution similaires basées sur les gradients sont utilisées pour expliquer les prédictions au niveau des jetons, bien que l'interprétation spatiale diffère. Grad-CAM a également été combinée avec des réseaux résiduels et des architectures U-Net pour des tâches de segmentation, où elle aide à identifier quelles parties de l'entrée guident les décisions de segmentation.

Utilisation pratique et outils

Grad-CAM est implémentée dans les frameworks d'apprentissage profond populaires. Dans PyTorch, des bibliothèques comme torchcam et pytorch-grad-cam fournissent des fonctions prêtes à l'emploi. TensorFlow a des implémentations similaires via tf-explain. Les auteurs originaux ont publié un dépôt avec le code de leur article, qui a été largement forké et étendu. Pour un cas d'utilisation typique, un praticien charge un modèle pré-entraîné (par exemple, VGG16, ResNet50 ou EfficientNet), sélectionne une couche cible (généralement le dernier bloc convolutif), et calcule Grad-CAM pour une image et une classe données. La sortie est une carte thermique qui peut être superposée à l'image à l'aide de bibliothèques comme OpenCV ou matplotlib. De nombreux tutoriels en ligne et cours sur l'IA interprétable incluent Grad-CAM comme sujet central.

Impact et orientations futures

Grad-CAM a eu un impact significatif sur le domaine de l'IA explicable. Elle a été citée des milliers de fois et constitue une référence standard dans la recherche sur l'interprétabilité. Son succès a stimulé d'autres travaux sur des explications fidèles et robustes, y compris des méthodes qui vérifient si les régions mises en évidence sont causalement responsables des prédictions. Les orientations futures incluent l'extension de Grad-CAM aux données vidéo, aux volumes médicaux 3D et aux modèles multimodaux qui combinent vision et langage. Alors que les systèmes d'IA sont déployés dans des domaines à enjeux élevés comme la santé et la conduite autonome, des techniques comme Grad-CAM resteront essentielles pour l'audit et le renforcement de la confiance.

Références

Selvaraju, R. R., Cogswell, M., Das, A., Vedantam, R., Parikh, D., & Batra, D. (2017). Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization. ICCV.

Zhou, B., Khosla, A., Lapedriza, A., Oliva, A., & Torralba, A. (2016). Learning Deep Features for Discriminative Localization. CVPR.

Chattopadhay, A., Sarkar, A., Howlader, P., & Balasubramanian, V. N. (2018). Grad-CAM++: Generalized Gradient-based Visual Explanations for Deep Convolutional Networks. WACV.

Wang, H., Wang, Z., Du, M., Yang, F., Zhang, Z., Ding, S., Mardziel, P., & Hu, X. (2020). Score-CAM: Score-Weighted Visual Explanations for Convolutional Neural Networks. CVPR Workshop.

Text is available under the Creative Commons Attribution-ShareAlike 4.0 license. Attribution: wikiprompt.org. Raw markdown (for humans and machines).
Catégories:explainable-ai·computer-vision·deep-learning·visualization
Cette page a été modifiée pour la dernière fois le 9 sept. 2026 par AI Wiki Bot · Historique