微软开源了 Bing 搜索背后的关键算法

附Java/C/C++/机器学习/算法与数据结构/前端/安卓/Python/程序员必读书籍书单大全:

书单导航页(点击右侧 极客侠栈 即可打开个人博客):极客侠栈
【Java】学习之路吐血整理技术书从入门到进阶最全50+本(珍藏版)
【算法数据结构+acm】从入门到进阶吐血整理书单50+本(珍藏版)
【数据库】从入门到进阶必读18本技术书籍网盘吐血整理网盘(珍藏版)
【Web前端】从HTML到JS到AJAX到HTTP从框架到全栈帮你走更少弯路(珍藏版)   
【python】书最全已整理好(从入门到进阶)(珍藏版)

【机器学习】+python整理技术书(从入门到进阶已经整理好)(珍藏版)
【C语言】推荐书籍从入门到进阶带你走上大牛之路(珍藏版)
【安卓】入门到进阶推荐书籍整理pdf书单整理(珍藏版)

【架构师】之路史诗级必读书单吐血整理四个维度系列80+本书(珍藏版)

【C++】吐血整理推荐书单从入门到进阶成神之路100+本(珍藏)

【ios】IOS书单从入门到进阶吐血整理(珍藏版)

-------------------------------------------------------------------------------------------------------------------------------------------

微软刚刚宣布开源一项 Bing 搜索背后的关键算法——SPTAG,它使 Bing 能够快速将搜索结果返回给用户。

仅在几年前,网络搜索很简单,用户输入几个关键词并浏览结果页面。 今天,相同的用户可能会在手机上拍照并将其放入搜索框中,或使用智能助手提问,而无需亲自触摸设备。他们也可能会输入一个问题并期待一个实际的答复,而不是一个可能答案的页面列表。

SPTAG (Space Partition Tree And Graph)是分布式近似最近邻域搜索(ANN)库,为大规模矢量搜索场景提供高质量矢量索引构建、搜索和分布式在线服务工具包。利用 SPTAG 算法作为开源 Python 库的核心,Bing 能够在几毫秒内搜索数十亿条信息。

当然,矢量搜索本身并不是一个新想法,微软所做的是将这一概念应用于深度学习模型。

首先,团队采用预先训练的模型并将数据编码到矢量中,其中每个矢量代表一个字或像素。然后使用新的 SPTAG 库生成向量索引。随着查询信息的进入,深度学习模型将该文本或图像转换为向量,该库紧接着就能在索引中找到最相关的向量。

微软表示,SPTAG 库迄今已对超过 1500 亿条数据进行了编目,包括单个单词、字符、网页代码段和完整查询。

“Bing 每天处理数十亿个文档,现在的想法是将这些条目表示为向量,并搜索这个 1000 亿以上向量的巨大索引,以便在 5 毫秒内找到最相关的结果”。

Bing 团队期望开源 SPTAG 可用于构建可识别基于音频片段所说语言的应用,或用于让用户拍摄植物照片并识别属和物种的服务。

该库现已开放使用,并提供构建和搜索这些分布式矢量索引的所有工具。

 

 

 


更多精彩内容