Ugrás a fő tartalomra

szójegyzékbejegyzés

Beágyazás (Embedding)

Kategória
RAG, Embeddings & Search
Nehézség
Középhaladó

Meghatározás

A beágyazás diszkrét adatok – például szöveg vagy képek – alacsony dimenziós, folytonos vektoros reprezentációja, ahol a vektorok közötti geometriai távolság megfelel az alapul szolgáló adatok szemantikai hasonlóságának.

Működés és összefüggések

A beágyazások úgy működnek, hogy összetett, nagy dimenziós adatokat egy sűrű, alacsonyabb dimenziós vektortérbe képeznek le. Ebben a térben a hasonló jelentésű vagy jellemzőkkel bíró elemek közelebb helyezkednek el egymáshoz, míg az eltérő elemek távolabb kerülnek. Például egy szövegbeágyazási modellben a „király” vektor matematikailag közel lehet a „királynő” és az „uralkodó” vektorához, de távol az „alma” vektorától. Ezeket a modelleket jellemzően hatalmas adathalmazokon tanítják be ezen kapcsolatok megtanulására. A beágyazások azonban statikus reprezentációk; nem ragadják meg eredendően a környező mondattól függően változó kontextust, ezért a modern architektúrák gyakran fejlettebb, kontextualizált reprezentációkat használnak.

Miért fontos

Lehetővé teszik a RAG (Retrieval-Augmented Generation) használatát azáltal, hogy lehetővé teszik a rendszerek számára a releváns kontextus gyors megtalálását hatalmas adatbázisokból az LLM-válaszok megalapozásához. Beágyazások nélkül az AI nehezen értené meg a fogalmak közötti kapcsolatokat, így lehetetlen lenne hatékony ajánlómotorokat, szemantikus keresőeszközöket vagy személyre szabott tartalomrendszereket építeni, amelyek valóban „megértik” a felhasználói szándékot.

Gyakorlati példa

Képzeljen el egy e-kereskedelmi oldalt, amely beágyazásokat használ a keresés működtetésére. Amikor egy felhasználó a „kényelmes téli lábbeli” kifejezésre keres, a rendszer vektorrá alakítja ezt a lekérdezést. Ezután összehasonlítja ezt a vektort a katalógusban szereplő összes termék előre kiszámított vektorával. Még ha a termékleírás nem is tartalmazza a „kényelmes” szót, a rendszer szemantikai egyezésként azonosítja a „polár bélésű csizmát”, mivel vektoraik közel vannak a beágyazási térben.

Gyakori hibák

  • Annak feltételezése, hogy a beágyazások ember által olvashatók; ezek nagy dimenziós tömbök, amelyek lekérdezéséhez speciális vektoradatbázisok szükségesek.
  • A beágyazások összekeverése a tokenizációval; a tokenizáció a szöveg egységekre bontásának folyamata, míg a beágyazások ezen egységek numerikus reprezentációja.
  • A beágyazások frissítésének elmulasztása, amikor az alapul szolgáló adatok vagy a modellverzió megváltozik, ami inkonzisztens keresési eredményekhez vezet.
  • A beágyazások „mindenre jó” megoldásként való kezelése; a különböző modelleket különböző adattípusokra (pl. szöveg vs. kép) optimalizálták.

Gyakori kérdések

Miben különböznek a vektoradatbázisok a hagyományos adatbázisoktól?

A hagyományos adatbázisok sorokban és oszlopokban tárolják az adatokat, és pontos egyezésekre vagy strukturált lekérdezésekre támaszkodnak. A vektoradatbázisokat kifejezetten nagy dimenziós vektorok tárolására és indexelésére tervezték, lehetővé téve a szemantikai hasonlóságon alapuló „közelítő legközelebbi szomszéd” kereséseket.

Használhatom ugyanazt a beágyazási modellt szöveghez és képekhez is?

Általában nem. Multimodális beágyazási modellre (például CLIP) van szüksége, ha mind a szöveget, mind a képeket ugyanabba a közös vektortérbe szeretné leképezni. A szabványos szövegmodellek nem tudják feldolgozni a képadatokat.

Mi a kapcsolat a dimenzionalitás és a teljesítmény között?

A magasabb dimenzionalitás több árnyalt kapcsolatot képes megragadni, de növeli a számítási költségeket és a memóriaigényt. Az alacsonyabb dimenzionalitás gyorsabb, de elveszítheti a finom szemantikai különbségeket.