Top-p Sampling
Top-p Sampling, nazywane też Nucleus Sampling, losuje kolejny token z najmniejszego początkowego zbioru kandydatów uporządkowanych malejąco według prawdopodobieństwa, którego łączna masa osiąga co najmniej próg . Zachowane prawdopodobieństwa normalizuje się do sumy jeden. Parametr określa więc próg masy, a nie stałą liczbę tokenów.
Metodę i normalizację opisują Holtzman et al., The Curious Case of Neural Text Degeneration, §3.1. W każdym kroku Autoregressive Language Modeling zbiór kandydatów wyznaczany jest na nowo.
Ten sam próg, różna liczba tokenów
Własny przykład dla ; wiersze zawierają już uporządkowane prawdopodobieństwa:
| Rozkład dla A, B, C, D | Zachowane tokeny | Ich suma przed normalizacją |
|---|---|---|
| 0,70; 0,15; 0,10; 0,05 | A, B | 0,85 |
| 0,40; 0,30; 0,20; 0,10 | A, B, C | 0,90 |
W drugim wierszu A i B dają tylko 0,70, więc trzeba dołączyć C. Po normalizacji ich szanse wynoszą odpowiednio , i . D zostaje wykluczony. Próg nie oznacza zachowania tokenów, z których każdy osobno ma prawdopodobieństwo co najmniej 0,75.
Top-k Sampling w obu przypadkach próbowałoby zachować tę samą liczbę kandydatów. Top-p reaguje na rozkład ich szans. Jeżeli wcześniej zastosujemy Temperature, zmieni się suma kolejnych prawdopodobieństw i granica odcięcia może wypaść w innym miejscu.
Praca badała m.in. otwarte kontynuowanie tekstu przez GPT-2 (§4.1). Jej wyniki nie wyznaczają jednego optymalnego progu dla każdego modelu i zadania. Sam parametr nie jest też prawdopodobieństwem, że wygenerowana odpowiedź okaże się poprawna.