Temperature
En parameter, der skalerer logits før softmax for at styre tilfældigheden i tokensampling.
Kort fortalt
Temperaturen bestemmer, hvor kreativ eller forudsigelig en AI's tekstgenerering er – høj temperatur giver mere variation, lav temperatur giver mere deterministiske svar.
- Kategori
- teknik
- Niveau
- øvet
- Udtale
- tɛmpəˈʁaˌtuɐ̯
Betydninger
1- 1
En parameter i sandsynlighedsmodeller, der skalerer logits for at påvirke spredningen af den resulterende softmax-fordeling.
- Jeg satte temperaturen til 0,7 for at få mere varieret historiefortælling uden at det blev for kaotisk. — Eksempel fra praksis, 2024
- En temperatur på 0 gør modellen deterministisk, da den altid vælger det mest sandsynlige token. — Eksempel fra praksis, 2024
Hvornår bruges det
Temperaturen bruges i tekstgenereringsmodeller som GPT til at justere balancen mellem kreativitet og konsistens. Den er ofte justerbar via API-kald og typisk sat mellem 0 og 2, hvor 1 er standard.
Formel
P(t) = exp(z_t / T) / Σ_j exp(z_j / T), hvor z er logits og T er temperature.Kodeeksempel
import numpy as np
def softmax_with_temperature(logits, temperature):
logits = logits / temperature
exps = np.exp(logits - np.max(logits))
return exps / np.sum(exps)
logits = np.array([2.0, 1.0, 0.1])
print(softmax_with_temperature(logits, 1.0))
print(softmax_with_temperature(logits, 0.5))Eksempel på temperaturjusteret softmax i Python. Højere temperatur giver mere jævn fordeling.
Oprindelse
Termen stammer fra statistisk mekanik og termodynamik, hvor temperaturen beskriver partiklernes kinetiske energi; i AI overføres begrebet til at kontrollere tilfældigheden i sandsynlighedsfordelinger.
Kilder
2- Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning. MIT Press.
- OpenAI API Reference (2023). Language models – Temperature.