temperaturparameter

En parameter, der styrer fordelingens 'skarphed' i softmax-funktionen, så en høj temperatur giver mere tilfældige outputs og en lav temperatur giver mere deterministiske outputs.

Kort fortalt

Temperaturparameteren bestemmer, hvor 'kreativ' en AI-model skal være: jo højere temperatur, jo mere tilfældige og varierede svar, mens lav temperatur giver mere forudsigelige og konservative svar.

Kategori
begreb
Niveau
øvet

Betydninger

1
  1. 1

    En skalarparameter T, der divideres med logitterne før softmax, således at en højere T udjævner sandsynlighedsfordelingen og en lavere T gør den skarpere.

    • Ved at sætte temperaturen til 0.7 opnås en god balance mellem kreativitet og sammenhæng i tekstgenereringen.
    • En temperatur på 2.0 giver meget tilfældige outputs, hvilket kan være nyttigt til at udforske alternative svar.

Hvornår bruges det

Temperaturparameteren justeres ofte under inferens for at balancere mellem kreativitet og præcision. En værdi på 0 giver deterministisk output (argmax), mens værdier over 1 øger tilfældigheden. Den bruges typisk i sprogmodeller som GPT til at styre tekstgenereringens variation.

Formel

p_i = exp(z_i / T) / sum_j exp(z_j / T)

Kodeeksempel

import numpy as np
def softmax_with_temperature(logits, temperature=1.0):
    logits = logits / temperature
    exp_logits = np.exp(logits - np.max(logits))
    return exp_logits / np.sum(exp_logits)

Eksempel på softmax med temperaturparameter i Python.

Oprindelse

Begrebet stammer fra statistisk mekanik, hvor temperatur regulerer graden af tilfældighed i et system. Det blev overført til maskinlæring via Boltzmann-maskiner og senere til softmax-sampling i neurale netværk.

Afledte ord

1

Kilder

3
  • OpenAI API documentation on parameter details
  • Hugging Face Transformers documentation on generation strategies
  • Generating Sequences With Recurrent Neural Networks (Graves, 2013)