Saliency Maps
Découvre comment les cartes de saillance expliquent les décisions d'un réseau de neurones. Apprends à visualiser les prédictions de tes modèles et à construire une IA transparente en utilisant l'Ultralytics Platform.
Les cartes de saillance sont un outil visuel puissant utilisé dans l'IA explicable (XAI) pour faire la lumière sur les processus internes de prise de décision de réseaux neuronaux complexes. Agissant essentiellement comme des cartes thermiques, elles mettent en évidence les pixels ou les régions spécifiques d'une image d'entrée qui influencent le plus fortement la prédiction d'un modèle. En révélant « où » regarde un modèle, les cartes de saillance aident les chercheurs et les ingénieurs à interpréter le comportement des réseaux neuronaux convolutifs (CNN) profonds, garantissant que le système apprend les bonnes caractéristiques plutôt que de se fier à des artefacts de jeu de données ou à du bruit de fond. Tu peux en lire davantage sur les fondements mathématiques de ce processus sur la page Wikipédia sur les cartes de saillance.
Link to this sectionComment fonctionnent les cartes de saillance#
L'approche fondamentale pour générer une carte de saillance repose largement sur la rétropropagation et les gradients à travers les couches du réseau. Au lieu d'utiliser ces gradients pour mettre à jour les poids du modèle lors de l'entraînement du modèle, l'algorithme calcule le gradient du score de classe prédit par rapport à l'image d'entrée elle-même. Comme expliqué dans la documentation autograd de PyTorch, prendre le maximum absolu de ces gradients à travers les canaux de couleur produit une carte où des valeurs élevées correspondent aux pixels qui modifient radicalement le score de sortie s'ils sont altérés. Les approches modernes étendent même cela à l'IA générative, permettant des cartes de saillance pour modèles de diffusion pour suivre les gradients de bruit.
Link to this sectionApplications concrètes#
Parce qu'elles fournissent une vérification visuelle directe de la logique d'un modèle, les cartes de saillance sont critiques dans les scénarios de vision par ordinateur à enjeux élevés :
- Diagnostics médicaux : Dans l'IA en santé, confirmer qu'un algorithme détecte une tumeur sur la base d'anomalies tissulaires physiologiques réelles — plutôt que sur le filigrane d'un scanner — est crucial pour la sécurité des patients. Les cartes de saillance fournissent cette preuve visuelle, comme détaillé dans des études récentes sur la cohérence dans l'imagerie médicale XAI.
- Navigation autonome : Pour les véhicules autonomes prédisant des angles de braquage ou identifiant des panneaux stop, l'analyse des cartes de saillance aide les ingénieurs à déboguer les défaillances en vérifiant si le modèle s'est correctement concentré sur la route plutôt que d'être distrait par un paysage hors sujet.
Link to this sectionDistinguer les termes associés#
Il est fortement recommandé de différencier les cartes de saillance d'autres concepts du glossaire de l'IA pour comprendre leur rôle spécifique dans l'apprentissage profond (DL) :
- Cartes de saillance vs Cartes d'activation de classe (CAM) : Alors que les cartes de saillance de base calculent l'importance au niveau du pixel brut, les techniques CAM comme Grad-CAM analysent l'importance au niveau des cartes de caractéristiques de haut niveau au sein de la dernière couche convolutive du réseau. De nouveaux benchmarks continuent d'affiner la façon dont nous évaluons les explications visuelles et les CAM à travers les jeux de données.
- Cartes de saillance vs Interprétabilité mécaniste : La cartographie de saillance est une technique post-hoc qui montre simplement où regarde un modèle. En revanche, l'interprétabilité mécaniste va plus loin pour effectuer une rétro-ingénierie sur le comment et le pourquoi des neurones ou circuits algorithmiques spécifiques ont calculé cette concentration.
- Cartes de saillance vs IA explicable (XAI) : L'XAI est la discipline générale dédiée à rendre l'IA transparente, tandis que les cartes de saillance ne sont qu'un outil spécifique au sein de cette boîte à outils, souvent souligné comme une technique d'explicabilité Google Cloud critique. Le domaine évolue rapidement, passant des pixels bruts à une taxonomie alignée sur l'humain pour les explications mappant des données conceptuelles.
Link to this sectionExtraire la saillance via le code#
Comprendre comment un réseau neuronal attribue l'importance peut être fait par programmation en utilisant des frameworks d'apprentissage profond comme PyTorch. L'extrait suivant démontre les mathématiques fondamentales derrière l'extraction d'une carte de saillance de base (attribution basée sur le gradient) à partir d'un modèle de classification d'images pré-entraîné.
import torch
from torchvision.models import resnet18
# Load a pre-trained model in evaluation mode
model = resnet18(weights="DEFAULT").eval()
# Create a dummy image tensor and explicitly require gradients
input_image = torch.randn(1, 3, 224, 224, requires_grad=True)
# Forward pass: get predictions for the input image
output = model(input_image)
# Backward pass: compute gradients for the highest scoring class
output[0, output.argmax()].backward()
# Saliency map is the maximum absolute gradient across the 3 color channels
saliency_map, _ = torch.max(input_image.grad.data.abs(), dim=1)
print(f"Generated Saliency Map Shape: {saliency_map.shape}")Pour des flux de travail de plus haut niveau impliquant la détection d'objets ou le dessin de boîtes englobantes, des outils comme la plateforme Ultralytics aident les développeurs à annoter de manière transparente des jeux de données, surveiller des expériences et visualiser les sorties de modèles comme l'état de l'art Ultralytics YOLO26. En évaluant continuellement les inférences visuelles parallèlement au déploiement de modèles, les équipes peuvent construire et faire évoluer des systèmes d'IA beaucoup plus fiables et transparents.






