[发明专利]关联图搜索在审
| 申请号: | 202210564603.9 | 申请日: | 2022-05-23 |
| 公开(公告)号: | CN115391604A | 公开(公告)日: | 2022-11-25 |
| 发明(设计)人: | A·奥凯里博 | 申请(专利权)人: | GSI科技公司 |
| 主分类号: | G06F16/901 | 分类号: | G06F16/901;G06F16/903;G06K9/62 |
| 代理公司: | 永新专利商标代理有限公司 72002 | 代理人: | 刘瑜 |
| 地址: | 美国加*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 关联 搜索 | ||
关联图搜索系统包括KNN图确定器,其用于提前确定数据集中的每个项目的W个邻居,并且将每个项目和该项目的邻居存储在KNN图中,在关联处理单元(APU)上实现的降维向量查找器,其用于查找查询向量的第一数量的第一最近邻,所述APU以恒定复杂度操作,而与数量的大小无关;结果扩展器,其用于使用KNN图针对每个第一最近邻查找W个第二最近邻,从而创建一组邻居;以及KNN全维向量重排器,其用于从该组邻居中查找全维查询向量的最终数量的全维最近邻。
相关申请的交叉引用
本申请要求享有于2021年5月23日提交的美国临时专利申请63/192,032和于2022年4月25日提交的美国临时专利申请63/334,216的优先权,两者均通过引用并入本文。
技术领域
本发明总体上涉及关联存储器,并且涉及用于结合APU使用KNN图以提供快速且准确的K个最近邻的方法。
背景技术
对象(例如,图片、文本、音乐等)可以通过数字的全维特征向量在数据集中进行语义表示。对象原始数据由数字特征表示,数字特征也称为特征嵌入,其可以在保留初始对象信息的同时被处理。
特征向量可以通过使用神经网络来获得,神经网络接收对象作为输入并提供全维特征向量(例如,128Kx1024字)作为输出。可以使用本领域已知的K个最近邻(KNN)算法来比较特征向量,并且各种应用使用KNN搜索算法来查找与查询对象最紧密相似的K个(例如,25个)对象(从大型数据集中)。这样的应用包括面部识别、图像识别、文档和文本搜索、音乐识别等。
应用可以将M个特征向量(M可能是几百万个)的大型数据集存储在关联处理单元(APU)中,例如,美国GSI Technology Inc.的Gemini Associative Processing Unit,其中KNN搜索算法非常快,并且以恒定的复杂度执行,而与数据集的大小无关。Gemini上的KNN实现在美国专利10,929,751中进行了描述,该专利已转让给申请人并通过引用并入本文。在APU中存储全维向量会占用大量存储器。当APU的关联存储器不足够大以容纳整个特征向量数据集时,整个数据集存储在主机设备的存储器中,主机设备一次将数据集的不同部分复制到关联存储器进行处理。
通过减少特征向量的维度(例如,减少到512-2000位),可以改进KNN搜索算法的性能和存储器利用率。可以(通过诸如神经代理散列(NPH)或局部敏感度散列化(LSH)之类的方法)创建每个元素的降维向量并将其存储在APU中,替代可以存储在主机中的全维特征向量。使用降维向量执行KNN搜索比对全维特征向量执行KNN搜索要快,因为与在GPU或CPU上执行的对全浮点MAC的操作相比,APU在执行二进制运算(例如,汉明距离、L1、L2、Tanimoto相似性搜索等)时非常高效。
需要注意的是,更小的向量意味着在APU中更快的搜索和更少的存储器占用。另一方面,更小的向量产生不那么准确的结果,因为每个降维向量包含更少的信息。
为了在使用降维向量时保持所要求的准确度,与使用全维向量时的全维相邻向量的初始数量K(例如,25)相比,KNN搜索算法返回更大数量Krdv个降维相邻向量(例如,4000)。需要注意的是,Krdv比K大得多。
此外,应在主机中执行最终的重排步骤以搜索作为查询向量的最近邻的最后25个全维特征向量(在使用降维向量找到的4000个向量之中)。在此步骤中,主机应从数据库中取回全维向量(与较大数量Krdv个降维向量相关联),并在查询对象的全维向量和较大数量Krdv个全维向量之间执行第二KNN搜索操作,以查找最终初始数量K个最近邻。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于GSI科技公司,未经GSI科技公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210564603.9/2.html,转载请声明来源钻瓜专利网。





