Microsoft-ek iturburu irekia du Bing-en erabiltzen den bilaketa bektorialaren liburutegia

Microsoft argitaratuko ikaskuntza automatikoko liburutegien iturburu-kodeak SPTAG (Space Partition Tree And Graph) gutxi gorabeherako algoritmoaren ezarpenarekin hurbilen dagoen auzokideen bilaketa. Liburutegia garatu Microsoft Research-en ikerketa-dibisioan eta bilaketa-teknologia garatzeko zentroan (Microsoft Search Technology Center). Praktikan, SPTAG Bing bilatzaileak erabiltzen du bilaketa-kontsulten testuinguruaren arabera emaitzarik garrantzitsuenak zehazteko. Kodea C++-n idatzita dago eta arabera banatuta MIT lizentziapean. Linux eta Windows-erako eraikitzea onartzen da. Python hizkuntzarako lotura dago.

Bilatzaileetan biltegiratze bektoriala erabiltzeko ideia denbora luzez ibiltzen den arren, praktikan, haien ezarpena oztopatzen du bektoreak eta eskalagarritasun mugak dituzten eragiketen baliabide-intentsitate handiak. Ikaskuntza automatiko sakoneko metodoak hurbileneko hurbileneko bilaketa-algoritmoekin konbinatuz sistema bektorialen errendimendua eta eskalagarritasuna bilatzaile handientzat onargarria den maila batera eramatea ahalbidetu du. Adibidez, Bing-en, 150 milioi bektore baino gehiagoko indize bektorial baterako, emaitza garrantzitsuenak lortzeko denbora 8 ms-ko epean dago.

Liburutegiak indize bat eraikitzeko eta bilaketa bektorialak antolatzeko tresnak biltzen ditu, bai eta bektore bilduma oso handiak biltzen dituen lineako bilaketa sistema banatu bat mantentzeko tresna multzo bat ere. Eskainia modulu hauek: indexatzeko indize-eraikitzailea, hainbat nodoko multzo batean banatutako indize baten bidez bilatzeko bilatzailea, nodoetan kudeatzaileak exekutatzeko zerbitzaria, hainbat zerbitzari bakarrean konbinatzeko agregatzailea eta kontsultak bidaltzeko bezeroa. Bektore berriak indizean sartzea eta hegan bektoreak ezabatzea onartzen da.

Liburutegiak esan nahi du bilduman prozesatutako eta aurkezten diren datuak erlazionatutako bektoreen formatuan formateatuta daudela, Euklidearra (L2) edo kosinua distantziak Bilaketa-kontsultak haien eta jatorrizko bektorearen arteko distantzia minimoa duten bektoreak itzultzen ditu. SPTAG-ek espazio bektoriala antolatzeko bi metodo eskaintzen ditu: SPTAG-KDT (K dimentsioko zuhaitza (kd-zuhaitza) Eta auzo grafiko erlatiboa) eta SPTAG-BKT (k-esan nahi duen zuhaitza (k-esan nahi du zuhaitza eta auzo grafiko erlatiboa). Lehenengo metodoak baliabide gutxiago behar ditu indizearekin lan egitean, eta bigarrenak bilaketa-emaitzen zehaztasun handiagoa erakusten du bektore bilduma oso handietarako.

Aldi berean, bilaketa bektoriala ez da testura mugatzen eta multimedia informazio eta irudietan aplika daiteke, baita gomendioak automatikoki sortzeko sistemetan ere. Esaterako, PyTorch esparruan oinarritutako prototipoetako batek irudietan objektuen antzekotasunean oinarritutako bilaketa-sistema bektorial bat ezarri zuen, animalien, katuen eta txakurren irudiekin hainbat erreferentzia-bildumatako datuak erabiliz, bektore multzo bihurtu zirenak. . Bilaketarako sarrerako irudi bat jasotzen denean, ikaskuntza automatikoko eredu bat erabiliz bektore bihurtzen da, eta, horren arabera, indizetik antzekoenak diren bektoreak hautatzen dira SPTAG algoritmoa erabiliz eta horren ondorioz lotutako irudiak itzultzen dira.

Iturria: opennet.ru

Gehitu iruzkin berria