Beágyazások: hogyan változtatja az AI minden adatot számokká
A számok problémája
A számítógépek számokkal dolgoznak. Csak számokkal. A neurális hálózatok? Ugyanígy. Csak matematika számokkal.
De a világ nem számokból áll. Szavak. Képek. Hangok. Fogalmak. Hogyan dolgozza fel ezeket a mesterséges intelligencia?
Beágyazások. Mindent számokká alakítanak úgy, hogy a jelentés megmaradjon. Kulcsfontosságú fogalom. Minden modern mesterséges intelligenciának az alapja.
Mik is valójában a beágyazások
A beágyazás egy sűrű számvektor, amely valamit reprezentál.
Szóbeágyazás: a „macska" [0,2, -0,5, 0,8, ...] lesz (több száz szám).
Képbeágyazás: egy fénykép [0,1, 0,9, -0,3, ...] lesz (több ezer szám).
A számok nem véletlenszerűek. Úgy tanulják meg őket, hogy megragadják a jelentést. A hasonló dolgok hasonló beágyazást kapnak. A különböző dolgok különböző beágyazást kapnak.
Ez a kulcs: a jelentésbeli hasonlóság számbeli hasonlósággá válik. A beágyazásokon végzett matematikai műveletek szemantikai kapcsolatokat tükröznek.
Miért van szükségünk beágyazásokra
A szavakat ábrázolhatnánk one-hot vektorokként is. „Macska" = [1,0,0,...,0]. „Kutya" = [0,1,0,...,0]. Minden szóhoz egyedi szám.
A probléma: nem ragad meg kapcsolatot. A „macska" és a „kutya" ugyanolyan különböző, mint a „macska" és a „repülőgép". Minden vektor merőleges. Nincs szemantikai jelentés.
A beágyazások ezt megoldják. A „macska" és a „kutya" hasonló beágyazást kap (mindkettő állat). A „macska" és a „repülőgép" különböző beágyazást kap. A vektortérbeli hasonlóság a jelentésbeli hasonlóságot tükrözi.
Most már a matematikai műveleteknek van értelmük. A beágyazásokon végzett aritmetika a jelentésről való gondolkodásnak felel meg.
Hogyan tanulják meg a beágyazásokat
A beágyazások nem kézzel készülnek. Adatokból tanulják meg őket.
Szóbeágyazások (Word2Vec megközelítés):
Tanítsunk egy neurális hálózatot egy egyszerű feladatra: jósolja meg a környező szavakat egy célszóból. Vagy fordítva.
Példa: „A macska az szőnyegen ült." mondat. A „macska" célszóhoz jósoljuk meg: „a", „az", „ült".
A hálózat megtanulja: ahhoz, hogy jól jósolja a környezetet, a hasonló szavakat hasonlóan kell reprezentálnia. A „macska" és a „kutya" hasonló környezetben fordul elő. Hasonló beágyazást kapnak.
A beágyazások melléktermékek. Nem a feladat célja. De megragadják a szemantikai jelentést.
Modern megközelítés (transzformerek):
A beágyazásokat egy nagyobb modell részeként tanulják meg. A nyelvi modell a következő szót jósolja. A képi modell objektumokat osztályoz. A beágyazások belső reprezentációkként jelennek meg.
Ezek kontextuálisak. Ugyanaz a szó különböző kontextusokban különböző beágyazást kap. A „bank" (pénzügyi) és a „bank" (folyó) különböző reprezentációt kap.
A szemantikus tér
A beágyazások egy geometriai teret hoznak létre, ahol a jelentés maga a geometria.
- Hasonlóság = közelség: A hasonló fogalmak csoportosulnak. Az állatok csoportosulnak. A járművek csoportosulnak. Az absztrakt fogalmak csoportosulnak. A távolság méri a hasonlóságot.
- Kapcsolatok = irányok: Híres példa: király - férfi + nő ≈ királynő
A vektoraritmetika megragadja a kapcsolatokat. A „férfi” és „király” közötti irány (nemből a királyság felé) hasonló a „nő” és „királynő” közötti irányhoz.
Az analógiák vektorműveletekké válnak. Elképesztő, de működik.
Dimenziók = attribútumok:
Minden dimenzió valamilyen attribútumot ragad meg. Az egyik dimenzió lehet az „élőlény-jelleg” (élő vs. élettelen). Egy másik a „méret”. Egy harmadik az „absztraktság”.
Több száz dimenzió több száz attribútumot ragad meg. Együttesen a jelentést képviselik.
Az Embeddingek Típusai
- Szóembeddingek: Szavakból vektorok. Word2Vec, GloVe, FastText. Az NLP alapja.
- Mondatembeddingek: Teljes mondatokból vektorok. A teljes mondatok jelentését ragadják meg, nem csak a szavakét. Szemantikus kereséshez használják.
- Képembeddingek: Képekből vektorok. CNN-jellemzők. Vision transformer kimenetek. Lehetővé teszik a képkeresést és a hasonlóság összehasonlítását.
- Multimodális embeddingek: Különböző modalitásokból ugyanabba a térbe. A szövegek és a képek összehasonlítható embeddingeket kapnak. A CLIP ezt teszi. Lehetővé teszi a modalitások közötti keresést.
- Gráfembeddingek: A gráfok csomópontjaiból vektorok. A hálózati struktúrát ragadják meg. Közösségi hálózatokban és tudásgráfokban használják.
Az Embeddingek Használata
- Hasonlóságkeresés: Hasonló elemek keresése. Legközelebbi szomszédok a beágyazási térben. Keresőmotorok, ajánlórendszerek.
- Osztályozás: Beágyazások használata jellemzőkként az osztályozáshoz. Szemantikus jellemzők, nem nyers adatok. Jobb általánosítás.
- Klaszterezés: Hasonló elemek csoportosítása. K-közép a beágyazásokon. Témamodellezés, ügyfélszegmentáció.
- Transzfertanulás: Nagy modell beágyazásainak használata kis feladatokban. Az előtanított tudás átvihető. Gyakori a látás és az NLP területén.
- Visszakereséssel bővített generálás: Lekérdezések és dokumentumok beágyazása. Releváns dokumentumok visszakeresése. Ezek biztosítása a nyelvi modellnek. Tényszerű AI-válaszok.
Bináris beágyazások (a hatékony alternatíva)
Hagyományos beágyazások: lebegőpontos vektorok. 32 bit dimenzióként. Nagy memórialábnyom.
Bináris beágyazások: 1 bit dimenzióként. Minden dimenzió +1 vagy -1. 32-szer kevesebb memória.
Hogyan működnek:
A beágyazásokat normálisan tanuljuk meg. Majd binarizáljuk: a pozitív dimenziók +1-gyé, a negatívak -1-gyé válnak.
Hasonlóság: pontszorzat helyett Hamming-távolság vagy XNOR-popcount. Sokkal gyorsabb.
Kompromisszumok:
Némi pontosság elveszik. De sok feladatnál ez nem számít. A visszakeresés és a legközelebbi szomszéd keresése binárisan is jól működik.
Előny: hatalmas sebesség- és memóriahatékonyság. Telepíthető peremhálózati eszközökre. Több milliárd vektor feldolgozása gyorsan.
A Dweve megközelítése:
A kényszerek bináris mintázatok. Eredendően bináris beágyazások. 65 536 bites hipervektorok. Hatékony tárolás, gyors műveletek.
Mintázatillesztés XNOR és popcount segítségével. Hasonlóság egyezésszámlálással. Bináris minden szinten.
A dimenziók száma számít
Hány dimenzióra van szükség? A több nem mindig jobb.
Túl kevés dimenzió: Nem képes megragadni a komplexitást. Különböző fogalmak ütköznek. Fontos megkülönböztetések vesznek el.
Túl sok dimenzió: Számítási költség. Memóriahasználat. Túltanulás. A dimenziók átka (nagy dimenziószámban minden egyenlő távolságra kerül).
Tipikus méretek:
Szóbeágyazások: 100-300 dimenzió
Mondatbeágyazások: 384-1024 dimenzió
Képbeágyazások: 512-2048 dimenzió
Bináris hipervektorok: 1024-65 536 bit (a robusztus tulajdonságokhoz)
A választás a feladat összetettségétől és a számítási költségvetéstől függ.
Amit meg kell jegyezned
- 1. A beágyazások mindent számokká alakítanak. A szavak, képek és fogalmak vektorokká válnak. Ez teszi lehetővé az AI-feldolgozást.
- 2. A jelentés geometriává válik. A hasonló fogalmak hasonló vektorokat kapnak. A távolság a hasonlóságot méri. Az irányok kapcsolatokat ragadnak meg.
- 3. Adatokból tanultak, nem kézzel készítettek. A neurális hálózatok a képzés részeként tanulják meg a beágyazásokat. Az adatok mintázatai határozzák meg a reprezentációt.
- 4. Szemantikus műveleteket tesznek lehetővé. A vektorokon végzett matematika a jelentésről való gondolkodást tükrözi. A vektoraritmetika analógiákat hoz létre.
- 5. Több típus a különböző adatokhoz. Szavak, mondatok, képek, gráfok. Mindegyikhez speciális beágyazási módszerek tartoznak.
- 6. A bináris beágyazások hatékonyságot kínálnak. 1 bit dimenzióként a 32 helyett. Hatalmas memória- és sebességnövekedés. Sok feladatra működik.
- 7. A dimenziók száma kompromisszum. A több dimenzió több komplexitást ragad meg. De számítási erőforrásokat igényel. Egyensúlyra van szükség.
A lényeg
A beágyazások azok, ahogyan az AI áthidalja a szakadékot az emberi fogalmak és a gépi számítás között. Minden, ami jelentéssel bír, vektorokká alakul egy olyan térben, ahol a jelentésbeli hasonlóság geometriai hasonlósággá válik.
Ez nem csupán reprezentáció. Ez a modern AI alapja. Keresés, ajánlás, generálás, megértés. Mindegyik beágyazásokra támaszkodik.
A vektorok nem önkényesek. Úgy tanulják meg őket, hogy megragadják a szemantikai szerkezetet. A geometria tükrözi a jelentést. A matematikai műveletek az érvelésnek felelnek meg.
A bináris beágyazások megmutatják, hogy a szemantikai jelentéshez nincs szükség lebegőpontos pontosságra. Az 1 bites reprezentációk működnek. Hatékonyan. Nagy léptékben. Bárhol telepíthetően.
A beágyazások megértése azt jelenti, hogy megértjük, hogyan látja a világot az AI. Nem szavakként vagy képekként. Hanem magas dimenziós térben lévő vektorokként, ahol a jelentés matematika.
Hatékony beágyazásokat szeretne? Fedezze fel a Dweve hipervektoros megközelítését. 65 536 bites bináris mintázatok. XNOR-alapú hasonlóság. Szemantikai jelentés bináris térben. Az a fajta reprezentáció, amely hardveres sebességgel működik.