Grad-CAM : Explications visuelles à partir de réseaux profonds par localisation basée sur les gradients

Nous proposons une technique pour produire des « explications visuelles » des décisions issues d'une large classe de modèles basés sur les CNN, rendant ainsi ces modèles plus transparents. Notre approche, la Gradient-weighted Class Activation Mapping (Grad-CAM), utilise les gradients de tout concept cible s'écoulant dans la dernière couche de convolution pour générer une carte de localisation grossière mettant en évidence les régions importantes de l'image pour prédire le concept. La Grad-CAM est applicable à une grande variété de familles de modèles CNN : (1) les CNN avec des couches entièrement connectées, (2) les CNN utilisés pour des sorties structurées, (3) les CNN utilisés dans des tâches à entrées multimodales ou l'apprentissage par renforcement, sans nécessiter de modifications architecturales ni de réentraînement. Nous combinons la Grad-CAM avec des visualisations fines pour créer une visualisation discriminante à haute résolution et nous l'appliquons à des modèles pré-entraînés de classification d'images, de légendage et de réponse aux questions visuelles (VQA), y compris ceux basés sur ResNet. Dans le contexte des modèles de classification d'images, nos visualisations (a) apportent des éclairages sur leurs modes d'échec, (b) sont robustes aux images adversaires, (c) surpassent les méthodes précédentes en termes de localisation, (d) sont plus fidèles au modèle sous-jacent et (e) contribuent à l'atteinte d'une généralisation en identifiant les biais du jeu de données. Pour le légendage et la VQA, nous montrons que même les modèles ne reposant pas sur l'attention peuvent localiser les entrées. Nous élaborons une méthode pour identifier les neurones importants grâce à la Grad-CAM et nous combinons cette méthode avec les noms des neurones pour fournir des explications textuelles des décisions du modèle. Enfin, nous concevons et menons des études humaines pour mesurer si la Grad-CAM aide les utilisateurs à établir une confiance appropriée dans les prédictions issues des modèles et démontrons que la Grad-CAM permet aux utilisateurs non formés d'identifier avec succès un modèle « plus fort » par rapport à un modèle « plus faible », même lorsque ces deux derniers font des prédictions identiques. Notre code est disponible sur https://github.com/ramprs/grad-cam/, accompagné d'une démonstration accessible via http://gradcam.cloudcv.org et d'une vidéo disponible sur youtu.be/COjUB9Izk6E.