微软开源Bing搜索背后的关键算法
微軟今天宣布開源了一項 Bing 搜索背后的關鍵算法 —— SPTAG,它使 Bing 能夠快速將搜索結果返回給用戶。
僅在幾年前,網絡搜索很簡單,用戶輸入幾個關鍵詞然后瀏覽結果頁面。現如今,這些用戶可能會在手機上拍照并將其放入搜索框中,或使用智能助手提問,而無需親自觸摸設備。他們也可能會輸入一個問題并期待一個實際的答復,而不是一個可能答案的頁面列表。
SPTAG (Space Partition Tree And Graph,空間劃分樹和圖)是分布式近似最近鄰域搜索(ANN)庫的核心,為大規模矢量搜索場景提供高質量矢量索引構建、搜索和分布式在線服務工具包。
利用 SPTAG 算法作為開源 Python 庫的核心,Bing 能夠在幾毫秒內搜索數十億條信息。
當然,矢量搜索本身并不是一個新想法,但微軟所做的是將這一概念應用于深度學習模型。
首先,團隊采用預先訓練的模型并將數據編碼到矢量中,其中每個矢量代表一個字或像素。然后使用新的 SPTAG 庫生成向量索引。隨著查詢的進入,深度學習模型將該文本或圖像轉換為向量,該庫緊接著就能在索引中找到最相關的向量。
微軟表示,SPTAG 庫迄今已對超過 1500 億條數據進行了編目,包括單個單詞、字符、網頁代碼段和完整查詢。
“Bing 每天處理數十億個文檔,現在的想法是將這些條目表示為向量,并搜索這個 1000 億以上向量的巨大索引,以便在 5 毫秒內找到最相關的結果”。
通過將矢量搜索應用到深度學習模型,微軟讓 Bing 搜索引擎能更快地向用戶提供更相關的結果。
例如在 Bing 上搜索“巴黎的塔樓有多高?”,搜索引擎會告訴你埃菲爾鐵塔高 324 米(1063 英尺),盡管在搜索關鍵詞中并沒有出現“埃菲爾”(Eiffel)這個單詞。
Bing 團隊期望開源 SPTAG 可用于構建可識別基于音頻片段所說語言的應用,或用于讓用戶拍攝植物照片并識別屬和物種的服務。
該庫現已開放使用,并提供構建和搜索這些分布式矢量索引的所有工具。
碼云極速下載地址
https://gitee.com/mirrors/sptag
開源讓世界更美好↓↓↓
總結
以上是生活随笔為你收集整理的微软开源Bing搜索背后的关键算法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 结合eShopOnWeb全面认识领域模型
- 下一篇: 教你自制.NET Core Global