CN106339413A - 一种基于高维数据过滤器的近似成员查询方法 - Google Patents
一种基于高维数据过滤器的近似成员查询方法 Download PDFInfo
- Publication number
- CN106339413A CN106339413A CN201610662333.XA CN201610662333A CN106339413A CN 106339413 A CN106339413 A CN 106339413A CN 201610662333 A CN201610662333 A CN 201610662333A CN 106339413 A CN106339413 A CN 106339413A
- Authority
- CN
- China
- Prior art keywords
- sbf
- data
- data set
- target data
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2462—Approximate or statistical queries
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Fuzzy Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于高维数据过滤器的近似成员查询方法,通过定义新的距离敏感哈希函数支持的新结构,分别来表征目标数据集合中的多维数据和待查询的多维数据,不需要重新构造过滤器,能够支持更多的过滤距离参数的近似成员查询,大幅度减少了空间代价,支持整数倍距离的数据过滤。
Description
技术领域
发明涉及一种近似成员查询方法,尤其是涉及一种基于高维数据过滤器的近似成员查询方法。
背景技术
在很多应用领域中,如果查询数据与目标数据的距离越近,数据的价值就越高。例如,安全官员想要检查某未知的物质(具有某些可检测的高维特征)是否属于清单所列的危险化学品;网络管理员想要知道某用户的行为特征是否有害;摄影比赛裁判想检查提交的照片是否与某一张大型数据库中的照片类似。这些查询都需要判断查询数据与(目标数据)集合中数据的距离。如果是低维的小数据集,可通过线性查找解决,但是对一个海量的高维数据集采用线性查找匹配的话,会非常耗时,很多情况下无法满足实时的需要。为提高处理的速度,可以设置一个高维数据过滤器代表目标数据集合,根据距离过滤掉大部分查询数据,少量剩下的数据可以再通过常规方法进一步处理,可显著提高系统的整体性能。
这个过滤器完成的就是近似成员查询(Approximate Membership Query,AMQ),即回答“查询数据是否接近于数据集合中的某个数据”。现有AMQ过滤器主要是结合LSH(距离敏感哈希,Locality-Sensitive Hashing)和Bloom filter(布鲁姆过滤器)技术的,其主要代表有DSBF(Distance-sensitive Bloom filters)[1]、LSBF(Locality-Sensitive BloomFilter)[2]和MLBF(Multi-Granularity Locality-Sensitive Bloom Filter)[3]。
DSBF首次综合LSH和Bloom filter的方法来过滤AMQ查询,其返回组成员的近似查询结果,近似度可采用不同的衡量标准,它可以改善网络和数据库应用程序的速度和空间,从而避免对完整的最近邻查询等代价昂贵的比较操作。LSBF是DSBF的改进,使用LSH函数来构造Bloom filter过滤AMQ查询,LSBF还采用了额外的位向量来降低假阳性率。
但是,使用DSBF和LSBF这两个技术来过滤AMQ查询都有一个限制,即他们仅能过滤给定距离的AMQ查询。然而,给定一个合适的距离并不容易,过大或过小的距离值,可能会导致不可接受的查询结果。而一旦过滤器的过滤网格参数固定后就不能改变,即能过滤的距离值是确定的,如需要同时过滤多个不同的距离值,则需要根据原始数据重新构造过滤器,也即改变过滤距离参数。然而,为节省空间,原始数据一般并不保存,无法构造不同的距离参数的过滤器。
针对这一问题,MLBF构造时,不需要提前确定过滤距离,而是设置一个最小过滤距离。以后过滤数据时,可以根据这一最小距离的2的指数倍过滤,即1倍、2倍、4倍、8倍、16倍等过滤,达到了过滤距离动态变化的效果。但是,这一方法过滤最小距离的整数倍距离,如需要过滤9倍距离时,只能选择8倍或者16倍,造成一定的误差。
发明内容
本发明所要解决的技术问题是提供一种基于过滤器的高维数据近似成员查询方法,在固定过滤网格(距离)参数的过滤器的基础上,不需要重新构造过滤器,即能够实现更多的过滤网格参数的近似成员查询,并且能够节省空间资源。
本发明解决上述技术问题所采用的技术方案为:一种基于高维数据过滤器的近似成员查询方法,将目标数据集合定义为Ω,并构建一个容量为u,地址为0到u-1的位向量,定义为SBF,并设定位向量中的每一位SBF[j]=0,j=0,1,2,…,u-1;将距离敏感哈希函数H定义为其中t=1,2,…,k,k为每一函数组中的函数个数,o是多维数据,at是与o维数相同的随机向量,其每一维的数据符合标准正态分布,·是点积运算,w是正实数定义的最小距离过滤参数,是下取整运算,%是取余运算,m是SBF的个数,其中k小于m,然后进行以下步骤的操作:
(1)构建一个容量为m个SBF,地址为0到m-1的SBF的组合,定义为ILBF,即SBF0,SBF1,SBF2,…,SBFm-1;
(2)将目标数据集合Ω中的每一个数据oi编制唯一ID,即ID(oi),i=1,2,…,n,n是目标数据集合Ω中的数据个数;
(3)对目标数据集合Ω中的每一个数据oi,计算k个哈希值,即 并以此为下标,在ILBF中选中k个SBF;
(4)用散列值为0到u-1均匀散列的k′个哈希函数将ID(oi),散列为k′个地址,将上述所有k个SBF的k′个地址都置为1,其中k′小于u;
(5)将待查询的多维数据定义为q,然后用距离敏感哈希函数进行表征,即其中t=1,2,…,k,并以此为地址,在ILBF中选中k个SBF;
(6)对于步骤(5)的每个将θ-1个邻居SBF按位或运算,并定义为VSBFt,即
(7)将上述k个VSBFt按位求和,并定义为向量SumBF;
(8)对于0.5k到0.8k之间的所有正整数,取其中一个正整数,并定义为v,如果向量SumBF中有k′个数值大于或等于v,其中则确认q是目标数据集合Ω的近似成员,否则q不是目标数据集合Ω的近似成员。
与现有技术相比,本发明的优点在于通过定义新的距离敏感哈希函数支持的新结构,分别来表征目标数据集合中的多维数据和待查询的多维数据,不需要重新构造过滤器,能够支持更多的过滤距离参数的近似成员查询,大幅度减少了空间代价,支持整数倍距离的数据过滤。
具体实施方式
以下结合实施例对本发明作进一步详细描述。
一种基于高维数据过滤器的近似成员查询方法,将目标数据集合定义为Ω,并构建一个容量为u,地址为0到u-1的位向量,定义为SBF,并设定位向量中的每一位SBF[j]=0,j=0,1,2,…,u-1;将距离敏感哈希函数H定义为其中t=1,2,…,k,k为每一函数组中的函数个数,o是多维数据,at是与o维数相同的随机向量,其每一维的数据符合标准正态分布,·是点积运算,w是正实数定义的最小距离过滤参数,是下取整运算,%是取余运算,m是SBF的个数,其中k小于m,然后进行以下步骤的操作:
(1)构建一个容量为m个SBF,地址为0到m-1的SBF的组合,定义为ILBF,即SBF0,SBF1,SBF2,…,SBFm-1;
(2)将目标数据集合Ω中的每一个数据oi编制唯一ID,即ID(oi),i=1,2,…,n,n是目标数据集合Ω中的数据个数;
(3)对目标数据集合Ω中的每一个数据oi,计算k个哈希值,即 并以此为下标,在ILBF中选中k个SBF;
(4)用散列值为0到u-1均匀散列的k′个哈希函数将ID(oi),散列为k′个地址,将上述所有k个SBF的k′个地址都置为1,其中k′小于u;
(5)将待查询的多维数据定义为q,然后用距离敏感哈希函数进行表征,即其中t=1,2,…,k,并以此为地址,在ILBF中选中k个SBF;
(6)对于步骤(5)的每个将θ-1个邻居SBF按位或运算,并定义为VSBFt,即
(7)将上述k个VSBFt按位求和,并定义为向量SumBF;
(8)对于0.5k到0.8k之间的所有正整数,取其中一个正整数,并定义为v,如果向量SumBF中有k′个数值大于或等于v,其中则确认q是目标数据集合Ω的近似成员,否则q不是目标数据集合Ω的近似成员。
下面对本发明的方法与参考文献[3]的方法的性能进行比较。数据集Ω是随机合成,含500个数据,每个数据20维,每维数据服从[1,1000]均匀分布。为测试假阴性率,合成查询对象与Ω中某数据对象每一维距离均匀分布于区间0.100-0.145;为测试假阳性率,合成查询对象与Ω中某数据对象每一维距离均匀分布于区间10.0-14.5。由于计算成本主要来自LSH函数的相乘运算,为公平起见,本发明和参考文献[3]的函数个数都设置成一致。实验中,参考文献[3]的k=2,L=8或者k=4,L=4,即函数个数都是16,与本发明一致。空间消耗也设置一样,参考文献[3]占218位,本发明占u=32,m=8192,共32×8192=218位。
由于参考文献[3]被设计为仅过滤2指数次方距离的数据,实验用保守的较大的距离来过滤(即表1标记为*),如过滤距离5,参考文献[3]实际过滤距离为8。表1显示,参考文献[3]可以控制假阳性率和假阴性率到比较低的水平,但保守的方法会导致在部分过滤距离上产生"阶跃函数"的效果,影响准确率。而本发明的方法,由于参数v的控制,在基本上所有距离上,准确率都比较高。
表1.本发明与参考文献[3]的性能比较
[1]Kirsch and M.Mitzenmacher,"Distance-sensitive Bloom Filters,"inProc.8th Workshop Algorithm Eng.Exper.,pp.41-50.
[2]Y.Hua,B.Xiao,B.Veeravalli,and D.Feng,"Locality-sensitive BloomFilter for Approximate Membership Query,"IEEE Trans.Comput.,vol.61,no.6,pp.817-830,Jun.2012.
[3]J.Qian,Q.Zhu,and H.Chen,"Multi-granularity Locality-sensitiveBloom Filter,"IEEE Trans.Comput.,vol.64,no.12,pp.3500-3514,Dec.2015.
Claims (1)
1.一种基于高维数据过滤器的近似成员查询方法,其特征在于将目标数据集合定义为Ω,并构建一个容量为u,地址为0到u-1的位向量,定义为SBF,并设定位向量中的每一位SBF[j]=0,j=0,1,2,…,u-1;将距离敏感哈希函数H定义为其中t=1,2,…,k,k为每一函数组中的函数个数,o是多维数据,at是与o维数相同的随机向量,其每一维的数据符合标准正态分布,·是点积运算,w是正实数定义的最小距离过滤参数,是下取整运算,%是取余运算,m是SBF的个数,其中k小于m,然后进行以下步骤的操作:
(1)构建一个容量为m个SBF,地址为0到m-1的SBF的组合,定义为ILBF,即SBF0,SBF1,SBF2,…,SBFm-1;
(2)将目标数据集合Ω中的每一个数据oi编制唯一ID,即ID(oi),i=1,2,…,n,n是目标数据集合Ω中的数据个数;
(3)对目标数据集合Ω中的每一个数据oi,计算k个哈希值,即 并以此为下标,在ILBF中选中k个SBF;
(4)用散列值为0到u-1均匀散列的k′个哈希函数将ID(oi),散列为k′个地址,将上述所有k个SBF的k′个地址都置为1,其中k′小于u;
(5)将待查询的多维数据定义为q,然后用距离敏感哈希函数进行表征,即其中t=1,2,…,k,并以此为地址,在ILBF中选中k个SBF;
(6)对于步骤(5)的每个将θ-1个邻居SBF按位或运算,并定义为VSBFt,即
(7)将上述k个VSBFt按位求和,并定义为向量SumBF;
(8)对于0.5k到0.8k之间的所有正整数,取其中一个正整数,并定义为v,如果向量SumBF中有k′个数值大于或等于v,其中则确认q是目标数据集合Ω的近似成员,否则q不是目标数据集合Ω的近似成员。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610662333.XA CN106339413A (zh) | 2016-08-12 | 2016-08-12 | 一种基于高维数据过滤器的近似成员查询方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610662333.XA CN106339413A (zh) | 2016-08-12 | 2016-08-12 | 一种基于高维数据过滤器的近似成员查询方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106339413A true CN106339413A (zh) | 2017-01-18 |
Family
ID=57825594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610662333.XA Pending CN106339413A (zh) | 2016-08-12 | 2016-08-12 | 一种基于高维数据过滤器的近似成员查询方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106339413A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109062941A (zh) * | 2018-06-21 | 2018-12-21 | 宁波大学 | 一种基于海明距离的近似成员查询方法 |
CN109446436A (zh) * | 2018-09-19 | 2019-03-08 | 西安电子科技大学 | 基于lsh的面向多维数据的安全范围查询方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317795A (zh) * | 2014-08-28 | 2015-01-28 | 华为技术有限公司 | 一种二维过滤器的生成方法、查询方法及装置 |
CN104391866A (zh) * | 2014-10-24 | 2015-03-04 | 宁波大学 | 一种基于高维数据过滤器的近似成员查询方法 |
CN104516946A (zh) * | 2014-11-27 | 2015-04-15 | 宁波大学 | 一种基于高维数据过滤器的近似成员查询方法 |
CN104699747A (zh) * | 2014-12-15 | 2015-06-10 | 宁波大学 | 一种基于高维数据过滤器的近似成员查询方法 |
-
2016
- 2016-08-12 CN CN201610662333.XA patent/CN106339413A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317795A (zh) * | 2014-08-28 | 2015-01-28 | 华为技术有限公司 | 一种二维过滤器的生成方法、查询方法及装置 |
CN104391866A (zh) * | 2014-10-24 | 2015-03-04 | 宁波大学 | 一种基于高维数据过滤器的近似成员查询方法 |
CN104516946A (zh) * | 2014-11-27 | 2015-04-15 | 宁波大学 | 一种基于高维数据过滤器的近似成员查询方法 |
CN104699747A (zh) * | 2014-12-15 | 2015-06-10 | 宁波大学 | 一种基于高维数据过滤器的近似成员查询方法 |
Non-Patent Citations (3)
Title |
---|
JIANGBO QIAN ETC.: ""Multi-Granularity Locality-Sensitive Bloom Filter"", 《IEEE TRANSACTIONS ON COMPUTERS》 * |
YU HUA ETC.: ""NEST: Locality-aware Approximate Query Service for Cloud Computing"", 《2013 PROCEEDINGS IEEE INFOCOM》 * |
王忠伟 等: ""基于 LSH 的 高维大数据 k 近邻搜索算法"", 《电子学报》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109062941A (zh) * | 2018-06-21 | 2018-12-21 | 宁波大学 | 一种基于海明距离的近似成员查询方法 |
CN109446436A (zh) * | 2018-09-19 | 2019-03-08 | 西安电子科技大学 | 基于lsh的面向多维数据的安全范围查询方法及系统 |
CN109446436B (zh) * | 2018-09-19 | 2020-07-03 | 西安电子科技大学 | 基于lsh的面向多维数据的安全范围查询方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Manzoor et al. | Fast memory-efficient anomaly detection in streaming heterogeneous graphs | |
Arif et al. | A data mining approach for developing quality prediction model in multi-stage manufacturing | |
CN105099729B (zh) | 一种识别用户身份标识的方法和装置 | |
CN104063501B (zh) | 基于hdfs的副本平衡方法 | |
CN115563477B (zh) | 谐波数据识别方法、装置、计算机设备和存储介质 | |
CN105117442A (zh) | 一种基于概率的大数据查询方法 | |
CN106339413A (zh) | 一种基于高维数据过滤器的近似成员查询方法 | |
JP2015525956A5 (zh) | ||
CN105138632A (zh) | 一种文件数据组织管理方法及文件管理服务器 | |
CN109918277A (zh) | 电子装置、系统日志聚类分析结果的评价方法及存储介质 | |
CN104699747B (zh) | 一种基于高维数据过滤器的近似成员查询方法 | |
CN111147535A (zh) | 避免物联网平台重复创建终端设备的方法和装置 | |
Wang et al. | Application of clustering technique to electricity customer classification for load forecasting | |
CN104794237B (zh) | 网页信息处理方法及装置 | |
CN104391866B (zh) | 一种基于高维数据过滤器的近似成员查询方法 | |
CN110928902A (zh) | 针对分页获取云平台终端数据的查询方法和系统 | |
CN108345495A (zh) | 一种多线程的加锁方法及服务器 | |
CN104516946A (zh) | 一种基于高维数据过滤器的近似成员查询方法 | |
Zhang et al. | Improvement of Filtering Algorithm for RFID Middleware Using KDB-tree Query Index. | |
CN105320656A (zh) | 一种基于密度的文章聚合算法 | |
Zhang et al. | Identification of essential proteins based on centrality methods using improved collective influence algorithm | |
Ihm et al. | Grid‐PPPS: A Skyline Method for Efficiently Handling Top‐k Queries in Internet of Things | |
CN109669947A (zh) | 数据处理方法、数据处理装置和电子设备 | |
CN109034197A (zh) | 一种基于海明距离的近似成员查询方法 | |
CN104598385B (zh) | 内存分配方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170118 |
|
RJ01 | Rejection of invention patent application after publication |