Kompania Microsoft tekstet burimore të bibliotekës së mësimit të makinerive (Tree Ne Ndërprerje Hapësinore Dhe Graf) me implementimin e algoritmit të kërkimit afërsi të përafërt . Biblioteka në njësinë kërkimore Microsoft Research dhe qendrën e zhvillimit të teknologjive të kërkimit (Microsoft Search Technology Center). Në praktikë, SPTAG përdoret në sistemin e kërkimit Bing për të përcaktuar rezultatet më relevante duke marrë parasysh kontekstin e kërkesave të përdoruesve. Kodi është shkruar në gjuhën C++ dhe është nën licencën MIT. Mbështetet ndërtimi për Linux dhe Windows. Ka një lidhje për gjuhën Python.
Pavarësisht se idetë e aplikimit të magazinave vektor në sistemet e kërkimit kanë qarkulluar për një kohë të gjatë, implementimi i tyre praktik pengohet nga kërkesat e larta të burimeve për operacionet me vektorë dhe kufizimet në shkallëzim. Kombinimi i metodave të mësimit të thellë me algoritmet e kërkimit afërsi të përafërt ka mundësuar që performanca dhe shkallëzimi i sistemeve vektor të arrijë një nivel të pranueshëm për sistemet e mëdha të kërkimit. Për shembull, në Bing për indisin vektor me më shumë se 150 miliard vektorë, koha e marrjes së rezultateve më relevante është brenda 8 ms.
Biblioteka përfshin mjete për ndërtimin e indisit dhe organizimin e kërkimeve të vektorëve, si edhe një grup mjetesh për mbështetje të një sistemi të shpërndarë të kërkimeve online, që mbulon koleksione shumë të mëdha vektorësh. module të ndryshme: ndërtuesi i indeksit për indeksimin, kërkuesi për kërkimin me përdorimin e indeksit, i shpërndarë në një klaster me disa nyje, serveri për të nisur përpunuesit në nyje, Aggregator për të kombinuar disa serverë në një të vetme dhe klienti për të dërguar kërkesat. Mbështetet inkorporimi i vektorëve të rinj në indeks dhe fshirja e vektorëve në kohë reale.
Biblioteka nënkupton se të dhënat e përpunuara dhe të paraqitura në koleksion janë të organizuara si vektorë të lidhur që mund të krahasohen bazuar në (L2) ose Kur bëhet një kërkesë, kthehen vektorët, distanca midis të cilëve dhe vektorit origjinal është minimale. Në SPTAG ofrohen dy metoda për organizimin e hapësirës vektor: SPTAG-KDT (Pema K-dimensionale () dhe ) dhe SPTAG-BKT (pema e k-mesme ( dhe grafiku i fqinjësive relative). Metoda e parë kërkon më pak burime gjatë punës me indeksin, ndërsa e dyta tregon saktësi më të lartë të rezultateve të kërkimit në koleksione shumë të mëdha vektorësh.
Në këtë mënyrë, kërkimi me vektorë nuk kufizohet vetëm në tekst dhe mund të aplikohet në informacionin multimedial dhe imazhe, si dhe në sistemet e formimit automatik të rekomandimeve. Për shembull, në një nga prototipat e ndërtuar mbi framework-un PyTorch u realizua një sistem vektorësh për kërkimin duke marrë parasysh ngjashmërinë e objekteve në imazhe, e ndërtuar me të dhënat nga disa koleksione referuese me imazhe të kafshëve, maceve dhe qenve, të cilat u transformuan në grupe vektorësh. Kur një imazh hyres vjen për kërkimin, ai transformohet duke përdorur një model të mësimit të makinerisë në një vektor, mbi të cilin me algoritmin SPTAG zgjidhen vektorët më të ngjashëm nga indeksi dhe si rezultat kthehen imazhet e lidhura me ta.
Burimi: opennet.ru
