Artiklid

Mis on vektorandmebaasid, kuidas need töötavad ja potentsiaalne turg

Vektorandmebaas on teatud tüüpi andmebaas, mis salvestab andmeid suuremõõtmeliste vektoritena, mis on funktsioonide või atribuutide matemaatilised esitused. 

Need vektorid genereeritakse tavaliselt toorandmetele, nagu tekst, pildid, heli, video ja muud manustamisfunktsioonid.

Vektorandmebaasid võivad olla definite kui tööriist, mis indekseerib ja salvestab vektormanused kiireks taastamiseks ja sarnasuse otsimiseks koos selliste funktsioonidega nagu metaandmete filtreerimine ja horisontaalne skaleerimine.

Eeldatav lugemisaeg: 9 minutit

Kasvav investorite huvi

Viimastel nädalatel on investorite huvi vektorandmebaaside vastu kasvanud. Alates 2023. aasta algusest oleme märganud, et:

Vaatame üksikasjalikumalt, mis on vektorandmebaasid.

Vektorid kui andmete esitus

Vektorandmebaasid toetuvad suurel määral vektormanustamisele – andmeesituse tüübile, mis kannab endas semantilist teavet, mis on tehisintellekti jaoks kriitilise tähtsusega, et mõista ja säilitada pikaajalist mälu, millele keerukate toimingute tegemisel tugineda. 

Vektori manused

Vektori manused on nagu kaart, kuid selle asemel, et näidata meile, kus asjad maailmas asuvad, näitavad nad meile, kus asjad asuvad milleski nn. vektorruum. Vektorruum on omamoodi suur mänguväljak, kus igal asjal on oma koht, kus mängida. Kujutage ette, et teil on rühm loomi: kass, koer, lind ja kala. Saame luua iga pildi jaoks vektormanuse, andes sellele mänguväljakul erilise positsiooni. Kass võib olla ühes nurgas, koer teisel pool. Lind võiks olla taevas ja kala võiks olla tiigis. See koht on mitmemõõtmeline ruum. Iga dimensioon vastab nende erinevatele aspektidele, näiteks kaladel on uimed, lindudel tiivad, kassil ja koertel jalad. Nende teine ​​aspekt võib olla see, et kalad kuuluvad vette, linnud peamiselt taevasse ning kassid ja koerad maa alla. Kui meil on need vektorid olemas, saame kasutada matemaatilisi tehnikaid nende sarnasuse alusel rühmitamiseks. Meie käsutuses oleva teabe põhjal

Seega on vektormanused nagu kaart, mis aitab meil leida vektorruumi asjade sarnasust. Nii nagu kaart aitab meil maailmas navigeerida, aitavad vektormanused liikuda vektori mänguväljakul.

Põhiidee on see, et üksteisega semantiliselt sarnaste manustega on nende vahel väiksem vahemaa. Et teada saada, kui sarnased need on, saame kasutada vektorkauguse funktsioone, nagu Eukleidiline kaugus, koosinuskaugus jne.

Vektorandmebaasid vs vektorteegid

Vektori raamatukogud sarnasuse otsingute tegemiseks salvestada vektorite põimimised mällu indeksitesse. Vektori raamatukogudel on järgmised omadused/piirangud:

  1. Salvesta ainult vektoreid : vektoriteekid salvestavad ainult vektorite manuseid, mitte aga seotud objekte, millest need loodi. See tähendab, et kui teeme päringu, vastab vektoriteek asjakohaste vektorite ja objekti ID-dega. See on piirav, kuna tegelik teave salvestatakse objekti, mitte ID. Selle probleemi lahendamiseks peaksime objektid hoidma teisese salvestusruumis. Seejärel saame kasutada päringu poolt tagastatud ID-sid ja sobitada need objektidega, et tulemusi mõista.
  2. Indeksi andmed on muutumatud : vektorraamatukogude loodud indeksid on muutumatud. See tähendab, et kui oleme oma andmed importinud ja indeksi loonud, ei saa me enam muudatusi teha (ei sisestata, kustutada ega muuta). Indeksis muudatuste tegemiseks peame selle nullist uuesti üles ehitama
  3. Päring importimise piiramise ajal : enamiku vektoriteekidest ei saa andmete importimise ajal päringuid teha. Esmalt peame importima kõik oma andmeobjektid. Seega luuakse indeks pärast objektide importimist. See võib olla probleem rakenduste puhul, mis nõuavad miljonite või isegi miljardite objektide importimist.

Saadaval on palju vektorotsingu raamatukogusid: Facebooki FAISS, tüütu Spotify ja ScanNN Google'i poolt. FAISS kasutab klastrimeetodit, Annoy kasutab puid ja ScanNN kasutab vektorite tihendamist. Igaühel on jõudluse kompromiss, mille saame valida oma rakenduse ja jõudlusnäitajate põhjal.

CRUD

Peamine omadus, mis eristab vektorandmebaase vektorteekidest, on andmete arhiveerimise, värskendamise ja kustutamise võimalus. Vektorandmebaasidel on CRUD tugi täielik (loo, lugemine, värskendamine ja kustutamine), mis lahendab vektorteegi piirangud.

  1. Arhiivige vektoreid ja objekte : Andmebaasid võivad salvestada nii andmeobjekte kui vektoreid. Kuna mõlemad on salvestatud, saame vektorotsingu kombineerida struktureeritud filtritega. Filtrid võimaldavad meil veenduda, et lähimad naabrid vastavad metaandmete filtrile.
  2. Muutuvus : kuna vektorandmebaasid toetavad täielikult toores, saame hõlpsasti lisada, eemaldada või värskendada oma registri kirjeid pärast selle loomist. See on eriti kasulik pidevalt muutuvate andmetega töötamisel.
  3. Reaalajas otsing : erinevalt vektorteekidest võimaldavad andmebaasid meil importimise ajal oma andmeid päringuid teha ja neid muuta. Miljonite objektide laadimisel on imporditud andmed täielikult juurdepääsetavad ja töökorras, nii et te ei pea ootama importimise lõpuleviimist, et alustada tööd juba olemasolevaga.

Lühidalt öeldes pakub vektorandmebaas suurepärase lahenduse vektorite manustamiseks, käsitledes iseseisvate vektorindeksite piiranguid, nagu on kirjeldatud eelmistes punktides.

Kuid mis teeb vektorandmebaasidest paremad kui traditsioonilised andmebaasid?

Vektorandmebaasid vs traditsioonilised andmebaasid

Traditsioonilised andmebaasid on loodud struktureeritud andmete salvestamiseks ja toomiseks relatsioonimudelite abil, mis tähendab, et need on optimeeritud veergudel ja andmeridadel põhinevate päringute jaoks. Kuigi traditsioonilistes andmebaasides on võimalik salvestada vektormanustusi, ei ole need andmebaasid vektoroperatsioonide jaoks optimeeritud ega suuda tõhusalt teostada sarnasusotsinguid ega muid keerulisi toiminguid suurte andmekogumitega.

Seda seetõttu, et traditsioonilised andmebaasid kasutavad indekseerimistehnikaid, mis põhinevad lihtsatel andmetüüpidel, nagu stringid või numbrid. Need indekseerimismeetodid ei sobi vektorandmete jaoks, millel on suur mõõtmelisus ja mis nõuavad spetsiaalseid indekseerimistehnikaid, nagu pöördindeksid või ruumipuud.

Samuti ei ole traditsioonilised andmebaasid loodud suure hulga struktureerimata või poolstruktureeritud andmete haldamiseks, mida sageli seostatakse vektori manustega. Näiteks võib pilt või helifail sisaldada miljoneid andmepunkte, mida traditsioonilised andmebaasid ei suuda tõhusalt käsitleda.

Vektorandmebaasid on seevastu spetsiaalselt loodud vektorandmete salvestamiseks ja toomiseks ning optimeeritud sarnasuse otsimiseks ja muudeks keerulisteks operatsioonideks suurtes andmekogumites. Nad kasutavad spetsiaalseid indekseerimistehnikaid ja algoritme, mis on loodud töötama suuremõõtmeliste andmetega, muutes need vektormanuste salvestamiseks ja toomiseks palju tõhusamaks kui traditsioonilised andmebaasid.

Nüüd, kui olete vektorandmebaaside kohta nii palju lugenud, võite küsida, kuidas need töötavad? Heidame pilgu peale.

Kuidas vektorandmebaas töötab?

Me kõik teame, kuidas relatsiooniandmebaasid töötavad: nad salvestavad stringe, numbreid ja muud tüüpi skalaarandmeid ridadesse ja veergudesse. Teisest küljest töötab vektorandmebaas vektoritega, seega on selle optimeerimise ja päringute tegemise viis üsna erinev.

Traditsioonilistes andmebaasides küsime tavaliselt andmebaasi ridu, mille väärtus vastab tavaliselt meie päringule täpselt. Vektorandmebaasides rakendame meie päringuga kõige sarnasema vektori leidmiseks sarnasuse mõõdikut.

Vektorandmebaas kasutab mitme algoritmi kombinatsiooni, mis kõik osalevad lähima naabri otsingus (ANN). Need algoritmid optimeerivad otsingut räsimise, kvantimise või graafikupõhise otsingu abil.

Need algoritmid on kokku pandud konveieriks, mis tagab küsitava vektori naabrite kiire ja täpse otsingu. Kuna vektorandmebaas annab ligikaudseid tulemusi, on peamised kompromissid, mida me kaalume, täpsuse ja kiiruse vahel. Mida täpsem on tulemus, seda aeglasem on päring. Hea süsteem võib aga pakkuda ülikiiret otsimist peaaegu täiusliku täpsusega.

  • Indekseerimine : vektorite andmebaas indekseerib vektorid, kasutades selliseid algoritme nagu PQ, LSH või HNSW. See samm seob vektorid andmestruktuuriga, mis võimaldab kiiremat otsimist.
  • Query : vektorite andmebaas võrdleb indekseeritud päringuvektorit andmestiku indekseeritud vektoritega, et leida lähimad naabrid (rakendades selle indeksi sarnasuse mõõdikut)
  • Järeltöötlus : Mõnel juhul hangib vektorandmebaas andmestikust lõplikud lähimad naabrid ja töötleb neid lõpptulemuste tagastamiseks järeltöötlusega. See samm võib hõlmata lähimate naabrite ümberklassifitseerimist, kasutades teistsugust sarnasuse mõõdet.

kasu

Vektorandmebaasid on võimas tööriist sarnasuste otsimiseks ja muudeks keerukateks toiminguteks suurte andmekogumitega, mida ei saa traditsiooniliste andmebaaside abil tõhusalt teostada. Funktsionaalse vektorandmebaasi koostamiseks on manustamine hädavajalik, kuna need tabavad andmete semantilise tähenduse ja võimaldavad täpset sarnasuse otsingut. Erinevalt vektorteekidest on vektorandmebaasid loodud meie kasutusjuhtumitele sobima, muutes need ideaalseks rakenduste jaoks, kus jõudlus ja mastaapsus on kriitilise tähtsusega. Seoses masinõppe ja tehisintellekti tõusuga muutuvad vektorandmebaasid üha olulisemaks paljude rakenduste jaoks, sealhulgas soovitussüsteemid, pildiotsing, semantiline sarnasus ja loetelu jätkub. Kuna valdkond areneb edasi, võime tulevikus oodata veelgi uuenduslikumaid vektorandmebaaside rakendusi.

Ercole Palmeri

Innovatsiooni uudiskiri
Ärge jätke ilma kõige olulisematest uuendustest. Registreeruge, et saada neid meili teel.

Viimased artiklid

Uuenduslik sekkumine liitreaalsusesse koos Apple'i vaatajaga Catania polikliinikus

Catania polikliinikus viidi läbi oftalmoplastika operatsioon Apple Vision Pro reklaamivaaturiga…

3 mai 2024

Lastele mõeldud värvimislehtede eelised – võlumaailm igas vanuses

Peenmotoorika arendamine värvimise kaudu valmistab lapsi ette keerukamate oskuste, nagu kirjutamise, jaoks. Värvimiseks…

2 mai 2024

Tulevik on käes: kuidas laevandustööstus muudab maailmamajandust murranguliseks

Meresõidusektor on tõeline ülemaailmne majanduslik jõud, mis on liikunud 150 miljardi suuruse turu poole...

1 mai 2024

Kirjastajad ja OpenAI sõlmivad lepinguid tehisintellekti poolt töödeldava teabe liikumise reguleerimiseks

Eelmisel esmaspäeval teatas Financial Times tehingust OpenAI-ga. FT litsentsib oma maailmatasemel ajakirjandust…

Aprill 30 2024