Zurück zum Archiv
#ai#llm#glossary#aigen

Kreuzentropie

Zwei Modelle nennen dasselbe Wort als beste Fortsetzung, aber das erste gibt ihm 80% Wahrscheinlichkeit, das zweite nur 20%. Den Gewinner allein zu prüfen übersieht diesen Unterschied. Beim Lernen brauchen wir eine Bewertung, die zeigt, wie stark das Modell das richtige Ergebnis unterstützt.

Cross-entropy misst, wie gut die vorhergesagten Wahrscheinlichkeiten zum Zielergebnis passen. Bei einem einzigen korrekten Token — einem Textstück aus den Daten — ist die Strafe der negative Logarithmus seiner zugewiesenen Wahrscheinlichkeit. Durch den Logarithmus bedeutet eine sehr geringe Wahrscheinlichkeit der richtigen Antwort eine hohe Strafe.

Für 0,8 beträgt die Strafe etwa 0,223, für 0,2 etwa 1,609, jeweils mit dem natürlichen Logarithmus. Das Training kann also die Sicherheit richtiger Vorhersagen verbessern, selbst wenn der Gewinner bereits korrekt ist.

Softmax bestimmt die Wahrscheinlichkeiten; Cross-entropy bewertet sie gegenüber dem Ziel. Ein kleiner Fehler auf den Daten beweist nicht, dass das Modell in beliebigen Gesprächen die Wahrheit sagt. Das folgende Experiment zeigt den Einfluss der zugewiesenen Wahrscheinlichkeit auf die Strafe.

Mechanismus und Details

H(q,p)=−∑i=1nqiln⁡piH(q,p)=-\sum_{i=1}^{n}q_i\ln p_i

qiq_i bezeichnet die Zielwahrscheinlichkeit des Kandidaten ii, pip_i die vorhergesagte Wahrscheinlichkeit. Gibt das Label genau ein korrektes Token yy an, vereinfacht sich die gesamte Formel zu −ln⁡py-\ln p_y. Softmax kann aus Logits eine Verteilung bestimmen; die Kreuzentropie bewertet sie im Verhältnis zum Ziel. Die Dokumentation PyTorch: CrossEntropyLoss beschreibt beide Arten von Labels. Diese konkrete Funktion nimmt direkt Logits entgegen. Sie sollten daher vorher nicht durch Softmax geschickt werden.

Was der Verlustwert bedeutet

Eigenes Beispiel: Das Modell weist dem korrekten Token die Wahrscheinlichkeit 0,8 zu. Der Verlust beträgt ungefähr 0,223. Bei einer Wahrscheinlichkeit von 0,2 steigt er auf ungefähr 1,609. Wir verwenden den natürlichen Logarithmus. Zwei Modelle können dasselbe Token als das wahrscheinlichste angeben und trotzdem unterschiedliche Verluste erzielen, denn auch der ihm zugewiesene Wert zählt.

Bei der autoregressiven Sprachmodellierung ist das Ziel das nächste Token im Text. Diesen mittleren Verlust zu minimieren entspricht der Maximierung der Log-Likelihood der Daten, sofern zusätzliche Regularisierungsterme unberücksichtigt bleiben. Diese Form des Ziels beschreiben Bengio et al., A Neural Probabilistic Language Model, §2.

Der Mittelwert muss über die richtigen Positionen gebildet werden: Padding und von der Bewertung ausgeschlossene Tokens sollten ihn nicht verändern. Bei weichen Ziellabels darf die vollständige Summe nicht durch ein einzelnes −ln⁡py-\ln p_y ersetzt werden. Mit dem gemittelten Verlust einzelner Tokens hängt die Perplexität zusammen.