Back to archive
#ai#llm#glossary#aigen

Softmax

Model ocenił trzy możliwe kontynuacje zdania liczbami 2, 1 i 0. Chcesz losować odpowiedź według ich szans. Surowe oceny nie są prawdopodobieństwami: mogą być ujemne i nie sumują się do jedności.

Softmax przelicza takie oceny, zwane logitami, na dodatnie udziały o sumie jeden. Najpierw stosuje funkcję wykładniczą — przekształcenie rosnące wraz z oceną — a następnie dzieli każdą wartość przez ich wspólną sumę.

Dla ocen 2, 1, 0 otrzymujemy około 67%, 24%, 9%. Pierwszy kandydat ma największą szansę, ale losowanie nadal może wskazać drugi lub trzeci. Softmax sam nie wykonuje losowania i nie dopisuje tekstu.

Te same obliczenia mogą wyznaczać udziały fragmentów w attention. Wtedy udziały dotyczą mieszania informacji, a nie wyboru kolejnego tokena. Nawet prawdopodobieństwo 67% dla tokena nie jest oceną prawdziwości całej wypowiedzi.

Mechanizm i szczegóły

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

ziz_i to logit kandydata ii, nn liczba kandydatów, a pip_i jego prawdopodobieństwo. W tensorze trzeba wskazać oś normalizacji: suma wynosi jeden dla każdej grupy rozpatrywanej wzdłuż tej osi. Wzór i znaczenie parametru dim podaje dokumentacja PyTorch: Softmax.

Mały przykład

Załóżmy trzy logity: [ln⁡2;0;0][\ln 2;0;0]. Po potęgowaniu otrzymujemy [2;1;1][2;1;1], a po podzieleniu przez sumę: [0,5;0,25;0,25][0{,}5;0{,}25;0{,}25]. To własny przykład rachunkowy. Pierwszy kandydat ma dwukrotnie większe prawdopodobieństwo niż każdy z pozostałych.

W modelu językowym LM head wyznacza logity dla słownika. Softmax zamienia je w rozkład, ale sam nie wybiera tokena. W przykładzie wybór maksimum zawsze wskaże pierwszego kandydata; losowanie z rozkładu może dać każdego z trzech.

W Scaled Dot-Product Attention ta sama operacja normalizuje wyniki porównań query z key. Składowe są wtedy wagami pozycji, a nie prawdopodobieństwami tokenów słownika. Oba zastosowania opisuje Attention Is All You Need, §3.2.1 i §3.4.

Wartość 0,5 w rozkładzie tokenów nie oznacza 50% szans, że całe zdanie jest prawdziwe. Wynik dotyczy wyboru z konkretnych kandydatów przy danym wejściu, nie oceny prawdziwości wypowiedzi.