Top-p sampling (NL)
Top‑p-bemonstering, ook bekend als kernbemonstering (Engels: Nucleus Sampling), is een stochastische decoderingsmethode voor autoregressieve taalmodellen, die breed wordt toegepast, onder meer in grote taalmodellen (LLM). De methode werd in 2019 voorgesteld door Ari Holtzman en medeauteurs (preprint arXiv – april 2019; publicatie op ICLR 2020) als een verbeterd alternatief voor de vaste Top‑k-bemonstering. Het kernidee is om op elke generatiestap dynamisch een kandidaatverzameling te bepalen op basis van een drempelwaarde voor de cumulatieve kans .[1]
Historische achtergrond: het probleem van neurale tekstdegeneratie
Vóór de komst van Top‑p waren greedy search (greedy search) en beam search (beam search) de dominante decoderingsstrategieën, gebaseerd op het paradigma van waarschijnlijkheidsmaximalisatie — het selecteren van de reeks tokens met de hoogste gezamenlijke kans. Greedy search kiest op elke stap lokaal het token met de hoogste kans, terwijl beam search parallel meerdere generatiehypothesen bijhoudt.[1]
Hoewel deze methoden effectief waren voor gesloten taken (machinale vertaling, data-extractie), leidden ze bij open-einde tekstgeneratietaken (het schrijven van verhalen, dialoogsystemen) vaak tot neurale tekstdegeneratie — een ontaarding van de uitvoer waarbij de tekst sjabloonmatig wordt, samenhang verliest of vastloopt in herhalingen. Dit verschijnsel wordt uitvoerig beschreven door Holtzman en medeauteurs in het artikel The Curious Case of Neural Text Degeneration.[1]
Meister en medeauteurs koppelen het degeneratieprobleem aan het feit dat menselijke tekst ernaar streeft een informatiegehalte te behouden dat dicht bij de verwachte conditionele entropie ligt, in plaats van simpelweg de lokale kans van elk volgend token te maximaliseren.[2]
Een alternatief werd gevonden in puur stochastische bemonstering (sampling without truncation), waarbij een token willekeurig wordt geselecteerd overeenkomstig zijn kans. Deze methode bracht echter het omgekeerde probleem met zich mee: de Softmax-functie kent nooit een kans van strikt nul toe aan een token, zodat in een woordenschat van tienduizenden woorden altijd een uitgebreid gebied van ruistokens bestaat. Bij pure bemonstering neemt het risico toe om terecht te komen in de onbetrouwbare staart van de verdeling, wat de samenhang van de gegenereerde tekst kan verslechteren.[1][3] De noodzaak om de rijkdom van stochastische selectie te combineren met de betrouwbaarheid van deterministische beperkingen leidde tot de ontwikkeling van verdelingsafkapmethoden, waarvan kernbemonstering (Top‑p) de voornaamste is.[1][4]
Eenvoudige uitleg
Top-p-bemonstering is een manier om de selectie van het volgende token te beperken tot uitsluitend de meest aannemelijke opties, zonder hun aantal vooraf vast te leggen.
Bij het genereren van tekst evalueert het taalmodel op elke stap een groot aantal mogelijke vervolgingen en kent aan elk daarvan een bepaalde kans toe. Sommige tokens zijn zeer waarschijnlijk, andere matig waarschijnlijk, en het grootste deel van de woordenschat vormt de zogenaamde "staart" van de verdeling: opties met een zeer kleine kans die formeel toelaatbaar zijn, maar vaak willekeurig of ongepast zijn en de samenhang van de tekst verslechteren.
Top-p-bemonstering kapt deze weinig-waarschijnlijke staart af niet op basis van een vast aantal tokens, maar op basis van de totale kans. Eerst worden alle kandidaten gerangschikt van meest naar minst waarschijnlijk. Vervolgens wordt de minimale verzameling bovenste tokens geselecteerd waarvan de totale kans de opgegeven drempelwaarde bereikt — bijvoorbeeld 0.9 of 0.95. Daarna wordt het volgende token willekeurig gekozen uitsluitend uit deze verzameling, en worden alle overige opties uitgesloten.
Als het model bijvoorbeeld de zin "Vandaag regende het hard…" verlengt, kunnen de meest waarschijnlijke opties zijn: "regen" (0.45), "stortbui" (0.25), "sneeuw" (0.15) en "wind" (0.10). Bij drempelwaarde telt het algoritme de tokens op in aflopende kansvolgorde: 0.45 + 0.25 = 0.70 (minder dan 0.90), voegt "sneeuw" toe: 0.70 + 0.15 = 0.85 (nog steeds minder dan 0.90), voegt "wind" toe: 0.85 + 0.10 = 0.95 (drempel overschreden). De kern bestaat uit vier tokens. Alle zeldzamere opties worden verworpen en de kansen van de overgebleven tokens worden genormaliseerd: zo wordt de kans van het token "regen" na hernormalisatie , en de generator kiest het volgende token uit precies deze bijgewerkte verdeling.
Het belangrijkste verschil met Top‑k is dat Top‑k altijd een vast aantal beste woorden neemt (bijvoorbeeld 50), terwijl Top‑p het aantal opties niet vooraf vastlegt: soms zijn dat 3 woorden, soms 20 — afhankelijk van hoe de kansen op dat specifieke moment verdeeld zijn. Hierdoor past de methode zich aan de context aan en helpt ze de "staart" van weinig-waarschijnlijke tokens af te kappen, waardoor de tekst natuurlijker wordt.
Nog een voorbeeld. Het model verlengt de zin "Bij het ontbijt dronk hij een warme…". De meest waarschijnlijke vervolgingen kunnen zijn: "thee" (0.50), "koffie" (0.30), "chocolademelk" (0.08), "bouillon" (0.04), "karnemelk" (0.03). Als de drempelwaarde is ingesteld, begint het algoritme de kansen van boven naar beneden op te tellen: 0.50 voor "thee", dan 0.50 + 0.30 = 0.80. De drempel is al bereikt, dus de kern bestaat uit slechts twee tokens: "thee" en "koffie". Alle overige opties worden verworpen. Na hernormalisatie wordt de kans van "thee" binnen de kern , en de kans van "koffie" . Het volgende token wordt uitsluitend gekozen tussen deze twee opties.
Met andere woorden: het model verwijdert eerst de weinig-waarschijnlijke en ongelukkige vervolgingen, en kiest daarna uit de overgebleven opties. Dit helpt het model begrijpelijker, natuurlijker en zonder overbodige "ruis" te schrijven.
Concept
Het kernidee van Top‑p is om op elke stap de kleinste verzameling meest waarschijnlijke tokens te kiezen waarvan de totale kans niet kleiner is dan de opgegeven drempelwaarde (de kern, Engels: nucleus).
Formeel, laat de tokens van woordenschat zijn, gesorteerd op aflopende conditionele kans . Dan wordt de kern gedefinieerd als het kortste prefix van deze geordende reeks waarvan de cumulatieve massa de drempelwaarde bereikt:
Met andere woorden: dit is de kleinste verzameling (qua insluiting) van de meest waarschijnlijke tokens waarvan de gezamenlijke kans niet kleiner is dan .[1]
Na het bepalen van de kern worden de kansen van tokens buiten op nul gesteld, en de kansen binnen de kern worden hernormaliseerd (gedeeld door de feitelijke cumulatieve massa , zodat de som gelijk wordt aan 1). Het volgende token wordt bemonsterd uit deze afgekapte en hernormaliseerde verdeling.
Dynamische aanpassing
- Bij een "scherpe" verdeling (het model is zeker) is de kern klein: slechts enkele tokens geven al een massa ≥ , wat de samenhang verhoogt. In het uiterste geval, als de kans van het meest waarschijnlijke token al groter is dan (bijvoorbeeld bij ), wordt de kern gereduceerd tot één enkel token en gedraagt Top‑p zich in feite als greedy decoding.
- Bij een "vlakke" verdeling (veel aannemelijke vervolgingen) is de kern groot: de selectie breidt zich uit en de diversiteit neemt toe.[1]
Vergelijking met andere decoderingsmethoden
Top‑p vs. Top‑k
- Top‑k selecteert altijd uit een vast aantal meest waarschijnlijke tokens. Bij "scherpe" verdelingen kan dit onnodige weinig-waarschijnlijke opties toevoegen "voor de hoeveelheid", terwijl het bij "vlakke" verdelingen juist redelijke vervolgingen kan afkappen die niet in de top‑ terechtkwamen.
- Top‑p past de grootte van de kandidaatverzameling aan op basis van de gegevens van de huidige stap, wat het gedrag flexibeler en stabieler maakt voor verschillende typen verdelingen.[1]
- In de praktijk kunnen Top‑k en Top‑p tegelijkertijd worden toegepast. In dat geval worden eerst de top‑ tokens geselecteerd, en vervolgens wordt binnen deze beperkte verzameling gezocht naar een kern met drempelwaarde . De exacte volgorde en motivatie zijn afhankelijk van de implementatie, maar deze combinatie is gedocumenteerd als een veelgebruikte techniek.[5]
Simpel gezegd: Top-k beslist vooraf hoeveel opties er overblijven, terwijl Top-p de situatie beoordeelt en precies zoveel opties behoudt als nodig is in de gegeven context. Daardoor is Top-p doorgaans flexibeler, en Top-k eenvoudiger en voorspelbaarder.
Top‑p vs. Temperatuur
- Temperatuur (temperature) hervormt de gehele verdeling (maakt deze scherper of vlakker), maar kapt geen tokens af: zelfs weinig-waarschijnlijke opties behouden een kans die niet nul is.[5]
- Top‑p introduceert een harde afkap van de staart van de verdeling — laag-waarschijnlijke tokens worden volledig uitgesloten van de bemonstering, wat helpt duidelijk ongepaste vervolgingen te voorkomen.[1]
- Volgorde van toepassing. In standaard pipelines (bijvoorbeeld in Hugging Face Transformers) wordt eerst temperatuur toegepast op de logits (de vorm van de verdeling verandert), vervolgens kan Top‑k worden toegepast, en pas daarna Top‑p (staartafkap). Dit verklaart waarom "dubbele beïnvloeding" moeilijk te beheersen is: het wijzigen van de temperatuur verandert de cumulatieve massa waarmee Top‑p daarna werkt.[5]
Simpel gezegd: temperatuur bepaalt hoe vrij het model woorden kiest, terwijl Top-p bepaalt welke opties überhaupt gekozen mogen worden. Temperatuur beïnvloedt dus de mate van willekeurigheid, en Top-p bepaalt hoe ver het model kan gaan in minder waarschijnlijke vervolgingen.
Volgorde van bewerkingen in de Hugging Face Transformers-implementatie
De volgorde van toepassing van sampling-processors hangt af van de specifieke bibliotheek. In Hugging Face Transformers (vanaf v4.x) worden de logit-processors voor de besproken drie parameters standaard in de volgende volgorde toegevoegd:[5][6]
- Temperatuurschaling van logits. De logit van elk token wordt gedeeld door de temperatuurwaarde vóór de exponentiëring van de Softmax-functie. Temperatuur past de vorm van de verdeling aan ter voorbereiding op de daaropvolgende filtering.
- Top‑k-filter (indien geconfigureerd): knipt de woordenschat bij tot een vast aantal kandidaten.
- Top‑p-filter: cumulatieve afkap wordt toegepast op de al beperkte tokenpoel.
- Hernormalisatie van de resterende kansen en stochastische bemonstering.
In de praktijk is de combinatie van een gematigde temperatuur (0.7) met een brede Top‑p-kern (0.95) en een Top‑k-limiet (50) gangbaar: temperatuur zorgt voor basisvariatie, Top‑k fungeert als grove beveiliging, en Top‑p voert contextafhankelijke fijnafstemming uit.[5]
Simpel gezegd: het model maakt de selectie eerst meer of minder "vrij" via temperatuur, beperkt vervolgens indien nodig het aantal kandidaten via Top-k, en verwijdert daarna te zwakke opties via Top-p. Deze volgorde helpt eerst het algemene karakter van de selectie in te stellen en daarna het overbodige af te kappen.
Aanbeveling: één parameter tegelijk instellen
Modelleveranciers raden aan bij het instellen van de generatiestijl ofwel temperature ofwel top_p te wijzigen, maar niet beide tegelijk. Deze aanbeveling is opgenomen in de officiële documentatie van OpenAI, Azure OpenAI en Anthropic.[7][8][9]
Praktische motivatie: beide parameters beïnvloeden de vorm van de kansverdelingscurve (temperatuur verandert de steilheid, Top‑p stelt het afkappoint in), waardoor gelijktijdige wijziging diagnostiek bemoeilijkt — het is onmogelijk te bepalen welke parameter precies tot verbetering of verslechtering van de uitvoer heeft geleid. Bovendien, bij extreem lage waarden van beide parameters (bijvoorbeeld Temperature ≈ 0 en Top‑p ≈ 0.01) wordt de kern in de praktijk teruggebracht tot één token, waardoor bemonstering feitelijk overeenkomt met greedy search.[7]
Een aantal reasoning-modellen beperkt de instelling van deze parameters daarnaast op API-niveau, waardoor de kwestie van gelijktijdige wijziging voor dergelijke modellen niet van toepassing is (zie het gedeelte "Compatibiliteit met bibliotheken en API's").[7]
Een gangbare technische vuistregel: voor taken die hoge reproduceerbaarheid vereisen — gebruik een lage temperatuur (tot nul); voor creatieve taken — laat de temperatuur op het basisniveau (1.0) staan en pas de variatie aan via de Top‑p-parameter, of stel Top‑p vast op 1.0 en varieer de temperatuur. Specifieke aanbevelingen kunnen per leverancier verschillen.[7][9]
Invloed op feitelijke nauwkeurigheid en hallucinaties
De keuze van de decoderingstrategie kan niet alleen de stijl van de gegenereerde tekst beïnvloeden, maar ook de frequentie en het type feitelijke fouten. Het fenomeen van hallucinaties — het zelfverzekerd genereren van onjuiste of contexttegensprekende informatie — is een van de centrale problemen van generatieve AI. Empirisch onderzoek toont aan dat het effect van bemonsteringsstrategieën op hallucinaties afhankelijk is van de taak, het model en de specifieke parameterinstellingen.[3][10]
Mechanisme van foutoptreding bij stochastische bemonstering
Bij hoge Top‑p-waarden (bijvoorbeeld 0.95) vormt het model een kern die 95% van de kansenmassa omvat. In toestanden met hoge entropie (bijvoorbeeld bij het proberen te beantwoorden van een weinig-bekende feit) kan deze kern honderden laag-waarschijnlijke tokens omvatten. Stochastische bemonstering onder dergelijke omstandigheden kan een token extraheren dat grammaticaal correct is, maar semantisch niet verbonden met de feitelijke waarheid. Eenmaal in de context kan zo'n token de daaropvolgende generatiestappen beïnvloeden, omdat het model de generatie voortzet rekening houdend met alle voorgaande tokens, inclusief foutieve.[3][1]
Dichotomie van open en gesloten taken
Grootschalige experimenten laten een afhankelijkheid zien van de kwaliteit van de generatie van het type taak. Bij taken zoals het schrijven van essays of dialoogsystemen blijven stochastische methoden (Top‑p, Temperature) de leiders, terwijl ze bij strikt deterministische domeinen aanzienlijk kunnen achterblijven bij deterministische benaderingen.[10]
Op benchmarks voor het synthetiseren van programmacode (HumanEval, MBPP) en het oplossen van wiskundige problemen (GSM8K) tonen deterministische methoden (Beam Search, Greedy Decoding) betere resultaten dan op Top‑p gebaseerde benaderingen. De dataset GSM8K, die 8.500 wiskundige problemen bevat die 2 tot 8 berekeningstappen vereisen, illustreert de kwetsbaarheid van stochastische selectie bij dergelijke taken: het injecteren van willekeurigheid via de afgekapte Top‑p-verdeling kan de redeneerketens van het model (Chain‑of‑Thought) op elk van de tussenstappen verstoren. Tan en medeauteurs benadrukken dat de effectiviteit van de decoderingsmethode sterk afhankelijk is van de specifieke taak (task‑dependent).[10]
Methoden om hallucinaties op decodersniveau te bestrijden
Om hallucinatoire effecten veroorzaakt door stochastische bemonstering tegen te gaan zijn methoden voor geavanceerde decoderingsaugmentatie ontwikkeld:
- Contrastieve decodering (Contrastive Decoding, DoLa) — optimaliseert het verschil in log-likelihood tussen het hoofdmodel en een kleiner hulpmodel, en fungeert als betrouwbaarheidsfilter.[10]
- SH2 (Self‑Highlighted Hesitation) — laat de decoder kunstmatig "aarzelen" bij het verwerken van laag-vertrouwen tokens.[11]
- Gerichte activatieprojectie (SEA) — onderdrukt hallucinatoire signalen op het niveau van vectorrepresentaties.[11]
Tegelijkertijd bezitten moderne modellen met kwalitatieve afstemming (alignment) een dieper begrip van feitelijkheid, wat de entropie van hun interne verdelingen verlaagt en hen minder vatbaar maakt voor feitelijke degradatie, zelfs bij hoge Top‑p-waarden.[10][12]
Praktische toepassing en aanbevelingen
Top‑p wordt breed gebruikt in moderne LLM's vanwege de combinatie van flexibiliteit en beheersbaarheid.
- Typisch waardenbereik. In de praktijk wordt vaak toegepast. De standaardwaarde verschilt per leverancier: bij OpenAI is `top_p` = 1.0 (afkapping feitelijk uitgeschakeld), bij Anthropic — 0.99, bij veel Google Gemini-modellen — 0.95.[13] In de Hugging Face Transformers-bibliotheek is de framework-standaard eveneens 1.0, hoewel afzonderlijke modellen deze kunnen overschrijven in hun `generation_config.json`.[14] Zo is 0.9–0.95 een gangbaar aanbevolen praktisch bereik, maar geen universele standaardinstelling.[5][15]
- Waarden dicht bij 1.0 (bijvoorbeeld 0.98–0.99) vergroten de diversiteit: meer tokens komen in de kern terecht.
- Kleine waarden (bijvoorbeeld 0.80–0.90) verhogen de determinisme en "terughoudendheid" van de uitvoer.
- Bij verdwijnt de Top‑p-afkapping: selectie vindt plaats over de gehele woordenschat (rekening houdend met temperatuur en andere decoderingsfilters, indien ingeschakeld).[5]
- Compatibiliteit met bibliotheken en API's.
- In Hugging Face Transformers is TopPLogitsWarper geïmplementeerd, waarbij bovendien de drempel `min_tokens_to_keep` (standaard 1) wordt gebruikt. Dit is een beschermend implementatiedetail: bij standaardwaarden kan een lege kern sowieso niet ontstaan uit de definitie, maar de parameter garandeert correct gedrag in randgevallen.[16]
- In een aantal API's is de parameter `top_p` beschikbaar, terwijl `top_k` kan ontbreken; de ondersteuning van parameters en hun semantiek zijn afhankelijk van het specifieke model en de gebruiksmodus. Reasoning-modellen beperken doorgaans de stochastiek-instellingen op API-niveau. Zo worden in de actuele OpenAI-documentatie de parameters `temperature` en `top_p` expliciet alleen ondersteund voor GPT‑5.2 bij `reasoning.effort = none`; verzoeken aan GPT‑5.2 of GPT‑5.1 met andere `reasoning`-waarden, evenals aan oudere GPT‑5-modellen (`gpt‑5`, `gpt‑5‑mini`, `gpt‑5‑nano`) bij het doorgeven van deze velden, resulteren in een fout. Reasoning-modellen van vorige generaties (o1, o3) beperken of fixeren deze ook.[7][17][18] Bij Anthropic in de Claude API is bij ingeschakeld uitgebreid denken (extended thinking) het wijzigen van `temperature` en `top_k` verboden, maar is `top_p` toegestaan in het bereik 0.95–1.0; op externe platforms (bijvoorbeeld Amazon Bedrock) kunnen de beperkingen afwijken.[19] Beperkingen van leveranciers veranderen vaak van versie tot versie; het wordt aanbevolen de actuele documentatie te raadplegen.[8][20]
- Lange teksten en herhaalbaarheid. In een reeks experimenten is aangetoond dat nucleus sampling de neiging tot degeneratie (herhalingen, sjabloonfrasen) vermindert in vergelijking met greedy/beam en vaste Top‑k, met name bij lange reeksen.[1][10]
Moderne alternatieven
Na de publicatie van nucleus sampling in 2019 zijn er verschillende alternatieve stochastische decoderingsmethoden voorgesteld die het Top‑p-idee uitbreiden of aanvullen:
Min‑p-bemonstering
Min‑p-bemonstering (Nguyen et al., 2024) behoudt tokens waarvan de kans niet lager is dan , dat wil zeggen: er wordt een drempelwaarde ingesteld ten opzichte van het meest waarschijnlijke token. Aanvaard voor een mondelinge presentatie op ICLR 2025; geïmplementeerd in een aantal populaire frameworks, waaronder Hugging Face Transformers[21] en vLLM[22].[23]
Het belangrijkste verschil met Top‑p ligt in het type drempelwaarde: Top‑p gebruikt een absolute drempelwaarde gebaseerd op de cumulatieve kanssom, terwijl Min‑p een relatieve drempelwaarde instelt die geschaald is naar de kans van het meest waarschijnlijke token.[23]
Mathematisch werkt het algoritme als volgt: op elke stap wordt de maximale kans bepaald, waarna de geschaalde drempelwaarde wordt berekend. Alleen tokens waarvan de individuele kans deze drempelwaarde overschrijdt, komen in de uiteindelijke poel terecht.[24]
Dit zorgt voor aanpassingsvermogen: als het model zeker is over het volgende woord (), bedraagt de drempelwaarde bij een basiswaarde van 0.09, waardoor ruistokens strikt worden afgeknipt. Als het model echter onzeker is (), daalt de drempelwaarde naar 0.01, waardoor een breed scala aan kandidaten in de kern wordt toegelaten.[23]
Een bekende zwakte van Top‑p manifesteert zich bij hoge-temperatuur bemonstering (): wanneer de verdeling kunstmatig wordt afgevlakt, is Top‑p gedwongen een groot aantal laag-waarschijnlijke tokens in de kern op te nemen om de opgegeven cumulatieve som te bereiken, wat kan leiden tot degradatie van samenhang.[23] Min‑p pakt dergelijke omstandigheden beter aan. In experimenten van de auteurs op benchmarks voor wetenschappelijke en logische kennis (GPQA) met het Mistral Large-model bij extreme temperatuur behaalde het Min‑p-algoritme een nauwkeurigheid van 13.84%, terwijl het standaard Top‑p 0.9 een resultaat van 0.89% gaf — op het niveau van willekeurige ruis.[24]
Tegelijkertijd wordt er in academische kringen gedebatteerd: sommige kritische werken (bijvoorbeeld arXiv:2506.13681) betwisten de universaliteit van de voordelen van Min‑p over alle NLP-metrieken en wijzen op de noodzaak van verder onderzoek.[25]
Simpel gezegd: Min-p vergelijkt alle opties niet met de totale kanssom, maar met de sterkste optie op de huidige stap. Daardoor verwijdert het bij een zeker model strenger de zwakke vervolgingen, terwijl het bij een onzeker model meer toegestane opties laat staan. Hierdoor kan Min-p de balans tussen samenhang en diversiteit beter bewaren, met name waar Top-p te veel zwakke woorden doorlaat.
Locally typical sampling
Locally typical sampling (Meister et al., 2023) selecteert tokens waarvan de informatiebelasting () dicht bij de conditionele entropie ligt, gebaseerd op het informatietheorietische concept van typicaliteit.[2]
In tegenstelling tot Top‑p, dat de kerngrootte probeert te minimaliseren door tokens met de hoogste kans te selecteren, lost Locally Typical Sampling een optimalisatieprobleem op basis van een informatie-afstandsmetriek op. Het algoritme berekent het informatiegehalte van elk token () en meet de absolute afstand ervan tot de conditionele entropie van het model. Tokens worden niet gerangschikt op ruwe kans, maar op de mate van hun "informationele typicaliteit" — nabijheid tot het verwachte informatiegehalte van de context. Tokens worden aan de kern toegevoegd (in volgorde van toenemende afstand tot de entropie) totdat de drempelwaarde voor de cumulatieve kans is bereikt.[2][26]
Een gevolg van deze aanpak: in toestanden met hoge entropie sluit het algoritme doelbewust niet alleen de ruisachtige laag-waarschijnlijke staart uit, maar ook de excessief hoog-waarschijnlijke woorden die te weinig informatie bevatten en de tekst banaal maken. Dit verlaagt het risico op degeneratieve herhalingen en brengt de herhaalbaarheidsmaatstaven van de tekst dichter bij de waarden die kenmerkend zijn voor door mensen geschreven teksten.[26]
Tail Free Sampling (TFS)
Tail Free Sampling (TFS) is een minder geformaliseerde, maar praktisch interessante benadering voor het identificeren van de ruisachtige staart, gebaseerd op differentiaalanalyse van de kansruimte. Terwijl Top‑p en Min‑p werken met eerste-orde kansen (cumulatieve som en basisverhoudingen), analyseert TFS de eerste en tweede afgeleiden van de gesorteerde kansencurve. De methode is beschreven in de blog van Trenton Bricken en geïmplementeerd in een aantal inference-engines, hoewel er geen peer-reviewed artikel over is gepubliceerd.[27]
De kernstelling van TFS: het opnemen van zelfs één ruisachtig token in de steekproef brengt een exponentiële bedreiging met zich mee voor de gehele autoregressieve generatie. Door de tweede afgeleide van de kanswaarden te berekenen, lokaliseert het algoritme "plateaus" — gebieden van de curve waar de daling van kansen vertraagt en overgaat in een lange, vlakke staart. Het buigpunt wordt de dynamische afkapgrens: tokens vóór dit punt worden als semantisch veilig beschouwd, en de gehele staart wordt verwijderd.[27]
Ondanks de wiskundige elegantie vereist TFS intensievere berekeningen voor het real-time berekenen van afgeleiden, waardoor het in massale commerciële producten het onderspit delft ten opzichte van lichtgewichtere algoritmen.[27]
p‑less sampling
‑less sampling is een methode die de ingenieur volledig ontheft van de noodzaak om afkaphyperparameters in te stellen.[28] Het fundamentele probleem van alle voorgaande methoden — van Top‑k en Top‑p tot Min‑p — ligt in de afhankelijkheid van statische hyperparameters waarvan de waarden expertafstelling vereisen en die optimaal kunnen zijn voor de ene taak (creatief schrijven), maar ongunstig voor een andere (programmeren).[29]
Het ‑less-algoritme, geworteld in de informatietheorie, genereert dynamisch een unieke afkapdrempelwaarde op elke decoderingstap door de interne topologie van de gehele kansenverdeling in real time te analyseren. De auteurs rapporteren robuustheid van de methode ten aanzien van temperatuurfluctuaties (temperature robustness): bij hogere temperaturen kunnen traditionele methoden aanzienlijk degraderen, terwijl ‑less stabiele kwaliteit behoudt. Bovendien zorgt het afzien van cumulatief scannen en hernormaliseren van grote kernen er volgens de auteurs voor dat de methode een hogere berekeningsefficiëntie tijdens inferentie biedt en compactere antwoorden genereert zonder verlies van nauwkeurigheid op datasets voor wiskunde, logica en creatief schrijven.[29][28]
η‑bemonstering
η‑bemonstering (Hewitt et al., 2022) gebruikt een entropie-afhankelijke kansdrempewaarde die zich aanpast aan laag-entropische contexten, waar Top‑p te sterk kan afkappen.[30]
Literatuur
- Holtzman, A., Buys, J., Du, L., Forbes, M., & Choi, Y. (2019; gepubliceerd op ICLR 2020). The Curious Case of Neural Text Degeneration. arXiv:1904.09751.
- Fan, A., Lewis, M., & Dauphin, Y. (2018). Hierarchical Neural Story Generation. arXiv:1805.04833.
- Meister, C., Pimentel, T., Wiher, G., & Cotterell, R. (2023). Locally Typical Sampling. arXiv:2202.00666.
- Ravfogel, S., Goldberg, Y., & Goldberger, J. (2023). Conformal Nucleus Sampling. ACL Findings 2023.
- Tan, Q. et al. (2024). A Thorough Examination of Decoding Methods in the Era of LLMs. arXiv:2402.06925.
- Finlayson, M. et al. (2024). Closing the Curious Case of Neural Text Degeneration. arXiv:2310.01693.
- Chen, S. J. et al. (2025). Decoding Game: On Minimax Optimality of Heuristic Text Generation Strategies. arXiv:2410.03968.
- Nguyen, M. et al. (2024). Turning Up the Heat: Min-p Sampling for Creative and Coherent LLM Outputs. arXiv:2407.01082.
- Sen, J. et al. (2025). Advancing Decoding Strategies: Enhancements in Locally Typical Sampling for LLMs. arXiv:2506.05387.
- Bricken, T. Tail Free Sampling. [32].
- p‑less Sampling: A Robust Hyperparameter-Free Approach for LLM Decoding. arXiv:2509.23234.
Noten
- ↑ 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09 1.10 Holtzman, A., Buys, J., Du, L., Forbes, M., & Choi, Y. (2019). The Curious Case of Neural Text Degeneration. arXiv:1904.09751. [1]
- ↑ 2.0 2.1 2.2 Meister, C., Pimentel, T., Wiher, G., & Cotterell, R. (2023). Locally Typical Sampling. TACL, Vol. 11. arXiv:2202.00666. [2]
- ↑ 3.0 3.1 3.2 Large Language Models Hallucination: A Comprehensive Survey. arXiv:2510.06265. [3]
- ↑ Finlayson, M. et al. (2024). Closing the Curious Case of Neural Text Degeneration. arXiv:2310.01693. [4]
- ↑ 5.0 5.1 5.2 5.3 5.4 5.5 5.6 Hugging Face Transformers. Generation strategies (top‑k, top‑p, temperature). [5]
- ↑ Hugging Face Transformers. generation/utils.py (исходный код). [6]
- ↑ 7.0 7.1 7.2 7.3 7.4 OpenAI API Reference. top_p — рекомендация «We generally recommend altering this or temperature but not both». [7]
- ↑ 8.0 8.1 Microsoft Learn (Azure OpenAI). Text/Chat Completions — parameters. [8]
- ↑ 9.0 9.1 Anthropic API Reference. Messages API — top_p. [9]
- ↑ 10.0 10.1 10.2 10.3 10.4 10.5 Tan, Q. et al. (2024). A Thorough Examination of Decoding Methods in the Era of LLMs. arXiv:2402.06925. [10]
- ↑ 11.0 11.1 From Illusion to Insight: A Taxonomic Survey of Hallucination Mitigation Techniques in LLMs. MDPI. [11]
- ↑ Survey and analysis of hallucinations in large language models: attribution to prompting strategies or model behavior. Frontiers in AI. [12]
- ↑ Anthropic. API release notes. [13]
- ↑ Hugging Face. GenerationConfig (top_p default). [14]
- ↑ Google AI / Vertex AI. Content generation parameters (topP/topK). [15] [16]
- ↑ Transformers API. TopPLogitsWarper (параметры и поведение, включая `min_tokens_to_keep`). [17]
- ↑ OpenAI API. Using reasoning models — parameter support. [18]
- ↑ OpenAI API. Using GPT-5.2. [19]
- ↑ Anthropic. Building with extended thinking. [20]
- ↑ Microsoft Learn (Azure AI Foundry). Reasoning models — supported parameters. [21]
- ↑ Hugging Face Transformers. MinPLogitsWarper. [22]
- ↑ vLLM. Sampling Parameters — min_p. [23]
- ↑ 23.0 23.1 23.2 23.3 Nguyen, M. et al. (2024). Turning Up the Heat: Min-p Sampling for Creative and Coherent LLM Outputs. arXiv:2407.01082. [24]
- ↑ 24.0 24.1 Nguyen, M. et al. Turning Up the Heat: Min-p Sampling for Creative and Coherent LLM Outputs. [25]
- ↑ Turning Down the Heat: A Critical Analysis of Min-p Sampling in Language Models. arXiv:2506.13681. [26]
- ↑ 26.0 26.1 Locally Typical Sampling. Transactions of the ACL, MIT Press. [27]
- ↑ 27.0 27.1 27.2 Bricken, T. Tail Free Sampling. [28]
- ↑ 28.0 28.1 p‑less Sampling: A Robust Hyperparameter-Free Approach for LLM Decoding. OpenReview. [29]
- ↑ 29.0 29.1 p‑less Sampling: A Robust Hyperparameter-Free Approach for LLM Decoding. arXiv:2509.23234. [30]
- ↑ Hewitt, J., Manning, C. D., & Liang, P. (2022). Truncation Sampling as Language Model Desmoothing. Findings of EMNLP 2022. arXiv:2210.15191. [31]
Zie ook
- Temperatuur
- Grote taalmodellen