softmax-temperatur

Softmax-temperatur er en skalarparameter, der styrer 'blødheden' af softmax-funktionens outputfordeling.

Kort fortalt

Softmax-temperatur bestemmer, hvor 'sikker' eller 'tilfældig' en models forudsigelser skal være.

Kategori
teknik
Niveau
øvet

Betydninger

1
  1. 1

    Parameter i softmax-funktionen, der kontrollerer skarpheden af den resulterende sandsynlighedsfordeling.

    • Ved at sænke softmax-temperaturen bliver modellens forudsigelser mere deterministiske.
    • I tekstgenerering bruges en høj softmax-temperatur for at øge variationen i outputtet.

Hvornår bruges det

Softmax-temperatur bruges typisk i klassifikationsmodeller og sprogmodeller til at justere sandsynlighedsfordelingen. En lav temperatur gør fordelingen skarpere (mere deterministisk), mens en høj temperatur gør den fladere (mere tilfældig). Det anvendes ofte i tekstgenerering for at kontrollere kreativiteten.

Formel

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

Kodeeksempel

import torch
logits = torch.tensor([2.0, 1.0, 0.1])
temperature = 0.5
probs = torch.softmax(logits / temperature, dim=0)

Eksempel på softmax med temperatur i PyTorch.

Oprindelse

Termen er lånt fra statistisk fysik, hvor temperatur styrer Boltzmann-fordelingen. I maskinlæring blev den introduceret som en måde at justere 'blødheden' af softmax-funktionen.

Kilder

1