Definitie
Top-k sampling is een tekstgeneratiestrategie die de selectiepool beperkt tot de k tokens met de hoogste kans bij elke generatiestap. Door tokens met lage kans uit te sluiten, vermindert het het risico op incoherente of onverwachte tekst terwijl enige diversiteit in outputs behouden blijft.
Waarom het belangrijk is
Top-k biedt voorspelbare controle over generatiediversiteit:
- Ruisreductie — elimineert onwaarschijnlijke tokens die incoherentie veroorzaken
- Eenvoud — enkele integer parameter, makkelijk te begrijpen
- Consistentie — vaste kandidaatpoolgrootte ongeacht distributievorm
- Snelheid — efficiënt te berekenen door simpelweg sorteren en afkappen
- Historisch belang — vroege standaard die latere methoden beïnvloedde
Top-k blijft nuttig ondanks dat top-p vaak de voorkeur heeft voor adaptief gedrag.
Hoe het werkt
┌────────────────────────────────────────────────────────────┐
│ TOP-K SAMPLING │
├────────────────────────────────────────────────────────────┤
│ │
│ Tokenkansen (gesorteerd hoog naar laag): │
│ │
│ Rang Token Kans │
│ ───────────────────── │
│ 1 "de" 0.35 ◄── opgenomen │
│ 2 "een" 0.25 ◄── opgenomen │
│ 3 "deze" 0.15 ◄── opgenomen │
│ 4 "die" 0.10 ◄── opgenomen │
│ 5 "het" 0.08 ◄── opgenomen (k=5) │
│ 6 "enige" 0.04 uitgesloten │
│ 7 "mijn" 0.02 uitgesloten │
│ 8 "jouw" 0.01 uitgesloten │
│ │
│ ┌────────────────────────────────────────────────┐ │
│ │ TOP-K = 5 │ │
│ │ │ │
│ │ Selecteer altijd uit exact 5 tokens │ │
│ │ │ │
│ │ Rang: [1] [2] [3] [4] [5] │ [6] [7] [8]... │ │
│ │ ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲│▲▲▲▲▲▲▲▲▲▲▲▲▲▲ │ │
│ │ KANDIDAATPOOL │ UITGESLOTEN │ │
│ └────────────────────────────────────────────────┘ │
│ │
│ VASTE SELECTIE (ongeacht kansvorm): │
│ │
│ Zeker model Onzeker model │
│ [0.90, 0.05, 0.02...] [0.15, 0.14, 0.13...] │
│ Pakt nog steeds k=5 Pakt nog steeds k=5 │
│ │
└────────────────────────────────────────────────────────────┘
Veelgebruikte top-k waarden:
| Waarde | Gedrag | Toepassing |
|---|---|---|
| 1 | Greedy (deterministisch) | Exacte taken |
| 10 | Zeer gefocust | Feitelijke Q&A |
| 40 | Gebalanceerd (gangbare standaard) | Algemeen gebruik |
| 100 | Divers | Creatieve taken |
| 0 | Uitgeschakeld (alle tokens) | Alleen met top-p |
Veelgestelde vragen
V: Wat is het verschil tussen top-k en top-p?
A: Top-k selecteert altijd exact k tokens. Top-p (nucleus sampling) selecteert een variabel aantal op basis van cumulatieve kans. Als kansen sterk geconcentreerd zijn op één token, kan top-p slechts 1-2 tokens selecteren terwijl top-k nog steeds alle k selecteert.
V: Wat is een goede top-k waarde?
A: 40-50 is gangbaar voor algemeen gebruik. Lager (5-20) voor feitelijke taken, hoger (100+) voor creatief werk. De optimale waarde hangt af van vocabulairegrootte en taakvereisten.
V: Moet ik top-k met temperatuur gebruiken?
A: Ja, ze werken goed samen. Temperatuur hervormt eerst de kansen, dan kapt top-k af naar de topkandidaten. Deze combinatie geeft je controle over zowel distributievorm als kandidaatpoolgrootte.
V: Wat gebeurt er met top-k = 1?
A: Dit is equivalent aan greedy decodering—altijd het meest waarschijnlijke token selecteren. Output wordt deterministisch (zelfde invoer → zelfde uitvoer) maar kan repetitief zijn of betere totaalsequenties missen.
Gerelateerde termen
- Top-p Sampling — kansgebaseerd alternatief
- Temperatuur — hervormt kansverdeling
- Beam Search — overweegt meerdere sequenties
- Inferentie — generatieproces
Referenties
Fan et al. (2018), “Hierarchical Neural Story Generation”, ACL. [1.000+ citaties]
Holtzman et al. (2020), “The Curious Case of Neural Text Degeneration”, ICLR. [2.500+ citaties]
Radford et al. (2019), “Language Models are Unsupervised Multitask Learners”, OpenAI. [10.000+ citaties]
Meister et al. (2020), “If Beam Search is the Answer, What was the Question?”, EMNLP. [200+ citaties]
References
Fan et al. (2018), “Hierarchical Neural Story Generation”, ACL. [1,000+ citations]
Holtzman et al. (2020), “The Curious Case of Neural Text Degeneration”, ICLR. [2,500+ citations]
Radford et al. (2019), “Language Models are Unsupervised Multitask Learners”, OpenAI. [10,000+ citations]
Meister et al. (2020), “If Beam Search is the Answer, What was the Question?”, EMNLP. [200+ citations]