Gå til indhold
atlas

Forudsigelse af næste token

Også kendt som: next-token prediction

Sådan skriver en sprogmodel - den gætter det bedst passende næste stykke tekst, tilføjer det og gentager, til svaret er færdigt.

Kladde - dette opslag er endnu ikke gennemgået.

Formelt

Kerneopgaven i en stor sprogmodel - ud fra alle tokens indtil nu at regne ud, hvor sandsynligt hvert muligt næste token er; under inferens vælges ét, føjes til teksten, og trinnet gentages.

Forklaret enkelt

Som at gøre et kendt ordsprog færdigt - hør “hvad man ikke har i hovedet…”, og “må man have i benene” melder sig - gjort igen og igen, ét ord ad gangen, til et helt svar står der.

I praksis

En lægesekretær på et hospital ser en chatassistents udkast til et brev dukke op ord for ord; stopper hun den halvvejs, står der en halv sætning, fordi hvert token først vælges, når alle dem før det er skrevet.

Hvorfor det betyder noget

Modellen sigter mod tekst, der passer, ikke tekst, der er tjekket, og hvert svar tager ét trin per token - hvilket forklarer både, hvor glat den lyder, og hvad den koster i penge og tid.

Teknisk uddybning

Formelt faktoriserer en autoregressiv sprogmodel sandsynligheden for en sekvens som et produkt af betingede sandsynligheder, p(x1, ..., xn) = p(x1) · p(x2 | x1) · ... · p(xn | x1, ..., xn−1). For hver position giver netværket en vektor af logits, én pr. post i ordforrådet (titusinder til hundredtusinder), og en softmax omsætter dem til en sandsynlighedsfordeling over næste token. Træningen minimerer den gennemsnitlige negative log-likelihood for det faktiske næste token, cross-entropy-tabet; perplexity, eksponentialfunktionen af tabet, er det gængse indre mål.

Træningen kan paralleliseres massivt på grund af teacher forcing og den kausale maske. Hele den korrekte sekvens gives ind på én gang, og attention-masken forhindrer position t i at se positionerne efter t, så ét forward pass giver et tabsbidrag for alle positioner samtidig. Generering kan ikke paralleliseres på samme måde: Hvert nyt token afhænger af det forrige, så n tokens kræver n forward passes efter hinanden. En KV-cache undgår at genberegne keys og values for tidligere positioner, så hvert trin koster nogenlunde i forhold til den aktuelle længde i stedet for at genberegne hele præfikset, men den sekventielle afhængighed er stadig hovedkilden til ventetid.

Flere teknikker angriber den omkostning uden at ændre målet. Spekulativ afkodning (Leviathan m.fl., 2023; Chen m.fl., 2023) lader en lille udkastmodel foreslå flere tokens, som den store model verificerer i ét pass, og accepterer dem efter en regel, der bevarer den store models outputfordeling præcist. Multi-token-prediction-hoveder (Gloeckle m.fl., 2024) træner modellen til at forudsige flere kommende tokens på én gang, hvilket kan udnyttes til hurtigere afkodning. Diffusionsbaserede sprogmodeller erstatter generering fra venstre mod højre helt, men er stadig en mindre udbredt tilgang.

Målet forklarer flere dokumenterede særheder. Fordi hvert trin kun betinger på det foregående, bliver en tidlig fejl aldrig rettet, kun videreført; modellen kan tale sig selv ind i et forkert svar, hvilket tankekæder og ræsonnementstræning dels udnytter, dels modvirker. "Reversal curse" (Berglund m.fl., 2023) viste, at modeller trænet på "A er B" ofte ikke kan svare på "B er A", fordi de lærer betingede fortsættelser frem for symmetriske fakta. Forudsigelse af næste token er også grunden til, at modellens sikkerhed ikke er kalibreret sandhed: Et token med høj sandsynlighed er et, der passer til mønstret, og det er den direkte forbindelse til hallucination. At vælge det faktiske token fra fordelingen er et separat trin, sampling, styret af temperatur, top-p og beslægtede indstillinger.

Hvad du bør lære først

Alt det, dette bygger på - grundlaget først.

  1. Inferens
  2. →Token
  3. →Forudsigelse af næste token

Relationer

Forudsætter
TokenInferens
Forårsager
Hallucination

Kilder og videre læsning

Opslagsværker

  • Radford et al. (2019), Language Models are Unsupervised Multitask Learners

Lærebøger

  • Jurafsky & Martin, Speech and Language Processing

Hvor dataene kommer fra

Dette opslag er skrevet af en AI ud fra kilderne ovenfor og er endnu ikke gennemgået af et menneske. Brug det som udgangspunkt, og tjek alt vigtigt mod kilderne.

Se gennemgangskøenForeslå en rettelse på GitHubDette begreb som JSON

Test dig selv

Indlæser…

Atlas er i beta.