Embeddings: kako AI pretvara sve u brojeve

AI ne razumije riječi ni slike. Radi s brojevima. Embeddings premošćuju taj jaz. Evo kako.

Embeddings: kako AI pretvara sve u brojeve

Problem s brojevima

Računala rade s brojevima. Samo brojevima. Neuronske mreže? Isto. Samo matematika nad brojevima.

Ali svijet nisu brojevi. Riječi. Slike. Zvukovi. Pojmovi. Kako AI to obrađuje?

Ugradnje (embeddings). Pretvaraju sve u brojeve na način koji čuva značenje. Ključan pojam. U temelju je sve moderne umjetne inteligencije.

Što su ugradnje zapravo

Ugradnja je gusti vektor brojeva koji predstavlja nešto.

Ugradnja riječi: "cat" postaje [0.2, -0.5, 0.8, ...] (stotine brojeva).

Ugradnja slike: fotografija postaje [0.1, 0.9, -0.3, ...] (tisuće brojeva).

Brojevi nisu nasumični. Naučeni su da uhvate značenje. Slične stvari dobivaju slične ugradnje. Različite stvari dobivaju različite ugradnje.

To je ključ: sličnost u značenju postaje sličnost u brojevima. Matematičke operacije nad ugradnjama odražavaju semantičke odnose.

Ugradnje sažimaju riječi i slike u naučene koordinate u kojima bliski brojevi i dalje nose blisko značenje.

Zašto su nam potrebne ugradnje

Riječi biste mogli predstaviti kao one-hot vektore. "Cat" = [1,0,0,...,0]. "Dog" = [0,1,0,...,0]. Jedinstveni broj za svaku riječ.

Problem: ne hvata se nikakav odnos. "Cat" i "dog" jednako su različiti kao "cat" i "airplane". Svi su vektori ortogonalni. Nema semantičkog značenja.

Ugradnje to rješavaju. "Cat" i "dog" dobivaju slične ugradnje (obje su životinje). "Cat" i "airplane" dobivaju različite ugradnje. Sličnost u vektorskom prostoru odražava sličnost u značenju.

Sada matematičke operacije imaju smisla. Aritmetika nad ugradnjama odgovara zaključivanju o značenju.

Kako se ugradnje uče

Ugradnje nisu ručno izrađene. Uče se iz podataka.

Ugradnje riječi (Word2Vec pristup):

Istrenirajte neuronsku mrežu na jednostavnom zadatku: predvidite riječi u kontekstu iz ciljne riječi. Ili obrnuto.

Primjer: rečenica "The cat sat on the mat." Za ciljnu riječ "cat," predvidite "the," "sat," "on."

Mreža uči: da bi dobro predviđala kontekst, mora slične riječi predstaviti slično. "Cat" i "dog" pojavljuju se u sličnim kontekstima. Dobivaju slične ugradnje.

Ugradnje su nusproizvod. Nisu cilj zadatka. Ali hvataju semantičko značenje.

Moderni pristup (Transformeri):

Ugradnje se uče kao dio većeg modela. Jezični model predviđa sljedeću riječ. Model za slike klasificira objekte. Ugradnje nastaju kao unutarnje reprezentacije.

One su kontekstualne. Ista riječ dobiva različite ugradnje u različitim kontekstima. "Bank" (financijski) naspram "bank" (rijeka) dobivaju različite reprezentacije.

Semantički prostor

Ugradnje stvaraju geometrijski prostor u kojem je značenje geometrija.

  • Sličnost = blizina: Slični se koncepti grupiraju. Životinje se grupiraju. Vozila se grupiraju. Apstraktni koncepti se grupiraju. Udaljenost mjeri sličnost.
  • Odnosi = smjerovi: Poznati primjer: king - man + woman ≈ queen

Vektorska aritmetika obuhvaća odnose. Smjer od "man" do "king" (od roda do kraljevstva) sličan je onome od "woman" do "queen."

Analogije postaju vektorske operacije. Zapanjujuće, ali funkcionira.

Dimenzije = atributi:

Svaka dimenzija obuhvaća neki atribut. Jedna dimenzija može biti "živost" (živo naspram neživog). Druga može biti "veličina." Treća "apstraktnost."

Stotine dimenzija obuhvaćaju stotine atributa. Zajedno predstavljaju značenje.

Semantički prostor pretvara značenje u geografiju: klasteri pokazuju sličnost, strelice pokazuju odnose, osi sadrže atribute.

Različite vrste embeddinga

  • Word embeddingi: Riječi u vektore. Word2Vec, GloVe, FastText. Temelj NLP-a.
  • Sentence embeddingi: Cijele rečenice u vektore. Obuhvaćaju značenje cijelih rečenica, ne samo riječi. Koriste se za semantičko pretraživanje.
  • Image embeddingi: Slike u vektore. CNN značajke. Izlazi vision transformera. Omogućuju pretraživanje slika i usporedbu sličnosti.
  • Multimodalni embeddingi: Različite modalitete u isti prostor. Tekst i slike dobivaju usporedive embeddinke. CLIP to radi. Omogućuje pretraživanje između modaliteta.
  • Graph embeddingi: Čvorove u grafovima u vektore. Obuhvaćaju strukturu mreže. Koriste se u društvenim mrežama i grafovima znanja.
Različite obitelji embeddinga zasebni su ulazi koji napajaju istu vrstu vektorskog mehanizma.

Kako se embeddingi koriste

  • Pretraživanje sličnosti: Pronalaženje sličnih stavki. Najbliži susjedi u prostoru vektorskih reprezentacija. Tražilice, sustavi preporuka.
  • Klasifikacija: Korištenje vektorskih reprezentacija kao značajki za klasifikaciju. Semantičke značajke, ne sirovi podaci. Bolja generalizacija.
  • Grupiranje: Grupiranje sličnih stavki. K-means na vektorskim reprezentacijama. Modeliranje tema, segmentacija kupaca.
  • Prijenosno učenje: Korištenje vektorskih reprezentacija iz velikog modela za mali zadatak. Prethodno naučeno znanje se prenosi. Uobičajeno u računalnom vidu i obradi prirodnog jezika.
  • Generativno pojačano pretraživanje: Vektorizacija upita i dokumenata. Dohvaćanje relevantnih dokumenata. Prosljeđivanje jezičnom modelu. Činjenični AI odgovori.

Binarne vektorske reprezentacije (učinkovita alternativa)

Tradicionalne vektorske reprezentacije: vektori s pomičnim zarezom. 32 bita po dimenziji. Veliki memorijski otisak.

Binarne vektorske reprezentacije: 1 bit po dimenziji. Svaka dimenzija je +1 ili -1. 32× manje memorije.

Kako funkcioniraju:

Vektorske reprezentacije se uče normalno. Zatim se binariziraju: pozitivne dimenzije postaju +1, negativne -1.

Sličnost: umjesto skalarnog produkta, koristi se Hammingova udaljenost ili XNOR-popcount. Mnogo brže.

Kompromisi:

Gubi se dio preciznosti. Ali za mnoge zadatke to nije važno. Dohvaćanje i pretraživanje najbližih susjeda dobro funkcioniraju s binarnim reprezentacijama.

Dobitak: ogromna brzina i memorijska učinkovitost. Implementacija na rubnim uređajima. Brza obrada milijardi vektora.

Dweveov pristup:

Ograničenja su binarni obrasci. Inherentno binarne vektorske reprezentacije. Hipervektori od 65 536 bita. Učinkovito pohranjivanje, brze operacije.

Uspoređivanje obrazaca putem XNOR-a i popcounta. Sličnost kroz brojanje podudaranja. Binarno do kraja.

Dimenzionalnost je važna

Koliko dimenzija? Više nije uvijek bolje.

Premalo dimenzija: Ne može se obuhvatiti složenost. Različiti koncepti se sudaraju. Gube se važne razlike.

Previše dimenzija: Računalni trošak. Korištenje memorije. Pretjerano prilagođavanje. Prokletstvo dimenzionalnosti (u visokim dimenzijama sve postaje jednako udaljeno).

Tipične veličine:

Vektorske reprezentacije riječi: 100-300 dimenzija

Vektorske reprezentacije rečenica: 384-1024 dimenzije

Vektorske reprezentacije slika: 512-2048 dimenzija

Binarni hipervektori: 1024-65536 bita (za robusna svojstva)

Izbor ovisi o složenosti zadatka i računalnom proračunu.

Što trebate zapamtiti

  • 1. Vektorske reprezentacije pretvaraju sve u brojeve. Riječi, slike i koncepti postaju vektori. Omogućuju AI obradu.
  • 2. Značenje postaje geometrija. Slični koncepti dobivaju slične vektore. Udaljenost mjeri sličnost. Smjerovi bilježe odnose.
  • 3. Naučene iz podataka, ne ručno izrađene. Neuronske mreže uče vektorske reprezentacije kao dio obuke. Obrasci u podacima određuju reprezentaciju.
  • 4. Omogućuju semantičke operacije. Matematika na vektorima odražava razmišljanje o značenju. Vektorska aritmetika rješava analogije.
  • 5. Više vrsta za različite podatke. Riječi, rečenice, slike, grafovi. Svaka ima specijalizirane metode vektorizacije.
  • 6. Binarne vektorske reprezentacije nude učinkovitost. 1 bit po dimenziji umjesto 32. Ogromne uštede memorije i brzine. Funkcionira za mnoge zadatke.
  • 7. Dimenzionalnost je kompromis. Više dimenzija obuhvaća više složenosti. Ali troši računalne resurse. Potrebna je ravnoteža.
Binarni embeddingi provode vektor kroz kovačnicu: zadržite predznak, prebrojite podudaranja i vratite memoriju i brzinu.

Suština

Embeddingi su način na koji AI premošćuje jaz između ljudskih pojmova i strojnog računanja. Sve što ima značenje pretvara se u vektore u prostoru gdje sličnost u značenju postaje sličnost u geometriji.

To nije samo reprezentacija. To je temelj moderne umjetne inteligencije. Pretraživanje, preporuke, generiranje, razumijevanje. Sve se oslanja na embeddinge.

Vektori nisu proizvoljni. Oni su naučeni da uhvate semantičku strukturu. Geometrija odražava značenje. Matematičke operacije odgovaraju zaključivanju.

Binarni embeddingi pokazuju da vam za semantičko značenje ne treba preciznost s pomičnim zarezom. Reprezentacije od 1 bita funkcioniraju. Učinkovito. U velikim razmjerima. Primjenjivo bilo gdje.

Razumjeti embeddinge znači razumjeti kako AI vidi svijet. Ne kao riječi ili slike. Kao vektore u visokodimenzionalnom prostoru gdje je značenje matematika.

Želite učinkovite embeddinge? Istražite Dweveov pristup hipervektorima. Binarni obrasci od 65.536 bita. Sličnost temeljena na XNOR-u. Semantičko značenje u binarnom prostoru. Vrsta reprezentacije koja radi brzinom hardvera.