3D-lab wordt geladen…
De les wordt geladen…
← Hoe AI werktWereld 1 · les 3 van 4Alle lessen ↓

Embeddings: een lijst met getallen voor elke token
Geef je dit les? Open de projectormodus
Token-ID's zijn alleen labels. ID 4821 ligt qua betekenis niet “dicht bij” ID 4822. Om met betekenisachtige patronen te kunnen rekenen, heeft het model een representatie nodig waarin gelijkenis een getal is dat je kunt berekenen.
Die representatie is een embedding: voor elke token een lijst met getallen die een vector wordt genoemd. De vectoren staan in een grote tabel. Hun waarden beginnen willekeurig en worden tijdens het trainen aangepast. Echte modellen gebruiken honderden tot duizenden getallen per token.
Wat maakt een vector nuttig? Tokens die in vergelijkbare contexten voorkomen, eindigen met vergelijkbare vectoren. Dit idee werd op grote schaal aangetoond door Mikolov en collega's (2013, “word2vec”) en doet denken aan een bekende uitspraak van een taalkundige: een woord wordt gekenmerkt door de woorden waarmee het samen voorkomt. “Kat” en “hond” staan in de buurt van woorden als “huisdier”, “gevoerd” en “dierenarts”, dus hun vectoren komen dicht bij elkaar te liggen. “Kat” en “carburateur” niet.
Gelijkenis meten: cosinusgelijkenis. Voor twee vectoren a en b:
cos = (a · b) / (|a| × |b|)
waarbij a · b de som van de producten van overeenkomstige waarden is, en |a| de vierkantswortel van de som van de kwadraten. Het resultaat ligt altijd tussen −1 en 1: 1 betekent dat de vectoren dezelfde kant op wijzen, 0 betekent dat ze loodrecht op elkaar staan en −1 betekent dat ze tegengestelde richtingen hebben.
Voorbeeld met twee getallen per vector (bedacht): kat = (3, 4) en hond = (4, 3). Het inwendig product is 3×4 + 4×3 = 24. Beide lengtes zijn 5. Dus cos = 24 / 25 = 0,96. Neem nu auto = (4, −3): het inwendig product met kat is 12 − 12 = 0, dus cos = 0.
Je kunt geen 300 dimensies tekenen. Om een kaart te tonen, worden de vectoren teruggebracht tot 3 (of 2) dimensies met een methode zoals PCA of t-SNE. In de AI Lab-wereld ‘Van zes kenmerken naar een puntenwolk’ zie je hoe deze methoden werken en waar ze afstanden vervormen. Terugbrengen vervormt altijd iets: twee woorden die op de kaart buren lijken, kunnen in de volledige ruimte verder uit elkaar liggen.
Vaste embeddings hebben een limiet. Als elke token één vaste vector heeft, heeft het woord “bank” dezelfde vector in “rivierbank” en “bankrekening”. Eén vector moet beide betekenissen dienen. Later in deze lab (Wereld 2) zie je hoe aandacht ervoor zorgt dat de getallen voor een token afhangen van de woorden eromheen.
Twee woordvectoren wijzen precies in dezelfde richting. Wat is hun cosinusgelijkenis?
Waarom kan een 3D-kaart van woordvectoren twee woorden dicht bij elkaar tonen, terwijl ze in de volledige ruimte ver uit elkaar liggen?
Waarom is één vaste vector voor “bank” een probleem?
Voor cat = (3, 4) en dog = (4, 3), wat is de cosinusgelijkenis?