2024-01-05 | Adatvédelem, Data Protection, IT jog, IT Law
Mi az a beágyazás?
A ChatGPT-hez hasonló AI modellek középpontjában a beágyazások állnak, és az elmúlt években a mesterséges intelligencia területén elért szinte minden előrelépés ezekre az elemekre vezethető vissza.
Amikor nem számszerű adatokkal dolgoztak, a mesterséges intelligencia kutatói évtizedekig megoldhatatlan problémával találták szemben magukat. A klasszikus számítógépek - a mai napig - csak az "1-eseket" és a "0-sokat" értik, a betűket vagy a hanghullámokat nem. Erre találtak ki megoldásnak a kódolást, amikor a szavakat numerikus formában fejezzük ki.
Ezzel a technikával a számítógép tudott azonosítani fogalmakat, de az azok közötti relációkat, hogy mennyire hasonlítanak egymásra vagy különböznek egymástól, nem látta át. A megoldás 2013-ban született meg, amikor a Google kiadta a word2vec nevű neurális hálózatot, amely képes volt ezt az átalakítást elvégezni: bemenetként egy szót vett, és annak vektoros reprezentációját, azaz beágyazását adta vissza. A legfontosabb fejlesztés az volt, hogy ezek a transzformációk nem véletlenszerűek, ami azt jelenti, hogy a szemantikailag összefüggő vektorokat kombinálva új vektorokat hozhatunk létre, amelyek logikai kombinációkat képviselnek. Ez vezetett a ma már híres "Király - Férfi + Nő = Királynő" paradigmához, ami azt jelentette, hogy megtanítottuk a gépeknek a szöveget körülvevő kontextus értelmezését.
Hogyan vonatkozik ez a ChatGPT-re?
A ChatGPT a hasonlóság vagy rokonság lencséjén keresztül vizsgálja a bevitt szöveget, és így látja át a világunkban jelen lévő tárgyak, alakok vagy történetek közötti összefüggéseket. A ChatGPT számára két elem szemantikailag akkor kapcsolódik egymáshoz, ha a vektoraik hasonlóak. Valójában ez a hasonlósági elv alapozza meg az önmegfigyelés működését, azt a mechanizmust, amelyet a ChatGPT és más Transformer-alapú modellek arra használnak, hogy kiszámítsák a szavak közötti kapcsolatokat egy szövegsorozatban, és így megragadják a mondat szemantikai jelentését.
A Transformersek működésének két fázisa van:
- A képzési fázis, amikor egy bizonyos időpontig hatalmas mennyiségű szöveget halmozunk fel, és ezzel képezzük a modellt.
- A következtetési fázis, ahol a modell új előrejelzéseket készít a képzési fázisban tanultak alapján.
A vállalati megoldások kialakításakor azonban a szükséges adatok nem érhetők el az interneten, hiszen azok bizalmasak. Ezért ahhoz, hogy elérhetővé tegyük azokat a modell számára, vektoros adatbázisokat használunk. (Egy olyan adatbázis, amelyben az adatokat vektoros formában tároljuk.)
Retrieval Augmented Generation
A vektoros adatbázis használatával történő kommunikációnak a folyamata a következő:
- A felhasználó elküld egy kérdést.
- A kérdés beágyazottá alakul, és beillesztésre kerül a vektoradatbázisba.
- Vektorhasonlóság-számítással kivonjuk azokat a k vektorokat, amelyek a kérdés beágyazásához hasonlóak, és szemantikailag rokonok.
- Ezek a vektorok az eredeti szöveget tárolják a metaadatokban, így ismerjük a kérdés megválaszolásához szemantikailag releváns kontextusdarabokat.
- A nyelvi modell ezt a kontextust használja fel a kérdés megválaszolásához.
Ezt az eljárást Retrieval Augmented Generationnek, azaz RAG-nek nevezik, és ez a GenAI-megoldások szabványos architektúráját olyan vállalatoknál, amelyek nem tudnak olyan saját modelleket, mint a ChatGPT, bizalmas adatokkal betanítani.
Ez az architektúra mindenütt elterjedt, a világon mindenhol alkalmazott legjobb gyakorlat, mivel rendkívül biztonságos és rendkívül hatékony a nagy nyelvi modellek vállalati felhasználási esetekben történő telepítése során. Most azonban ennek az architektúrának a biztonságossága kérdőjelessé vált.
Adatbiztonsági probléma
Eddig úgy tudtuk, hogy a beágyazódási folyamat visszafordíthatatlan, de most ez az elképzelés megkérdőjeleződött.
A vektoros adatbázisok esetében az adatokat vektoros formában tároljuk. Ezért, ha a hackereknek sikerül hozzáférniük az adatbázisához, akkor vektoros formában lévő adatokkal kell foglalkozniuk, melyek visszafordítása eddig mondhatni lehetetlen volt.
Ennek a problémának a „kiküszöbölésére” hozták létre a Vec2Textet, az első olyan neurális hálózatot, amely sikeresen visszanyerte az eredeti szöveget a beágyazásokból, megnyitva ezzel az utat a hackerek előtt, hogy megtámadják ezeket az adatbázisokat, amelyek ma már alapvető darabjai a vállalatok adatpuzzle-jének.
Gyakorlatilag, ha olyan szöveghez jutunk, amelynek beágyazása megegyezik azzal, amelyet éppen dekódolni próbálunk, akkor könnyedén megszerezhető az eredeti szöveg. Ez probléma, tekintve, hogy a legtöbb cég ugyanazt a beágyazást használja (OpenAI adatbeágyazása).
- A modell először kitalál egy első feltételezett szöveget, és kiszámítja annak beágyazását.
- Ezután kiszámítja a szemantikai hasonlóságot a dekódolni kívánt beágyazás tekintetében.
- A két vektoros beágyazás közötti különbség megmondja a modellnek, hogy milyen messze vagy közel van az eredeti szövegtől.
- A képzési fázisban ezt a különbséget a neurális hálózat optimalizálásához használjuk, hogy megtanulja azt csökkenteni.
- A következtetési fázisban ez a különbség segít a modellnek korrigálni az első hipotézisét, és egy új lehetséges megoldást kap egy algoritmus segítségével, amely algoritmus segít a modellnek a lehetőségek között keresni, miközben csak a legvalószínűbb lehetőségekre összpontosít.
- A Vec2Text kiszámítja az új szöveget ebből a beágyazásból.
- Ennek az új szövegnek a beágyazása kiszámításra kerül és összeméri az objektív szöveggel, az eredmény pedig remélhetőleg a helyes vagy legalábbis az előzőhöz közelebb álló beágyazás lesz.
Ha ezt a hatlépéses folyamatot elégszer elvégezzük, akkor végül az eredeti szöveget kapjuk, megtörve a visszafordíthatatlanság elvét.
Ezzel a forgatókönyvvel a mesterséges intelligencia úgy tűnik, megtöri a visszafordíthatatlannak hitt beágyazás rendszerét, veszélyeztetve ezzel a világ legbizalmasabb adatait is.