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

Temperatur

Das Modell wählt gewöhnlich ähnliche Fortsetzungen, und du möchtest die Vielfalt der Zufallsauswahl steuern. Du veränderst weder sein Wissen noch seine Gewichte. Du veränderst nur, wie stark der Vorsprung der höchstbewerteten Kandidaten ihre Wahrscheinlichkeiten beeinflusst.

Temperature ist ein Parameter, durch den die Bewertungen der Kandidaten, die sogenannten Logits, vor der Umrechnung durch Softmax geteilt werden. Ein kleinerer positiver Wert konzentriert die Wahrscheinlichkeit auf die Spitzenreiter, ein größerer gleicht die Chancen an.

Im veranschaulichenden Beispiel zweier Kandidaten verändern sich die Wahrscheinlichkeiten 80% und 20% bei T=1 auf etwa 67% und 33% bei T=2. Der zweite kann häufiger gezogen werden, bleibt aber weiterhin Zweiter. Eine positive Temperatur verändert die Reihenfolge feststehender Bewertungen nicht.

Die bloße Auswahl des Maximums ohne Zufallsauswahl verändert den Gewinner deshalb nicht. Temperatur ist auch kein Maß für Kreativität oder Wahrheit: Sie erhöht die Vielfalt der Versuche, die sowohl interessante als auch unpassende Antworten hervorbringen kann. Die Demonstration zeigt allein die Änderung der Verhältnisse.

Mechanismus und Details

pi(T)=exp⁡(zi/T)∑j=1nexp⁡(zj/T)p_i(T)=\frac{\exp(z_i/T)}{\sum_{j=1}^{n}\exp(z_j/T)}

ziz_i bezeichnet den Logit des Kandidaten ii und nn die Anzahl der Kandidaten. Für T=1T=1 erhalten wir den gewöhnlichen Softmax. Ein kleineres positives TT verstärkt den Vorsprung der höchsten Logits, ein größeres flacht die Verteilung ab. Diese Formel stellen Hinton, Vinyals und Dean, Distilling the Knowledge in a Neural Network, §2 im Zusammenhang mit dem Lernen durch Wissensdestillation vor.

Beispiel mit zwei Kandidaten

Nehmen wir die Logits [ln⁡4;0][\ln 4;0]. Bei T=1T=1 betragen die Wahrscheinlichkeiten [0,8;0,2][0{,}8;0{,}2]. Erhöhen wir TT auf 2, erhalten wir [2/3;1/3][2/3;1/3]. Der zweite Kandidat hat beim Ziehen eine größere Chance, bleibt aber auf dem zweiten Platz. Das ist ein eigenes Rechenbeispiel.

Bei der autoregressiven Sprachmodellierung kann diese Skalierung in jedem Generierungsschritt angewendet werden, nachdem der LM Head die Logits bestimmt hat. Die Dokumentation von Transformers: TemperatureLogitsWarper beschreibt diesen Mechanismus für Sampling und weist darauf hin, dass er in generate die Einstellung do_sample=True voraussetzt.

Bei feststehenden Logits bleibt deren Reihenfolge durch die Division durch ein positives TT erhalten. Die bloße Auswahl des Maximums ohne Ziehen bestimmt somit denselben Kandidaten. Für T=0T=0 ist die Formel nicht definiert; im Nenner darf keine Null eingesetzt werden.

Eine Änderung der Temperatur während der Generierung trainiert keine neuen Gewichte und prüft nicht den Wahrheitsgehalt der Aussagen. Sie steuert die Wahrscheinlichkeiten der nächsten Auswahl. Größere Antwortvielfalt allein ist daher kein Beleg für bessere Qualität.