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

Cross-Entropy Loss

Der Kreuzentropieverlust vergleicht vorhergesagte Klassenwahrscheinlichkeiten mit den Zielbezeichnungen und unterstützt Klassifikations- und Segmentierungsmodelle während des Trainings.

Der Kreuzentropieverlust misst, wie genau die vorhergesagten Klassenwahrscheinlichkeiten eines Modells mit den Zielbezeichnungen übereinstimmen. Er weist eine geringe Strafe zu, wenn die richtige Klasse eine hohe Wahrscheinlichkeit erhält, und eine hohe Strafe, wenn diese Wahrscheinlichkeit niedrig ist. Als Verlustfunktion für überwachtes Lernen liefert er ein Ziel, das während des Trainings minimiert wird.

Claude Shannons Eine mathematische Theorie der Kommunikation aus dem Jahr 1948 legte die Grundlage für das Entropiekonzept. D. F. Kerridge führte das Kreuzentropiemaß 1961 in seiner Arbeit Ungenauigkeit und Schlussfolgerung als „Ungenauigkeit“ ein. In der Klassifikation ist Log-Loss ein Synonym; sowohl logistische Regression als auch neuronale Klassifikatoren verwenden ihn.

So funktioniert der Kreuzentropieverlust#

Für ein Beispiel mit einer korrekten Klasse lautet die ungewichtete Kreuzentropie loss = -ln(p_correct). Eine Wahrscheinlichkeit von 0.9 für die korrekte Klasse ergibt einen Verlust von etwa 0.105; 0.1 ergibt etwa 2.303. Natürliche Logarithmen drücken das Ergebnis in der Einheit Nat aus. Beim Training werden diese Strafen üblicherweise über einen Stapel von Beispielen gemittelt.

Allgemeiner ausgedrückt multipliziert die Kreuzentropie jede Zielwahrscheinlichkeit mit dem negativen Logarithmus der zugehörigen vorhergesagten Wahrscheinlichkeit und summiert die Werte über alle Klassen. Bei einem One-Hot-Ziel erhält die korrekte Klasse den Wert 1 und alle anderen den Wert 0, sodass nur der Term der korrekten Klasse übrig bleibt. Bei ungewichteten One-Hot-Zielen ist die Minimierung der Kreuzentropie gleichbedeutend mit der Maximierung der Wahrscheinlichkeit der beobachteten Bezeichnungen. Backpropagation berechnet Gradienten, und der Gradientenabstieg aktualisiert die Parameter des Modells.

Binäre, kategoriale und sparsame Kreuzentropie#

Welche Form geeignet ist, hängt von den Bezeichnungen ab:

  • Binäre Kreuzentropie mit Sigmoid: Für ein Ziel y mit dem Wert 0 oder 1 und die vorhergesagte Wahrscheinlichkeit p der Klasse 1 lautet der Verlust -[y * ln(p) + (1 - y) * ln(1 - p)]. Bei der Mehrfachlabel-Klassifikation wird die Funktion unabhängig auf Bezeichnungen angewendet, die gleichzeitig zutreffen können.
  • Kategoriale Kreuzentropie mit Softmax: Sie bewertet sich gegenseitig ausschließende Klassen, deren Wahrscheinlichkeiten sich zu 1 summieren. Softmax wandelt die unverarbeiteten Modellwerte, sogenannte Logits, in diese Verteilung um.
  • Sparsame kategoriale Kreuzentropie: Dabei wird ein ganzzahliger Klassenindex statt eines One-Hot-Vektors verwendet. Sie berechnet denselben Verlust; „sparsam“ bezieht sich auf die Kodierung des Ziels.

Weiche Ziele verteilen die Wahrscheinlichkeit auf mehrere Klassen. Sie kommen bei der Glättung von Bezeichnungen und der Wissensdestillation zum Einsatz, bei der ein Schüler aus der Wahrscheinlichkeitsverteilung eines Lehrers lernt.

Kreuzentropie in PyTorch berechnen#

PyTorch akzeptiert unverarbeitete Logits in CrossEntropyLoss. Bei Zielen in Form von Klassenindizes entspricht die Berechnung der Anwendung von Log-Softmax, gefolgt von der negativen Log-Likelihood. Wird zuvor Softmax angewendet, behandelt die Funktion Wahrscheinlichkeiten als Logits, wodurch sich der Verlust und die Gradienten ändern. Für ganzzahlige Ziele wird torch.long verwendet; Ziele in Form von Wahrscheinlichkeiten verwenden Gleitkommawerte und haben dieselbe Form wie die Logits.

import torch
from torch import nn

# Both predictions select class 0; the second is more confident.
logits = torch.tensor([[2.0, 0.0, 0.0], [4.0, 0.0, 0.0]])
targets = torch.tensor([0, 0], dtype=torch.long)
loss_fn = nn.CrossEntropyLoss(reduction="none")

losses = loss_fn(logits, targets)
print(f"Lower confidence loss: {losses[0].item():.4f}")
print(f"Higher confidence loss: {losses[1].item():.4f}")

Die Verluste sinken von 0.2395 auf 0.0360, während beide Vorhersagen korrekt bleiben. Genauigkeit erfasst Klassenentscheidungen; die Kreuzentropie berücksichtigt zusätzlich die Wahrscheinlichkeitszuweisungen. Für binäre oder Mehrfachlabel-Logits kombiniert BCEWithLogitsLoss Sigmoid und binäre Kreuzentropie.

Anwendungen in der Computer Vision#

Bei der Einzelklassen-Bildklassifikation wird die Kreuzentropie verwendet, um ein Modell darauf zu trainieren, jedem Bild eine Klasse zuzuweisen. Beim Klassifikationstraining mit Ultralytics YOLO26 wird der mittlere Kreuzentropieverlust über die Klassenlogits verwendet, um den Klassifikator auf die beschriftete Kategorie auszurichten.

Bei der Segmentierung medizinischer Bilder wurde das ursprüngliche U-Net mit biomedizinischen Mikroskopiebildern und pixelweisem Softmax sowie gewichteter Kreuzentropie trainiert. Seine Gewichtungsmaske erhöhte die Strafen an den Grenzen zwischen aneinanderliegenden Zellen und half so, benachbarte Zellen voneinander zu trennen. Bei der semantischen Segmentierung wird dieses Klassifikationsverfahren auf jedes Pixel angewendet.

Verlustwerte interpretieren#

Die diskrete Kreuzentropie ist bei gültigen Zielverteilungen und nichtnegativen Gewichten nichtnegativ. Bei einem ungewichteten harten Ziel erreicht sie den Wert null, wenn die korrekte Klasse die Wahrscheinlichkeit 1 erhält, und wächst unbegrenzt, wenn sich diese Wahrscheinlichkeit null nähert. Negative Werte deuten auf einen Fehler bei der Eingabe oder Implementierung hin, etwa negative Zieleinträge oder Gewichte.

Die Entropie misst die Unsicherheit innerhalb einer einzelnen Verteilung; die Kreuzentropie vergleicht Ziele mit Vorhersagen. Die Kreuzentropie entspricht der Zielentropie plus der Kullback-Leibler-Divergenz, also der zusätzlichen Strafe für Abweichungen. Weiche Ziele haben daher einen positiven Mindestwert, wenn ihre Entropie positiv ist.

Die Klassengewichtung erhöht den Anteil ausgewählter Klassen am Verlust. Focal Loss verringert den Anteil einfacher Beispiele, um das Ungleichgewicht zwischen Vorder- und Hintergrund bei der Objekterkennung auszugleichen. Bei einer gleichmäßigen Vorhersage entspricht der ungewichtete Log-Loss ln(number_of_classes): etwa 0.693 bei zwei Klassen und 2.303 bei zehn.

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