Giablihan sa Microsoft ang code alang sa vector search library nga gigamit ni Bing

Microsoft gipatik machine learning library source codes SPTAG (Space Partition Tree And Graph) uban ang pagpatuman sa gibanabana nga algorithm labing duol nga pagpangita sa silingan. Library naugmad sa research division sa Microsoft Research ug ang search technology development center (Microsoft Search Technology Center). Sa praktis, ang SPTAG gigamit sa Bing search engine aron mahibal-an ang labing may kalabutan nga mga resulta base sa konteksto sa mga pangutana sa pagpangita. Ang code gisulat sa C++ ug giapod-apod sa ubos sa lisensya sa MIT. Gisuportahan ang pagtukod alang sa Linux ug Windows. Adunay usa ka pagbugkos alang sa pinulongang Python.

Bisan pa sa kamatuoran nga ang ideya sa paggamit sa vector storage sa mga search engine dugay na nga naglutaw, sa praktis, ang ilang pagpatuman gibabagan sa taas nga resource intensity sa mga operasyon nga adunay mga vector ug mga limitasyon sa scalability. Ang paghiusa sa lawom nga mga pamaagi sa pagkat-on sa makina nga adunay gibanabana nga labing duol nga mga algorithm sa pagpangita sa silingan nagpaposible nga madala ang pasundayag ug pagkadako sa mga sistema sa vector sa usa ka lebel nga madawat alang sa dagkong mga search engine. Pananglitan, sa Bing, alang sa usa ka vector index nga labaw sa 150 ka bilyon nga mga vector, ang panahon sa pagkuha sa labing may kalabutan nga mga resulta sulod sa 8 ms.

Ang librarya naglakip sa mga himan alang sa pagtukod sa usa ka indeks ug pag-organisar sa mga pagpangita sa vector, ingon man usa ka hugpong sa mga himan alang sa pagmintinar sa usa ka gipang-apod-apod nga online nga sistema sa pagpangita nga naglangkob sa daghang mga koleksyon sa mga vector. Gitanyag ang mosunod nga mga modules: index builder para sa indexing, searcher sa pagpangita gamit ang index nga gipang-apod-apod sa usa ka cluster sa ubay-ubay nga nodes, server para sa running handler sa mga node, Aggregator para sa pagkombinar sa pipila ka servers ngadto sa usa, ug client para sa pagpadala sa mga pangutana. Ang paglakip sa bag-ong mga vector sa indeks ug ang pagtangtang sa mga vector sa langaw gisuportahan.

Ang librarya nagpasabot nga ang datos nga giproseso ug gipresentar sa koleksyon giporma sa porma sa mga may kalabutan nga mga vector nga mahimong itandi base sa Euclidean (L2) o cosine mga gilay-on Ang pangutana sa pagpangita nagbalik sa mga vector kansang distansya tali kanila ug sa orihinal nga vector gamay ra. Naghatag ang SPTAG og duha ka pamaagi sa pag-organisar sa vector space: SPTAG-KDT (K-dimensional tree (kd-kahoy) ug relatibong kasilinganan graph) ug SPTAG-BKT (k-means tree (k-nagpasabot nga kahoy ug relatibong kasilinganan graph). Ang una nga pamaagi nanginahanglan gamay nga mga kapanguhaan kung nagtrabaho kauban ang indeks, ug ang ikaduha nagpakita sa mas taas nga katukma sa mga resulta sa pagpangita alang sa daghang mga koleksyon sa mga vector.

Sa samang higayon, ang pagpangita sa vector dili limitado sa teksto ug mahimong magamit sa impormasyon sa multimedia ug mga hulagway, ingon man sa mga sistema alang sa awtomatikong pagmugna og mga rekomendasyon. Pananglitan, ang usa sa mga prototype nga gibase sa PyTorch framework nagpatuman sa usa ka sistema sa vector alang sa pagpangita base sa pagkaparehas sa mga butang sa mga imahe, nga gitukod gamit ang datos gikan sa daghang mga koleksyon sa pakisayran nga adunay mga imahe sa mga hayop, iring ug iro, nga gibag-o sa mga set sa mga vector. . Kung ang usa ka umaabot nga imahe madawat alang sa pagpangita, kini gibag-o gamit ang usa ka modelo sa pagkat-on sa makina ngadto sa usa ka vector, base diin ang labing parehas nga mga vector gipili gikan sa indeks gamit ang SPTAG algorithm ug ang mga kauban nga imahe gibalik ingon usa ka sangputanan.

Source: opennet.ru

Idugang sa usa ka comment