Glossar

Softmax

Entdecken Sie, wie Softmax Punkte in Wahrscheinlichkeiten für Klassifizierungsaufgaben in der KI umwandelt und damit Bilderkennung und NLP-Erfolge ermöglicht.

Softmax ist eine mathematische Funktion, die einen Vektor roher, reellwertiger Punktwerte, oft Logits genannt, in einen Vektor von Wahrscheinlichkeiten umwandelt. Im Kontext des maschinellen Lernens (ML) wird Softmax hauptsächlich als Aktivierungsfunktion in der Ausgabeschicht eines neuronalen Netzes verwendet. Seine Hauptaufgabe besteht darin, die endgültigen Ergebnisse des Netzes in eine aussagekräftige Wahrscheinlichkeitsverteilung über mehrere, sich gegenseitig ausschließende Klassen umzuwandeln. Die sich ergebenden Wahrscheinlichkeiten summieren sich zu eins, so dass sie leicht als das Vertrauen des Modells für jedes mögliche Ergebnis interpretiert werden können.

Wie Softmax funktioniert

Stellen Sie sich vor, ein neuronales Netz versucht zu entscheiden, zu welcher Kategorie ein Bild gehört. Die letzte Schicht des Netzwerks erzeugt eine Reihe von Rohwerten für jede Kategorie. Eine höhere Punktzahl deutet darauf hin, dass das Modell eher zu dieser Kategorie tendiert, aber diese Punktzahlen sind nicht standardisiert und es kann schwierig sein, direkt damit zu arbeiten.

Die Softmax-Funktion nimmt diese Werte und führt zwei Hauptschritte durch:

  1. Es wendet die Exponentialfunktion auf jede Punktzahl an. Dadurch werden alle Werte positiv und die Unterschiede zwischen ihnen werden übertrieben - größere Punktzahlen werden proportional viel größer.
  2. Es normalisiert diese potenzierten Werte, indem es jeden Wert durch seine Summe teilt. In diesem Schritt werden die Werte nach unten skaliert, so dass sie in der Summe 1,0 ergeben, wodurch eine Wahrscheinlichkeitsverteilung entsteht.

Die endgültige Ausgabe ist eine Liste von Wahrscheinlichkeiten, wobei jeder Wert die vom Modell vorhergesagte Wahrscheinlichkeit darstellt, dass die Eingabe zu einer bestimmten Klasse gehört. Die Klasse mit der höchsten Wahrscheinlichkeit wird dann als endgültige Vorhersage ausgewählt.

Anwendungen in AI und maschinellem Lernen

Softmax ist grundlegend für jedes Deep-Learning-Modell, das eine Mehrklassen-Klassifizierung durchführt. Seine Fähigkeit, eine klare, probabilistische Ausgabe zu liefern, macht es in verschiedenen Bereichen von unschätzbarem Wert.

  • Image Classification: This is the most common use case. A Convolutional Neural Network (CNN) trained on a dataset like ImageNet will use Softmax in its final layer. For an image of a pet, the model might output probabilities like {Dog: 0.9, Cat: 0.08, Rabbit: 0.02}, clearly indicating its prediction. Models like Ultralytics YOLO use this for classification tasks.
  • Natürliche Sprachverarbeitung (NLP): Bei der Sprachmodellierung wird Softmax verwendet, um das nächste Wort in einer Sequenz vorherzusagen. Ein Modell wie ein Transformer berechnet eine Punktzahl für jedes Wort in seinem Vokabular und verwendet Softmax, um diese Punktzahlen in Wahrscheinlichkeiten umzuwandeln. Dies ist eine Kernkomponente von großen Sprachmodellen (Large Language Models, LLMs) und ermöglicht Anwendungen von der maschinellen Übersetzung bis zur Texterstellung.
  • Medizinische Bildanalyse: Bei der Analyse medizinischer Scans zur Klassifizierung verschiedener Gewebearten oder zur Identifizierung von Pathologien (z. B. gutartig, bösartig oder gesund) verwendet ein Modell Softmax, um jeder Diagnose eine Wahrscheinlichkeit zuzuordnen und so den Ärzten zu helfen, fundiertere Entscheidungen zu treffen.
  • Reinforcement Learning: Beim richtlinienbasierten Verstärkungslernen kann Softmax verwendet werden, um die gelernten Werte verschiedener Aktionen in eine Richtlinie umzuwandeln, d. h. eine Wahrscheinlichkeitsverteilung über die möglichen Aktionen, die ein Agent ausführen kann.

Softmax vs. andere Aktivierungsfunktionen

Es ist wichtig, Softmax von anderen gängigen Aktivierungsfunktionen zu unterscheiden, da sie unterschiedlichen Zwecken dienen.

  • Sigmoid: Die Sigmoid-Funktion gibt ebenfalls Werte zwischen 0 und 1 aus, wird aber für die binäre Klassifizierung (eine Klasse im Vergleich zu einer anderen) oder für die Multi-Label-Klassifizierung verwendet, bei der eine Eingabe gleichzeitig zu mehreren Klassen gehören kann. Zum Beispiel könnte ein Film sowohl als "Komödie" als auch als "Action" klassifiziert werden. Im Gegensatz dazu ist Softmax für die Mehrklassenklassifizierung gedacht, bei der sich die Klassen gegenseitig ausschließen - eine handgeschriebene Ziffer muss eine 7 oder eine 8 sein, aber nicht beides.
  • ReLU (Rectified Linear Unit): ReLU und ihre Varianten wie Leaky ReLU und SiLU werden in den verborgenen Schichten eines neuronalen Netzes verwendet. Ihre Hauptaufgabe besteht darin, Nichtlinearität einzuführen, so dass das Modell komplexe Muster in den Daten lernen kann. Sie erzeugen keine Wahrscheinlichkeiten und werden nicht als Ausgabefunktionen für die Klassifizierung verwendet.
  • Tanh (Hyperbolischer Tangens): Tanh zerlegt Werte in einen Bereich zwischen -1 und 1. Wie ReLU wird es in versteckten Schichten verwendet, insbesondere in älteren rekurrenten neuronalen Netzwerken (RNN). Sie eignet sich nicht zur Erzeugung von Wahrscheinlichkeitsausgaben für Klassifizierungsaufgaben.

Praktische Überlegungen

Obwohl Softmax sehr leistungsfähig ist, kann es auf sehr große Eingabewerte empfindlich reagieren, was manchmal zu numerischer Instabilität (Über- oder Unterlauf) führen kann. Um dies zu beheben, implementieren moderne Deep-Learning-Frameworks wie PyTorch und TensorFlow numerisch stabile Versionen von Softmax hinter den Kulissen.

Softmax wird bei der Modellschulung fast immer mit einer speziellen Verlustfunktion namens Cross-Entropy Loss (oder Log Loss) gepaart. Diese Kombination ist sehr effektiv für das Training von Mehrklassen-Klassifikatoren. Das Verständnis des Verhaltens von Softmax ist entscheidend für eine effektive Modellschulung und -interpretation, die mithilfe von Plattformen wie Ultralytics HUB zur Rationalisierung von Experimenten und Einsätzen verwaltet und verfolgt werden kann.

Werden Sie Mitglied der Ultralytics-Gemeinschaft

Beteiligen Sie sich an der Zukunft der KI. Vernetzen Sie sich, arbeiten Sie zusammen und wachsen Sie mit globalen Innovatoren

Jetzt beitreten
Link in die Zwischenablage kopiert