Nu gaan we een stapje verder: wat zit er eigenlijk echt in zo'n taalmodel?
♪ RUSTIGE MUZIEK ♪
Misschien denk je: 'Ja, logisch.
Dat bestaat uit woorden, of misschien zelfs zinnen of afbeeldingen.'
Maar nee, er zitten geen woorden in. Geen plaatjes, geen volledige zinnen.
Maar wat er wel in zit, zijn fragmenten: kleine stukjes van iets groters.
In de wereld van taalmodellen noemen we die stukjes: tokens.
Maar wat zijn tokens nou precies?
Denk aan tokens als een soort lego-blokjes van taal.
Een woord wordt opgeknipt in kleine onderdelen...
zodat het model er flexibel mee kan bouwen.
Als ik een zin heb: De broers en zussen zijn ongelukkig.
Die zin, voor ons, zou heel duidelijk zijn.
Maar voor een taalmodel wordt deze zin eerst in kleine stukjes gehakt.
'Broers' wordt opgesplitst naar 'broer'...
en het meervoud wordt er misschien af gehaald, dus de 's'.
'Zussen' wordt opgeknipt naar 'zus' en 'sen'.
En 'ongelukkig' wordt 'on' opgebroken met 'gelukkig'.
En zo ontstaan er meerdere tokens per woord.
We doen dat omdat het veel efficiënter is.
We hakken die woorden op, omdat een taalmodel enorm groot is...
maar niet eindeloos groot moet gaan worden.
En elke letter, elk woord, kost extra geheugenruimte.
Als je elk woord in elke taal als los blokje zou opslaan...
dan zou het model gigantisch worden, en ze zijn al heel groot.
Door taal op te hakken in herbruikbare bouwstenen...
kunnen modellen efficiënter werken.
Bijvoorbeeld het voorvoegsel 'on'...
komt naast 'ongelukkig' ook voor in 'onbekend', 'onzeker', 'onmogelijk'.
Dus als het model eenmaal 'on' kent...
hoeft het dat niet telkens opnieuw op te slaan.
En dat gebeurt zo ook nog eens in heel veel verschillende talen.
En zo worden duizenden woorden met slechts een paar tokens gerepresenteerd.
Wat betekent dat nou voor het begrijpen van taal?
Dat betekent dat AI niet denkt in stukjes, maar in stukjes van woorden.
En bij elk stukje denkt het: Wat zou hier nou logisch op volgen?
Een beetje als een puzzelaar...
die niet meteen ziet welk plaatje hij aan het maken is...
maar wel: 'Ah, dit stukje heeft blauwe lucht. En dat past dan waarschijnlijk hier.'
Maar al die losse stukjes...
moeten natuurlijk ook weer op de juiste manier aan elkaar gepuzzeld worden.
Want wat als dat niet gebeurt?
Dan krijg je kromme zinnen, of woorden die nergens op slaan.
Het is dus alsof je taal helemaal moet reconstrueren uit losse blokjes.
Soms gaat dat geweldig, maar soms gaat het ook een beetje mis.
Het is belangrijk om te begrijpen...
want het verklaart waarom taalmodellen soms rare fouten maken.
Als een model een woord niet vaak genoeg gezien heeft...
of de stukjes op een onlogische manier samenvoegt...
dan kan het een woord vervormen of een vreemde zin maken.
Of een woord dat helemaal niet bestaat, maar misschien wel lijkt te passen.
Ook verklaart het waarom AI zo gevoelig is voor spelling, context en leestekens.
Een extra of ontbrekende token en het model kan de draad kwijtraken.
En om het even voor je samen te vatten:
AI werkt dus niet met woorden, maar met tokens: stukjes van woorden.
Tokens maken het model efficiënt, heel flexibel maar ook kwetsbaar.
Het model moet bij elke zin opnieuw de puzzel leggen welk stukje waar past.
Dat verklaart ook waarom AI soms zinnen begrijpt die jij amper snapt...
en soms struikelt over iets ontzettend simpels.
♪ RUSTIGE MUZIEK ♪