【技术实现步骤摘要】
本申请一般地涉及搜索信息,具体地,涉及搜索大的数据集合中的接近但不完全相同的匹配。
技术介绍
搜索与查询匹配的数据会在很多种情况中发生。例如,词语匹配搜索可用来标识关键词在文档、文档数据库或在线上互联网网页搜索中的出现。登录验证可涉及搜索登录证书集合中的匹配。对象识别可涉及在对象数据库或集合中搜索匹配对象。所有这些示例可被一般化为一个两步过程:(1)构建集合S及其表示(通常离线);以及(2)计算f(x),其中x是查询,f(x)是根据下式的结果: f ( x ) = 0 x ∉ S 1 x ∈ S ]]>第二步(成员身份测试)一般是“线上”完成的,通常实时完成。许多现代搜索不必基于完美匹配。例如,图像或视频中的对象或特<
【技术保护点】
一种搜索系统中的非完全相同特征匹配的方法,所述搜索系统具有数据点的集合,所述方法包括:确定阈值误差;通过以下操作扩展所述集合以创建扩展集合:初始化所述扩展集合,以包括来自所述集合的所有数据点作为所述扩展集合的数据元素,以及针对所述集合中的每个数据点,找到位于该数据点的误差距离内的所有数据元素,并且将所找到的数据元素添加到所述扩展集合,其中所述误差距离是阈值误差的函数;通过使用多个散列函数作为Bloom过滤器来构建二进制数组,以创建所述扩展集合的概要表示;接收查询;以及将所述多个散列函数应用于所述查询,以根据所述二进制数组确定所述查询是否与所述扩展集合中的数据元素之一匹配;如果是,则输出匹配。
【技术特征摘要】
2014.12.22 US 14/579,2971.一种搜索系统中的非完全相同特征匹配的方法,所述搜索系统具
有数据点的集合,所述方法包括:
确定阈值误差;
通过以下操作扩展所述集合以创建扩展集合:
初始化所述扩展集合,以包括来自所述集合的所有数据点作为
所述扩展集合的数据元素,以及
针对所述集合中的每个数据点,找到位于该数据点的误差距离
内的所有数据元素,并且将所找到的数据元素添加到所述扩展集合,
其中所述误差距离是阈值误差的函数;
通过使用多个散列函数作为Bloom过滤器来构建二进制数组,以创
建所述扩展集合的概要表示;
接收查询;以及
将所述多个散列函数应用于所述查询,以根据所述二进制数组确定
所述查询是否与所述扩展集合中的数据元素之一匹配;如果是,则输出
匹配。
2.根据权利要求1所述的方法,还包括:选择标量量化器,其中扩
展所述集合包括首先量化所述数据点的集合中的数据点。
3.根据权利要求1所述的方法,还包括:在存储器中存储所述扩展
集合,以用于未来搜索。
4.根据权利要求1所述的方法,还包括:在存储器中存储所述二进
制数组以用于未来搜索以及丢弃所述扩展集合。
5.根据权利要求1所述的方法,其中,所述误差距离包括以下各项
之一:L1距离、L2距离、编辑距离、地球移动距离、KL散度和结构相
似度矩阵。
6.根据权利要求1所述的方法,其中,针对不同的阈值误差值执行
所述确定、扩展和创建操作至少两次,以产生相应的二进制数组,以及
其中,接收查询包括:接收所述查询和所请求的阈值误差,并且所述方
法还包括:基于所请求的阈值误差选择所述至少两个二进制数组之一。
7.根据权利要求6所述的方法,其中,选择所述至少两个二进制数
组之一基于选择与大于或等于所请求的阈值误差的阈值误差值相对应的
二进制数组。
8.根据权利要求1所述的方法,其中,构建二进制数组包括:
将所述扩展集合的数据元素分类到两个类之一中;
将第一Bloom过滤器应用于所述扩展集合的所有数据元素,以创建
第一二进制数组;以及
将第二Bloom过滤器应用于所述类之一中的数据元素,而不应用于
所述类中的另一个中的数据元素,以创建第二二进制数组,
其中第一Bloom过滤器的假阳概率大于第二Bloom过滤器的假阳概
率。
9.根据权利要求1所述的方法,其中,通过服务器来执行所述确定、
扩展和创建操作,其中,通过与服务器通信的远程设备执行所述接收和
应用操作,并且其中所述服务器在针对来自远程设备的请求的回复中向
所述远程设备发送所述概要表示。
10.根据权利要求1所述的方法,其中,所述数据点的集合包括指纹
数据。
11.根据权利要求1所述的方法,其中,所述数据点的集合包括图像
或视频特征描述符。
12.一种用于非完全相同特征匹配的搜索系统,所述搜索系统包括:
一个或多个处理器;
存储器,存储数...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。