A számtól a vektorig
Az előző lecke végén a szövegből tokenek sorozata lett, minden token egy azonosító számmal. Ez a szám viszont önkényes. Attól, hogy a „kutya" azonosítója 512, a „macska" pedig 4090, a két szám közelsége semmit nem árul el a jelentésről. A beágyazás (embedding) éppen ezt oldja meg. Minden tokenhez egy vektort rendel, vagyis nem egyetlen számot, hanem sok szám rendezett listáját. Ezekben a számokban tárolódik el, mit jelent az adott token, és ezt a modell a tanítás során magától alakítja ki.
A disztribúciós elv
Miből tudja a modell, hogy egy token mit jelent, ha soha nem magyarázza el neki senki? A válasz egy régi nyelvészeti megfigyelésen alapul, amelyet disztribúciós elvnek nevezünk. Az elv szerint egy szó jelentését jól jellemzi az, hogy milyen szavak társaságában szokott előfordulni. A „kávét" és a „teát" hasonló szövegkörnyezetben bukkan fel, mert mindkettőt inni szoktuk, reggelizni mellé, csészében felszolgálni. Ha két token rendszeresen hasonló környezetben jelenik meg, akkor a jelentésük is közel áll egymáshoz.
A modell ezt az elvet fordítja számokra. Ha két token gyakran hasonló környezetben fordul elő, akkor a tanítás során a vektoraik közel kerülnek egymáshoz. A jelentésbeli hasonlóságból így geometriai közelség lesz.
A word2vec és a jelentés iránya
Az egyik legismertebb korai módszer, amely ezt a gondolatot a gyakorlatba ültette, a word2vec. Az eljárás egy egyszerű feladaton keresztül tanulja meg a vektorokat. Egy adott szóból megpróbálja megjósolni a körülötte álló szavakat, és eközben addig igazgatja a vektorokat, amíg a hasonló környezetű szavak vektora közel nem kerül egymáshoz. Az így kialakult térben nem csak a távolságnak, hanem az irányoknak is van értelmük. A vektorok közötti eltolások néha maguk is jelentést hordoznak, például a nyelvtani nem vagy az egyes és többes szám különbsége hasonló irányú lépésként jelenik meg a térben.
- Kiindulás véletlenbőlMinden token vektora eleinte véletlen számokból áll, jelentés nélkül.
- Környezetből tanulásA modell a szövegben látja, mely tokenek fordulnak elő együtt, gyakran hasonló helyen.
- A vektorok igazításaA tanítás közelebb húzza a hasonló környezetű tokenek vektorát, és távolabb az eltérőekét.
- Kialakult jelentéstérA végén a vektorok elrendeződése tükrözi a jelentésbeli viszonyokat.
Statikus és szövegfüggő beágyazás
A word2vec egy fontos korlátja, hogy minden tokenhez egyetlen, rögzített vektort rendel, függetlenül attól, hol áll a mondatban. A „zár" szó azonban mást jelent egy ajtó és mást egy mondat végén. A modern nyelvi modellek ezt úgy oldják meg, hogy a beágyazás csak a kiindulópont. A token belépő vektora ugyanaz, de a modell a szövegkörnyezet alapján a feldolgozás során folyamatosan finomítja, így a végső, szövegfüggő ábrázolás már a konkrét mondathoz igazodik. Hogy ez a finomítás pontosan hogyan zajlik, azt a következő lecke, a transzformer és a figyelem bontja ki.
Statikus beágyazás
- Tokenenként egyetlen rögzített vektor
- Nem veszi figyelembe a mondatot
- A többjelentésű szó összemosódik
- A word2vec és a GloVe ilyen
Szövegfüggő ábrázolás
- A belépő vektor a kiindulópont
- A környezet alapján folyamatosan finomodik
- Ugyanaz a szó eltérő mondatban más ábrázolás
- Ez a modern nyelvi modellek működése
Jelentés mint geometria. A beágyazás lényege, hogy a jelentésbeli viszonyokat térbeli viszonyokká alakítja. A hasonló tokenek közel kerülnek, az eltérőek távol, és a modell innentől ezekkel a vektorokkal, nem pedig önkényes azonosítókkal dolgozik tovább.
Workshop
AI Transformation Day
Egésznapos, vezetőknek szóló program. Feltérképezzük, hol tart a szervezet, mi az első reális lépés, és milyen belső feltételek szükségesek a sikerhez. A nap végén konkrét, prioritizált cselekvési lista.
Érdekel a program →