欢迎来到池州三陆五信息科技有限公司- 未来科技

微信
手机版
网站地图

淘宝推荐的视频搜索背后的搜索技术就是这个!是解开深度的达磨院矢量搜索引擎proxima-量子比特

2023-04-18 08:56:23 栏目 : 科技 围观 : 0次

人工智能,简称AI,是计算机发明时就存在的技术领域。它最大的特点是能像人脑一样工作。用概率论、统计学、线性代数学等一系列数学方法,分析和设计计算机可以自动学习的算法。

如下图所示,人工智能算法可以将物理世界中的人/物/场景生成的各种非结构化数据(语音、照片、影像、语言文字、行为等)抽象化,使之成为多维向量。这些向量就像数学空间的坐标,它们识别出各自的实体和实体关系。一般情况下,将非结构化数据作为向量称为嵌入式,但非结构化搜索是指搜索生成的向量并找到相应的实体。

非结构化检索的本质是矢量检索技术,其主要应用领域有人脸识别、推荐系统、图像检索、视频指纹、语音处理、自然语言处理、文件检索等。随着AI技术的广泛应用和数据规模的不断增大,矢量搜索成为AI技术链接中不可或缺的一部分,它完善了传统的搜索技术,也具备了多模态搜索的能力。

它是一个商业场景

1音频/图像/视频搜索

矢量搜索的第一个应用领域是搜索人类接触的最常见的非结构化数据,如语音、图像和视频。传统的搜索引擎只是对这些多媒体的名称和描述进行索引,并没有试图理解和索引这些非结构数据的内容。因此,传统引擎的搜索结果有很大的局限性。

人工智能的发展,使我们能够快速、低成本地理解非结构化数据,直接搜索非结构化数据的内容成为可能。这里重要的是矢量搜索。

如下图所示,在图像搜索示例中,所有过去的图像都将离线机器学习和分析,并将每个图像(或图像中分割的人物)抽象为高维向量的特征。用同样的机器学习方法分析这个生成特征向量,用那个向量在以前构筑的向量索引中寻找最相似的结果,以图像内容为基础的图像检索完成。

2文本搜索

矢量检索在一般的全文检索中也很早以前就被使用了。在此,以地址检索为例,简单介绍矢量检索在文本检索中的应用例和价值。

在下图左边的例子中,我想在标准地址库中搜索“浙一医院”(标准地址库中“浙一医院”的标准地址是“浙江大学医学院”“附属第一医院”),如果只使用文本分词(“浙江”和“医院”),在标准地址库中无法找到相关结果(“浙一”地址不存在)但是,如果分析人们的历史语言,甚至过去的点击关联,将意义上的相关关系模型化,用高维的特征来表现所有的地址的话,“浙一医院”和“浙江大学医学院”附属第一医院非常相似,所以可以检索。

另一个例子是,如下图右图所示,即使是相同的地址查询,如果想要搜索“杭州阿里巴巴”这个地址,仅文本召回几乎不会产生类似的结果,但分析大量用户的点击行为通过在点击行动中组合地址的文本信息,可以制作高维矢量,在检索时自然可以将点击率高的地址恢复到上位。

3搜索推荐广告

在ec中的搜索评论广告的商务场景中常见的需求是找到相似的相同商品,对用户感兴趣的商品进行评论,其需求几乎都是由商品合作和用户合作的战略构成的。包含深度学习嵌入式功能的新一代搜索推荐系统通过矢量召回(如item-item(i2i)、user-item(u2i)、user-user-item(u2u2i)、User2Item2Item(u2i2i)等方式实现快速搜索。

算法工程师通过抽象商品的相似性和相关关系、被浏览和购买的用户的行动,将它们表征为高维向量的特征,并存储在向量引擎中。这样,在寻找类似的商品(i2i)时,可以从矢量引擎中高效地进行检索。

4几乎涵盖了所有AI场景

矢量搜索的应用场景不仅仅是上述的场景。如下图所示,它涵盖了大多数可应用AI的业务场景。

二矢量检索的现状和课题

1搜索算法的数量

为了解决向量搜索的本质KNN和RNN问题,KNN(k-nearest Neighbor)查找最接近查询点的K个点,RNN(Radius Nearest Neighbor)查找查询点半径的所有点或N个点。在处理大量数据量时,精确求解KNN和RNN问题需要计算成本,因此引入了近似解的方法,但在大量数据量检索中实际求解的是ANN(Approximate Nearest Neighbor)问题。

为了解决ANN问题,已经开发了几种搜索算法。最常用的算法是1975年设计的kd-tree,它基于欧式空间,使用多维二叉树数据结构来求解ANN搜索问题。20世纪80年代末,产生了以分形和局部敏感散列为代表的空间编码和散列的想法。分形和局部敏感散列是空间编码和转换的思想,通过将高维问题映射到低维来解决,例如产品质量(PQ),从而提高搜索效率。2000年代初,为了解决ANN的问题,也出现了活用近邻地图的想法。邻域映射基于“邻域可能也是邻域”的假设,预先在数据集中的所有点建立邻域关系,创建具有一定特性的邻域映射,在搜索时在映射上周游以收敛结果。

由于矢量检索的算法涉及多方面,缺乏通用性,因此对应不同数据维和分布的算法多种多样,但一般可分为空间划分、空间编码变换、近邻图法三种思路。空间分割法以kd-tree、聚类检索为代表,在检索时快速定位这些小集合,可以减少扫描数据点的量,提高检索效率。空间编码转换方法(例如,p-stable LSH、PQ)可以重新编码或转换数据集,将其映射到更小的数据空间,从而减少扫描数据点的计算量。HNSW、SPTAG、ONNG等近邻图法,通过事先制作关系图,加快检索时的收敛,减少扫描的数据点的量,提高检索效率。

2面临的技术挑战

矢量搜索在发展过程中,也出现了FLANN、Faiss等优秀的开源作品。这些作品对行业一些常用而有效的ANN算法统一实现和优化,运行库的方式,形成一些工程化的检索方案。在这样的库和改良的基础上,业界也产生了milvus和vearch等服务化的工程引擎。

矢量搜索发展多年,已成为非结构搜索的主流,但仍存在一些技术难题和问题。

兆指数的精确度和性能

矢量搜索源于非结构化数据的繁多和复杂性,以应对如此大规模的数据搜索,但在1亿单位、10亿单位以上的场景中,许多搜索算法都成了一个难题,存在构建成本高或搜索效率低的问题。

另外,维的增加会降低一些矢量检索方法的效率,在高维空间中看不到,在工学上也会增加数据的计算和保存成本。二是算法没有完全通用性,不能对数据进行泛一致性搜索,即搜索算法在任何数据分布中都是有效的。

在目前的行业中,处理10亿单位的高维数据是有局限性的,经常在多个索引中单独搜索并组合,这花费了实际的计算成本。

分布式构建和搜索

矢量检索现在通过切片数据来水平扩展的情况很多,但是切片过多的话计算量会增加,检索效率会降低。分布式方面仍然存在快速合并矢量索引算法的难题。因此,您不能将切片的数据应用于map-reduce计算模型,并将其合并到更有效的索引中。

流索引在线更新

传统的搜索方法很容易实现CRUD(checkreduce-delete-delete)的操作,矢量搜索依赖于数据分布和距离度量,有些方法也有数据集训练的要求,数据点的改变会一发而拽全身。因此,要实现矢量索引从0到1的全流程构建,满足即时增长、即时塌方和索引实时动态更新的要求,算法和工程还存在一些挑战。

目前,对于未经训练的检索方法,可以比较容易地支持全存储器索引的在线动态添加和查询,但对于即时磁盘丢失、存储器不足、在线载体的动态更新和删除等要求,操作成本大不能满足实时性。

标签+矢量综合搜索

许多业务场景需要同时满足标记搜索条件和相似性搜索要求。例如,在某个属性条件的组合中检索具有相似性的图像等,将该检索称为“有条件矢量检索”。

目前,业界采用了分别检索标签和矢量来合并结果的复用方式,虽然可以解决一些问题,但多数情况下结果并不理想。主要原因是矢量搜索没有范围性,目标是尽可能保证TOPK的准确性,TOPK较大时,准确性容易降低,合并结果不准确或为空。

复杂的多场景匹配

矢量搜索是一种通用的能力,但目前还没有能够适应任意场景和数据的通用算法,即使在同一算法适应不同数据的情况下,也存在参数配置的差异。在多层聚类检索算法的情况下,使用哪个聚类算法、分为几层、收集几种、检索时使用什么样的收敛阈值,根据场景和数据而不同。因为这些超参调优的存在,大大增加了用户的使用门槛。

要使用户更轻松,必须考虑数据匹配(数据规模、数据分布、数据维等)和需求匹配)召回率、吞吐量、延迟、流传输、实时性等两方面。根据不同的数据分布,选择适当的算法和参数,以满足实际的业务需求。

三达摩院矢量检索技术暴露

Proxima是阿里巴巴达摩院自研的矢量检索内核。目前,其核心能力已广泛应用于阿里巴巴和安特金融内的多项业务。例如淘宝搜索与推荐、支付蚂蚁头像、优酷视频搜索、蚂蚁妈妈广告搜索等。此外,Proxima还深入集成了阿里巴巴云Hologles、搜索引擎Elastic Search和ZSearch、离线引擎maxcompute(ODPS)等各种大数据和数据库产品,提供矢量搜索功能。

Proxima是一个通用化的矢量搜索工程引擎,实现了对大数据的高性能相似性搜索,支持ARM64、x86、GPU等多个硬件平台,支持嵌入式设备和高性能服务器从边缘计算到云计算全面覆盖,支持单索引索引10亿级的高精度、高性能索引构建和搜索。

1核心能力

如上图所示,Proxima的主要核心能力包括:。

超大规模索引的构建与检索:Proxima精通工程实现和算法基础优化,引入了复合搜索算法,在有限的构建成本基础上实现了高效的搜索方法,单片索引可达到数十亿的规模。水平扩展索引:Proxima通过非对等方式实现分布式搜索。对于近邻图索引,解决了有限精度下图索引的快速集成的问题,可以有效地与映射递减计算模型相结合。高维amp;高精度:Proxima支持多种搜索算法,对算法进行更深入的抽象,形成算法框架,根据不同的数据维和分布选择不同的算法或算法组合根据具体的场景需求实现精度与性能的平衡。实时amp;在线更新:Proxima采用扁平化索引结构,支持在线大规模矢量索引从0到1的流式构建,利用相邻图表的便利性和数据特点,实现索引的即时添加、即时删除和实时动态更新。标签+向量搜索:Proxima在索引算法级实现了“条件向量搜索”方法,解决了传统复用召回结果不理想的情况,更大程度上满足了组合搜索的要求。异构计算:Proxima支持海量高通量离线搜索加速,同时解决了GPU构建邻居图索引的问题。另一方面,也解决了小批量+低延迟+高吞吐量的资源利用问题,成功全面应用于淘宝搜索推荐系统。高性能和低成本:以有限的成本最大化性能并满足业务需求是矢量搜索要解决的主要问题。Proxima实现了多种平台和硬件的优化,支持云服务和部分嵌入式设备,结合分布式调度引擎实现离线数据搜索和训练用扁平化索引和磁盘检索的方案实现了冷数据的快速检索。场景自适应:Proxima结合超参数调谐和复合索引等方法,通过数据采样和预实验,解决了一些数据场景的智能自适应问题,提高了系统的自动化能力可以提高用户的易用性。

2行业比较

目前,行业

展开剩余内容

分享到:

猜你喜欢

  • b2b网站策划书_b2b策划案

    b2b网站策划书_b2b策划案大家好,今天我来给大家讲解一下关于b2b网站策划书的问题。为了让大家更好地理解这个问题,我将相关资料进行了整理,现在就让我们一起来看看吧。文章目录...

    2024-10-22 企业 网站
  • 浙江高端网站_浙江高端网站有哪些

    浙江高端网站_浙江高端网站有哪些好久不见了,今天我想和大家探讨一下关于“浙江高端网站”的话题。如果你对这个领域还不太了解,那么这篇文章就是为你准备的,让我们一看看吧。文章目录列...

    2024-10-22 网站 浙江
  • 做酒的网站_做酒的网站有哪些

    做酒的网站_做酒的网站有哪些希望我能够回答您有关做酒的网站的问题。我将根据我的知识库和研究成果回答您的问题。文章目录列表:1.酒仙网CEO郝鸿峰的电商百亿梦想2.有没有关于介绍...

    2024-10-22 中国 酒类 酒仙 网站
  • 索尼手机软件_索尼手机软件商店

    索尼手机软件_索尼手机软件商店下面,我将为大家展开关于索尼手机软件的讨论,希望我的回答能够解决大家的疑问。现在,让我们开始聊一聊索尼手机软件的问题。文章目录列表:1.索尼的手机...

    2024-10-22 手机 索尼
热门标签