Back to archive
#ai#llm#glossary#aigen

Temperature

Model zwykle wybiera podobne kontynuacje, a Ty chcesz regulować różnorodność losowania. Nie zmieniasz jego wiedzy ani wag. Zmieniasz tylko to, jak mocno przewaga najlepiej ocenionych kandydatów wpływa na ich szanse.

Temperature to parametr dzielący oceny kandydatów, zwane logitami, przed przeliczeniem ich przez Softmax. Mniejsza dodatnia wartość skupia prawdopodobieństwo na liderach, większa wyrównuje szanse.

W ilustracyjnym przykładzie dwóch kandydatów szanse 80% i 20% przy T=1 zmieniają się na około 67% i 33% przy T=2. Drugi częściej może zostać wylosowany, choć nadal jest drugi. Dodatnia temperatura nie zmienia kolejności ustalonych ocen.

Dlatego sam wybór maksimum, bez losowania, nie zmieni zwycięzcy. Temperatura nie jest też miarą kreatywności ani prawdziwości: zwiększa różnorodność prób, która może przynieść zarówno ciekawe, jak i nietrafione odpowiedzi. Demonstracja pokazuje zmianę samych proporcji.

Mechanizm i szczegóły

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 oznacza logit kandydata ii, a nn liczbę kandydatów. Dla T=1T=1 otrzymujemy zwykły Softmax. Mniejsze dodatnie TT wzmacnia przewagę najwyższych logitów, a większe spłaszcza rozkład. Tę postać wzoru przedstawiają Hinton, Vinyals i Dean, Distilling the Knowledge in a Neural Network, §2, w kontekście uczenia przez distillation.

Przykład dla dwóch kandydatów

Weźmy logity [ln⁡4;0][\ln 4;0]. Przy T=1T=1 prawdopodobieństwa wynoszą [0,8;0,2][0{,}8;0{,}2]. Po zwiększeniu TT do 2 otrzymujemy [2/3;1/3][2/3;1/3]. Drugi kandydat zyskuje większą szansę w losowaniu, choć nadal zajmuje drugie miejsce. To własny przykład rachunkowy.

W Autoregressive Language Modeling takie skalowanie można stosować przy każdym kroku generowania, po wyznaczeniu logitów przez LM head. Dokumentacja Transformers: TemperatureLogitsWarper opisuje ten mechanizm dla sampling i zaznacza, że w generate wymaga on do_sample=True.

Dla ustalonych logitów podzielenie przez dodatnie TT zachowuje ich kolejność. Samo wybieranie maksimum, bez losowania, wskaże więc tego samego kandydata. Wzór nie jest zdefiniowany dla T=0T=0; nie należy podstawiać zera do mianownika.

Zmiana Temperature podczas generowania nie uczy nowych wag ani nie sprawdza prawdziwości wypowiedzi. Steruje prawdopodobieństwami kolejnego wyboru, więc większa różnorodność odpowiedzi sama w sobie nie świadczy o ich jakości.