Ultralytics YOLO27: Trag dich in die Warteliste ein.
YOLO lizenzieren
Zurück zum Ultralytics-Glossar

Saliency Maps

Salienzkarten sind Heatmaps, die bewerten, wie stark jedes Pixel die Vorhersage eines Modells beeinflusst hat. Gradient-, CAM- und Perturbationsmethoden, ihre Grenzen und Anwendungen.

Eine Salienzkarte ist eine Heatmap, die bewertet, wie stark jedes Pixel eines Eingabebildes die Ausgabe eines neuronalen Netzes beeinflusst hat, üblicherweise den Wert einer vorhergesagten Klasse. Sie ist ein gängiges Werkzeug der erklärbaren KI (XAI) in der Computer Vision: Hebt die Karte das Objekt hervor, stützt das die Vorhersage. Hebt sie hingegen ein Wasserzeichen, den Hintergrund oder einen Bildrand hervor, deckt sie eine Abkürzung auf. Eine Salienzkarte stellt einen Bezug zwischen der Ausgabe und den Eingabepixeln her. Dadurch unterscheidet sie sich von den internen Merkmalkarten eines Netzes und den Aufmerksamkeitsgewichten eines Vision Transformers, die zeigen, wo eine Schicht Informationen sammelt. In der Wahrnehmungsforschung bezeichnet der Begriff eine verwandte Idee: eine Karte, die anzeigt, worauf der Blick von Menschen in einer Szene fällt, wie beim Itti-Koch-Modell visueller Aufmerksamkeit.

So funktioniert Gradientensalienz#

Die Gradientensalienzkarte von Simonyan, Vedaldi und Zisserman (2013) nutzt Rückpropagierung, um den Gradienten eines Klassenwerts bezüglich des Eingabebilds statt der Modellgewichte zu berechnen. Der Betrag des Gradienten an einem Pixel zeigt, wie stark eine kleine Änderung an dieser Stelle den Wert verschieben würde. Der größte Absolutwert der drei Farbkanäle ergibt einen Wert pro Pixel. Für einen ImageNet-Klassifikator benötigt die Berechnung einen Vorwärts- und einen Rückwärtslauf in PyTorch:

import urllib.request

from PIL import Image
from torchvision.models import ResNet50_Weights, resnet50
from torchvision.utils import save_image

# Load an ImageNet classifier and track gradients on the input pixels
weights = ResNet50_Weights.DEFAULT
model = resnet50(weights=weights).eval()
image = Image.open(urllib.request.urlopen("https://ultralytics.com/images/bus.jpg"))
x = weights.transforms()(image).unsqueeze(0).requires_grad_()

# Backpropagate the top class score to the pixels
scores = model(x)
top = scores.argmax().item()
scores[0, top].backward()

# Saliency: largest absolute gradient across the color channels, scaled for display
saliency = x.grad.abs().amax(dim=1)
save_image((saliency / saliency.quantile(0.99)).clamp(max=1), "saliency.png")
print(f"Explained class: {weights.meta['categories'][top]}")

Die Ausgabe zeigt Explained class: minibus und speichert eine körnige Karte mit 224 × 224 Pixeln des mittleren Bildausschnitts, den der Klassifikator verarbeitet hat. Rohe Gradienten sind von Pixel zu Pixel verrauscht. Spätere Verfahren verringern dieses Rauschen durch Mittelung oder indem sie mit Merkmalkarten arbeiten.

Salienzverfahren#

  • SmoothGrad: Durch das Mitteln von Gradientenkarten vieler verrauschter Kopien des Bildes wird ein Großteil des Pixelrauschens entfernt.
  • Integrierte Gradienten: Werden Gradienten entlang eines Pfads von einem Ausgangsbild, etwa einem schwarzen Bild, bis zur Eingabe aufsummiert, ergeben die Pixelwerte zusammen die Differenz zwischen den beiden Klassenwerten.
  • Grad-CAM: Werden die Merkmalkarten der letzten Faltungsschicht mit ihrem durchschnittlichen Gradienten gewichtet und anschließend hochskaliert, entstehen grobe, aber klassenspezifische Bereiche. LayerCAM (2021) gewichtet jede Position einzeln, sodass auch frühere Schichten mit höherer Auflösung brauchbare Karten liefern.
  • Verdeckung und andere Störungsverfahren: Dabei werden Bildausschnitte verdeckt und gemessen, wie stark der Wert sinkt. Dafür sind keine Gradienten nötig, aber für jeden Ausschnitt ein Vorwärtslauf.

Ultralytics YOLO berechnet LayerCAM-Karten für die Objekterkennung und andere Aufgaben: Im Vorhersagemodus mit visualize=True gewichtet das Verfahren jede Position der Merkmalkarten, die in den Erkennungskopf eingehen, anhand ihres positiven Gradienten zum Klassenwert jeder sicheren Vorhersage und speichert eine gemeinsame Heatmap pro Bild.

from ultralytics import YOLO

# Eine LayerCAM-Heatmap der Belege für YOLO26-Erkennungen speichern
model = YOLO("yolo26n.pt")
results = model("https://ultralytics.com/images/bus.jpg", visualize=True)

Das Verfahren schreibt bus_cam.jpg in das Speicherverzeichnis des Laufs und erklärt damit bis zu 16 der stärksten unverarbeiteten Vorhersagen von YOLO26, die über dem Konfidenz-Schwellwert liegen, bevor NMS Duplikate entfernt. Mit classes=[0] werden nur die Personen in den Karten angezeigt.

Grenzen von Salienzkarten#

Eine Salienzkarte zeigt, auf welche Bereiche die Ausgabe empfindlich reagiert, nicht, wie das Modell schlussfolgert. Letzteres ist das Ziel der mechanistischen Interpretierbarkeit. Die Plausibilitätsprüfungen von Adebayo und Kollegen aus dem Jahr 2018 ergaben, dass manche beliebten Verfahren wie die geführte Rückpropagierung nahezu dieselbe Karte erzeugen, wenn die Modellgewichte zufällig belegt werden. Solche Karten spiegeln also eher Bildkanten als das trainierte Modell wider. Karten können sich außerdem bei kleinen Änderungen der Eingabe stark verändern, obwohl die Vorhersage gleich bleibt.

Anwendungen in der Praxis#

  • Abkürzungen finden: Heatmaps zeigten, dass ein auf dem Datensatz PASCAL VOC trainierter Klassifikator Pferde teilweise anhand eines Copyright-Vermerks erkannte, der auf vielen Pferdefotos zu sehen war – ein „Clever-Hans“-Verhalten, das sich an der Genauigkeit nicht erkennen ließ.
  • Medizinische Bildgebung: Entwickler von Klassifikatoren für Röntgenaufnahmen des Brustkorbs prüfen, ob die ausschlaggebenden Bildbereiche in der Lunge liegen und nicht auf dem Scannertext oder medizinischen Hilfsmitteln wie Thoraxdrainagen. Es wurde gezeigt, dass Klassifikatoren für Pneumothorax auf solche Hilfsmittel zurückgreifen.
  • Bildzuschnitt: Twitter schnitt Vorschaubilder um den Punkt herum zu, an den ein Modell für menschliche Aufmerksamkeit den ersten Blick von Betrachtern vorhersagte. Eine Prüfung der Unternehmensforscher aus dem Jahr 2021 ergab, dass die Zuschnitte manche Personengruppen systematisch gegenüber anderen bevorzugten.

Lösungen entdecken

Computer Vision im Sport

Computer Vision im Sport

Entdecke, wie Ultralytics YOLO die Sportbildanalyse voranbringt – mit Spieler- und Ballverfolgung, Leistungsanalysen, Erkenntnissen für das Coaching und der Rehabilitation von Athleten.
Mehr erfahren
Computer Vision für Luftbilder

Computer Vision für Luftbilder

Verwandle Drohnen- und Luftbilder mit Ultralytics YOLO in Echtzeit-Erkenntnisse für Landwirtschaft, Aquakultur, Naturschutz und Geodatenanalyse.
Mehr erfahren
Computer Vision in der Luft- und Raumfahrt

Computer Vision in der Luft- und Raumfahrt

Setze Computer Vision in der Luft- und Raumfahrt mit Ultralytics YOLO ein – für Flugzeuginspektionen, die Erkennung von Fremdkörpern auf Start- und Landebahnen, den Bodenbetrieb am Flughafen und die Erkennung von Verbundwerkstofffehlern.
Mehr erfahren
Computer Vision im Sicherheitsbereich

Computer Vision im Sicherheitsbereich

Schütze jeden Standort mit Ultralytics YOLO-Modellen. Vision-KI ermöglicht die Überwachung von Grundstücksgrenzen, die Erkennung von Bedrohungen, die Kennzeichenerkennung und die Sicherheit am Arbeitsplatz.
Mehr erfahren
Computer Vision in der Robotik

Computer Vision in der Robotik

Mach Maschinen mit Ultralytics YOLO-Modellen leistungsfähiger. Vision-KI in der Robotik ermöglicht autonome Navigation, Wahrnehmung, Objektverfolgung und Steuerung in Echtzeit.
Mehr erfahren
Bildverarbeitung in der Logistik

Bildverarbeitung in der Logistik

Optimiere die Logistik mit Ultralytics YOLO-Modellen. Vision AI ermöglicht die Paketprüfung, Sortierung und Fahrzeugverfolgung sowie die Sicherheitsüberwachung von Lagerhäusern in Echtzeit.
Mehr erfahren
Bildverarbeitung im Einzelhandel

Bildverarbeitung im Einzelhandel

Gestalte den Einzelhandel mit Ultralytics YOLO-Modellen neu. Vision AI ermöglicht Bestandsverfolgung, Regalüberwachung und Warteschlangenmanagement und liefert bessere Einblicke in das Kundenverhalten.
Mehr erfahren
Bildverarbeitung im Gesundheitswesen

Bildverarbeitung im Gesundheitswesen

Entwickle Lösungen für das Gesundheitswesen mit Ultralytics YOLO-Modellen. Vision AI ermöglicht im Gesundheitswesen schnellere medizinische Bildgebung, bessere Diagnostik und die Überwachung von Patienten.
Mehr erfahren
Computer Vision in der Fertigung

Computer Vision in der Fertigung

Optimiere die Fertigung mit Ultralytics-YOLO-Modellen. Vision AI ermöglicht Qualitätskontrolle, Fehlererkennung, die Überprüfung der Einhaltung von Vorgaben zu persönlicher Schutzausrüstung und die Automatisierung von Montagelinien.
Mehr erfahren
Computer Vision in der Automobilbranche

Computer Vision in der Automobilbranche

Setze Computer Vision in der Automobilbranche mit Ultralytics-YOLO-Modellen ein. Vision AI verbessert die Verkehrssicherheit, Fahrerassistenz und Fahrzeugautomatisierung – für intelligentere Straßen.
Mehr erfahren
Computer Vision in der Landwirtschaft

Computer Vision in der Landwirtschaft

Setze mit Ultralytics YOLO-Modellen KI für Bildverarbeitung in der intelligenten Landwirtschaft ein. Ermögliche die Überwachung von Nutzpflanzen, die Verfolgung von Nutztieren und Präzisionslandwirtschaft für höhere und nachhaltigere Erträge.
Mehr erfahren

Lass uns gemeinsam die Zukunft der KI gestalten!

Starte deine Reise in die Zukunft des maschinellen Lernens