CN107341178B - 一种基于自适应的二进制量化哈希编码的数据检索方法 - Google Patents

一种基于自适应的二进制量化哈希编码的数据检索方法 Download PDF

Info

Publication number
CN107341178B
CN107341178B CN201710375388.7A CN201710375388A CN107341178B CN 107341178 B CN107341178 B CN 107341178B CN 201710375388 A CN201710375388 A CN 201710375388A CN 107341178 B CN107341178 B CN 107341178B
Authority
CN
China
Prior art keywords
data
space
cluster
binary
clustering
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.)
Active
Application number
CN201710375388.7A
Other languages
English (en)
Other versions
CN107341178A (zh
Inventor
刘祥龙
夏柯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University
Original Assignee
Beihang University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beihang University filed Critical Beihang University
Priority to CN201710375388.7A priority Critical patent/CN107341178B/zh
Publication of CN107341178A publication Critical patent/CN107341178A/zh
Application granted granted Critical
Publication of CN107341178B publication Critical patent/CN107341178B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9014Indexing; Data structures therefor; Storage structures hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions

Abstract

本发明提供了一种基于自适应的二进制量化哈希编码的数据检索方法,包括:S1,选取数据空间中的聚类中心构成聚类中心集合,并分别为每个聚类中心赋予海明空间中的二进制编码,得到对应的二进制编码集合;S2,根据得到的二进制编码集合,更新所述聚类中心集合和所述数据空间的数据所属的聚类中心,直到所述数据空间与所述海明空间对齐,将所述数据空间的所有数据映射至其所属聚类中心对应的二进制编码,以完成哈希编码。本发明提供的一种基于自适应的二进制量化哈希编码的数据检索方法,采取非完全编码的方案,自适应地确定聚类中心的数量和对应的二进制编码,从而减少量化损失,提高哈希检索的性能。

Description

一种基于自适应的二进制量化哈希编码的数据检索方法
技术领域
本发明涉及计算机数据检索领域,更具体地,涉及一种基于自适应的二进制量化哈希编码的数据检索方法。
背景技术
目前,随着大数据时代的到来,互联网上每时每刻都在产生海量的图像、视频等等非结构化数据,如何对这些数据建立高效的检索算法成为了一个亟待解决的问题。在实际应用中,人们常常需要查询给定样例的最相似对象,而数据通常表示为由特征提取得到的特征向量,例如图像局部特征采用尺寸不变特征变换算法(Scale-invariant featuretransform,SIFT)得到特征向量,全局特征采用通用搜索树算法(Generalized SearchTrees,GIST)得到特征向量,因此问题就转化成在高维特征空间中的最近邻搜索问题。如果采用简单的顺序扫描的方法进行搜索,将面临维数过高和数据规模过大两重困难,效率非常低下。实际上,用户查询时并不苛求查询结果必须是严格的最近邻,近似最近邻搜索(Approximate Nearest Neighbor,ANN)足以满足需求。因为近似最邻近搜索允许一定的相似误差,返回近似的最近邻结果,从而降低搜索空间,提高查询效率。ANN算法的一个典型代表是基于树结构的索引方法,例如k-D树,但这类方法仅在处理低维数据时效果较好,随着维数的增长,其性能甚至会低于线性扫描。另外基于树的最近邻搜索很少能够在理论上保证最近邻搜索的准确率。
近年来,以位置敏感哈希(Locality Sensitive Hash,LSH)为代表的基于哈希的ANN方法因其存储效率高、检索速度快的优势得到了广泛关注。这类方法将高维特征映射为海明空间中的二元编码,使海明空间在一定程度上保持了原有空间的信息。通过采取由粗到细的查询策略,哈希编码方法可以在不牺牲过多查询精度的前提下,大幅度提高检索效率。在空间消耗方面,由于哈希编码方法使用压缩二进制编码,数据长度大大缩短,降低了数据存储消耗。在时间消耗方面,查询时利用哈希编码的海明距离,而这个过程涉及二进制位操作,直接为计算机底层硬件支持,具有非常快的检索速度。因此,利用此类哈希方法进行最近邻搜索,具有空间、时间上的双重优势。
但是,目前的方法大多试图建立数据空间到编码空间的一个完备匹配,而数据分布通常并不满足编码空间中的规则的超立方体结构,因此这些方法难以保持空间关系,从而检索效果不优。
发明内容
为克服上述问题或者至少部分地解决上述问题,本发明提供了一种基于自适应的二进制量化哈希编码的数据检索方法。
一方面,本发明提供了一种基于自适应的二进制量化哈希编码的数据检索方法,包括:S1,选取数据空间中的聚类中心构成聚类中心集合,并分别为每个聚类中心赋予海明空间中的二进制编码,得到对应的二进制编码集合;所述数据空间的数据为非结构化数据;S2,根据得到的所述二进制编码集合,更新所述聚类中心集合和所述数据空间的数据所属的聚类中心,直到所述数据空间与所述海明空间对齐,将所述数据空间的所有数据映射至其所属聚类中心对应的二进制编码,以完成哈希编码;S3,基于完成的哈希编码,对所述数据空间的数据进行检索。
优选的,所述S1具体包括:S11,随机选取数据空间中的聚类中心构成聚类中心集合;S12,根据贪心算法,在海明空间中获取构成的超立方体结构与所述数据空间结构最一致的二进制编码,构成二进制编码集合。
优选的,所述S12具体包括:根据贪心算法,利用量化损失函数计算所述数据映射至其所属聚类中心的二进制编码产生的量化损失,最小量化损失对应的二进制编码为在海明空间中构成的超立方体结构与所述数据空间结构最一致的二进制编码。
优选的,所述S2具体包括:S21,通过枚举方式为每个数据重新分配所述聚类中心集合中的聚类中心,并重新确定各聚类中心的位置,形成新的聚类中心集合;S22,根据所述新的聚类中心集合更新数据空间的数据所属的聚类中心。
优选的,构建所述量化损失函数具体包括:根据任意两个数据的距离和其所属聚类中心的二进制编码的海明距离平方根的差值,构建量化损失函数。
优选的,所述量化损失函数具体为:
Figure GDA0002222797600000031
其中,X=[X1,X2,…,Xn]∈Rd×n表示数据空间,xi∈Rd为第i个数据样本中的特征向量,P={pk|pk∈Rd}为聚类中心集合,C={ck|ck∈{-1,1}b}为海明空间中与聚类中心集合对应的二进制编码集合,k=1~K,do(xi,pk)为数据样本xi到聚类中心pk的距离,
Figure GDA0002222797600000041
为数据样本xi和聚类中心pk对应的二进制编码之间的海明距离的平方根,wk为聚类中心pk中包含的数据样本数量,i*(xi)表示样本xi所属聚类中心的编号,λ为尺度参数。
优选的,S22具体包括:根据所述新的聚类中心集合,利用K-means聚类算法更新数据空间的数据所属的聚类中心。
另一方面,本发明提供了一种基于自适应的二进制量化哈希编码的数据检索装置,包括:聚类选取模块、集合更新模块、迭代完成模块和数据检索模块;其中,聚类选取模块用于选取数据空间中的聚类中心集合,并分别为每个聚类中心赋予海明空间中的二进制编码,得到对应的二进制编码集合;所述数据空间的数据为非结构化数据;集合更新模块用于更新所述聚类中心集合和所述数据空间的数据所属的聚类中心;迭代完成模块用于迭代执行所述聚类选取模块和所述集合更新模块的动作,直到所述数据空间与所述海明空间对齐,将所述数据空间的所有数据映射至其所属聚类中心对应的二进制编码,以完成哈希编码;数据检索模块用于基于完成的哈希编码,对所述数据空间的数据进行检索。
又一方面,本发明提供了一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述数据检索方法。
再一方面,本发明提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述数据检索方法。
本发明提供的一种基于自适应的二进制量化哈希编码的数据检索方法,基于聚类中心的基本思想,采取非完全编码的方案,自适应地确定聚类中心的数量和对应的二进制编码,从而减少量化损失,提高哈希检索的性能。本发明提供的非完全编码与现有技术中的完全编码相比,拥有更高的搜索自由度,能够在海明空间中获取到最能反映数据分布的编码组合,因此更好地保持数据的最近邻结构。
附图说明
图1为本发明一实施例提供的基于自适应的二进制量化哈希编码的数据检索方法流程图;
图2为图1中构成聚类中心集合并得到二进制编码集合的方法流程图;
图3为图1中更新聚类中心集合和数据空间的数据所属的聚类中心方法流程图;
图4为本发明另一实施例提供的一种基于自适应的二进制量化哈希编码的数据检索装置结构图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
目前,为了更好的将数据分类,引入聚类的概念,即根据数据的属性对整个数据空间中的数据进行类别的识别,把整个数据空间按照数据的相似度归成若干类,形成若干聚类中心。每个聚类中心代表着属于该聚类中心的数据,每个聚类中心在对应的海明空间均有一个对应的二进制编码。所以,对于数据空间中的每一个数据,均对应着海明空间中所属聚类中心对应的二进制编码。
目前,给定一个二进制编码的比特数b,最多可以生成2b个相异的二进制编码,绝大多数哈希方法尝试利用所有可能的编码,即在数据空间中的聚类中心的数量为P=2b,即“完全编码”。从几何视角上看,完全编码构成的二进制编码集合可以视作在海明空间中形成一个b维的完整超立方体,每个超立方体的顶点为一个二进制编码,对应于数据空间的一个聚类中心。在此完整的超立方体中,每个棱对应的两个顶点之间的海明距离为1,而任意两个顶点之间的海明距离等于从一个顶点到另一个顶点沿超立方体的棱所经过的最短长度,这样的距离关系与欧几里得空间的距离度量是一致的。如果数据空间中各聚类中心的分布恰好对应于此超立方体的各个顶点位置,则可直接为各聚类中心赋予这些顶点对应的编码。但通常数据并不会满足超立方体的分布结构,将数据空间的聚类中心与海明空间的二进制编码强行建立完全映射,不可避免地会造成较大的畸变误差。因此需要设计一种哈希编码方法,寻找一个聚类中心集合以及海明空间中对应二进制编码集合,最大化保持聚类中心映射到超立方体前后的空间结构关系。
本发明提供的方法仅利用完全编码的一部分,即在数据空间形成数量小于2b的聚类中心,在海明空间中获取完全编码对应的超立方体的一个子结构映射,即“非完全编码”。
如图1所示,本发明的一实施例提供了一种基于自适应的二进制量化哈希编码的数据检索方法,包括:S1,选取数据空间中的聚类中心构成聚类中心集合,并分别为每个聚类中心赋予海明空间中的二进制编码,得到对应的二进制编码集合;所述数据空间的数据为非结构化数据;S2,根据得到的所述二进制编码集合,更新所述聚类中心集合和所述数据空间的数据所属的聚类中心;S3,迭代执行上述步骤,直到所述数据空间与所述海明空间对齐,将所述数据空间的所有数据映射至其所属聚类中心对应的二进制编码,以完成哈希编码。以及,包括图1中未示出的步骤S4:基于完成的哈希编码,对所述数据空间的数据进行检索。
具体的,本实施例中采用非完全编码,即设给定一个二进制编码的比特数为b,最多可以生成2b个相异的二进制编码,在数据空间形成数量小于2b的聚类中心,对应于海明空间中数量小于2b的二进制编码。这里所说数据空间与所述海明空间对齐是指:维持数据空间中数据间的距离和海明空间中的海明距离之间的一致性。本实施例中用量化损失函数来描述空间对齐这一概念,即根据量化损失函数计算得到的量化损失的最小值来描述空间对齐。
如图2所示,步骤S1具体包括:S11,随机选取数据空间中的聚类中心构成聚类中心集合;S12,根据贪心算法,在海明空间中获取构成的超立方体结构与所述数据空间结构最一致的二进制编码,构成二进制编码集合。
设数据空间X中包含n个数据样本,以下数据样本简称为样本。首先设在数据空间X内形成2b个聚类中心,分别对应于海明空间的2b个二进制编码。记X=[X1,X2,…,Xn]∈Rd×n,记xi∈Rd表示第i个样本的特征向量,其中d表示特征向量的维度。设随机选取K个聚类中心,构成聚类中心集合为P={pk|pk∈Rd},其中,k=1~K。每个聚类中心在海明空间中都被赋予一个长度为b的二进制编码ck∈{-1,1}b,在海明空间中构成二进制编码集合C={ck|ck∈{-1,1}b}。对于任意的样本xi,均可以被距离最近的聚类中心
Figure GDA0002222797600000081
所代表,其中i*(xi)表示样本xi所属聚类中心的编号。i*(xi)可以通过如下公式计算得到:
Figure GDA0002222797600000082
其中,d0(xi,pk)表示样本xi与聚类中心pk之间的距离,函数
Figure GDA0002222797600000083
表示d0(xi,pk)取值最小时自变量的取值。样本xi的二进制编码即其所属聚类中心
Figure GDA0002222797600000084
所对应的二进制编码
Figure GDA0002222797600000088
因此,定义哈希函数
Figure GDA0002222797600000085
为样本xi对应的二进制编码。
利用量化损失函数来形式化地描述数据空间和海明空间的关系,量化损失函数如下式:
Figure GDA0002222797600000086
其中,Y=[y1,y2,…,yn]∈Rd为海明空间中n个数据样本对应的二进制编码,do(xi,xj)为第i个数据样本和第j个数据样本的距离,dh(yi,yj)为第i个数据样本和第j个数据样本对应的二进制编码之间的海明距离的平方根。即
Figure GDA0002222797600000087
为二进制编码yi=h(xi)和二进制编码yj=h(xj)之间的海明距离的平方根。这里,将海明距离进行开方处理并不会影响海明空间对于最近邻关系的描述能力,并且可以将海明空间的超立方体结构完全嵌入欧几里得空间。
λ为尺度参数,用于使数据空间的距离与海明空间的距离保持为同一尺度。在后面的优化迭代过程中可知,优化迭代过程对于参数λ不敏感,即对于不同取值的参数λ,对优化迭代得到的结果产生的影响可以忽略不计。所以,为简化计算过程,在聚类空间的数量为2b时计算参数λ,并将其设为一个常数,计算参数λ的公式如下:
Figure GDA0002222797600000091
其中,dh(ck,cl)表示二进制编码ck和二进制编码cl的海明距离的平方根,
Figure GDA0002222797600000092
表示海明空间中任意两个二进制编码之间海明距离的平方根的总和,d0(xi,pk)表示数据空间中样本和聚类中心的距离,
Figure GDA0002222797600000093
表示数据空间中任一样本与任一聚类中心之间的距离的总和。
上述的量化损失函数是在完全编码的情况下的计算公式,式中包括n2个样本对的计算,对于大规模的数据空间是难以实现的。利用聚类方法降低问题的复杂度,并且将空间量化引入哈希学习。在非完全编码的情况下,对于随机选择的K个聚类中心进行研究。对于任意的样本xi,与另一个样本xj的距离可以用如下公式近似:
Figure GDA0002222797600000094
即将两个样本之间的距离近似等于一个样本与另一个样本所属聚类中心之间的距离。
因此,量化损失函数可以重新表示为更简单有效的形式:
Figure GDA0002222797600000101
其中do(xi,pk)为样本xi到聚类中心pk的距离,
Figure GDA0002222797600000102
为样本xi和聚类中心pk对应的二进制编码之间的海明距离的平方根,wk为聚类中心pk中包含的样本数量,i*(xi)表示样本xi所属聚类中心的编号,λ为尺度参数。
当上述量化损失函数取得最小值时,即如下式时,表示数据空间和海明空间对齐:
Figure GDA0002222797600000103
其中,ck∈{-1,1}b,ck Tcl≠b,l≠k,即保证任意两个聚类中心不会被赋予同一个二进制编码。
S12,根据贪心算法,在海明空间中获取构成的超立方体结构与所述数据空间结构最一致的二进制编码,构成二进制编码集合。
对于随机选择的K个聚类中心,假设已经求出各个样本对应的聚类中心的编号,则要在海明空间中寻找构成的超立方体结构与所述数据空间结构最一致的二进制编码,即要求数据空间与海明空间形成最优的对齐,也即计算量化损失函数的最小值。如果直接枚举所有的二进制编码组合,对于b个比特位,一共存在高达2b种组合,这显然是不切实际的。所以,利用贪心算法进行求解自适应的二进制编码。
贪心算法又称贪婪算法,是指在对一个问题进行求解时,总是做出在当前看来是最好的选择,即不从整体最优上加以考虑。通过贪心算法得到的是通常是局部最优解。贪心算法不是对所有问题都能得到整体最优解,关键是贪心策略的选择,选择的贪心策略必须具备无后效性,即某个状态以前的过程不会影响以后的状态,只与当前状态有关。
为聚类中心p1随机赋予一个海明空间中的二进制编码c1,不断增加聚类中心,并分别为其赋予一个海明空间中的二进制编码,根据量化损失函数计算量化损失,将对应最小量化损失的各二进制编码分别赋予各聚类中心。设聚类中心p1,p2,…,pl(1≤l≤K)已经被分别赋予二进制编码c1,c2,…,cl(1≤l≤K),则需要从可利用的剩余二进制编码集合
Figure GDA0002222797600000111
中为下一个聚类中心pk寻求能再次使量化损失函数取值最小的二进制编码ck,即局部最优编码ck。此时,量化损失函数应满足下式:
Figure GDA0002222797600000112
并通过下式计算使量化损失函数取值最小的二进制编码ck
Figure GDA0002222797600000113
因为此时海明空间是限制在一个较小的范围,即
Figure GDA0002222797600000114
上述贪心算法的求解过程可以通过穷举剩余二进制编码集合
Figure GDA0002222797600000115
中的二进制编码高效地实现。最终在海明空间中找到构成的超立方体结构与所述数据空间结构最一致的二进制编码,并构成二进制编码集合C。
如图3所示,S2具体包括:S21,通过枚举方式为每个数据重新分配所述聚类中心集合中的聚类中心,并重新确定各聚类中心的位置,形成新的聚类中心集合;S22,根据所述新的聚类中心集合更新数据空间的数据所属的聚类中心。
S21,通过枚举方式为每个数据重新分配所述聚类中心集合中的聚类中心,并重新确定各聚类中心的位置,形成新的聚类中心集合。
尽管好的聚类中心能够反映数据空间的数据分布,但是对于哈希学习问题,聚类中心还需要具备数据空间到海明空间的映射保持能力。因此,在确定了二进制编码集合C之后,需要进一步调整聚类中心集合P的分布,使数据空间和海明空间得到更好的对齐。因此,数据空间和海明空间的对齐条件转化为:
Figure GDA0002222797600000121
其中,C为二进制编码集合中包含的二进制编码的数量。
为了获取最优的聚类中心的位置,首先为数据空间的各个样本重新分配聚类中心,然后根据新的聚类中心的分布确定聚类中心的位置,以形成新的聚类中心集合。
利用上述转化后的数据空间和海明空间的对齐条件,每一个样本xi重新分配最适合的聚类中心,这可通过简单枚举方式完成,即要保证样本xi满足如下公式:
Figure GDA0002222797600000122
为每个样本重新分配聚类中心后,通过如下公式重新确定各个聚类中心的位置:
Figure GDA0002222797600000131
在更新聚类中心集合的过程中,由于一些缺乏信息量、不能体现空间对齐的聚类中心被舍弃,导致聚类中心的数量可能发生变化,使聚类中心集合被缩小。这是与之前对哈希编码的研究差异最大的地方。经后续的迭代操作,聚类中心集合会逐渐地适应二进制编码集合,达到数据空间和海明空间对齐的目的。
S22,根据所述新的聚类中心集合更新数据空间的数据所属的聚类中心。
更新聚类中心集合之后,数据空间的样本分布也将随之改变。在后续的迭代操作中,海明空间的二进制编码应该尽可能保持与数据空间分布的一致性,因此需要对数据空间的数据分布进行更新,即对样本所属聚类中心的编号进行更新。这一更新操作利用K-means聚类算法完成:
Figure GDA0002222797600000132
S3,迭代执行上述S1和S2,直到数据空间与海明空间对齐,将数据空间的所有数据映射至其所属聚类中心对应的二进制编码,以完成哈希编码。由于每次迭代操作都会使数据空间与海明空间更加对齐,这里所说的迭代执行上述S1和S2,直到数据空间与海明空间对齐是指,下次迭代操作不会对数据空间与海明空间对齐产生有利影响,即本次的迭代操作产生的量化误差是所有迭代操作得到的量化误差中的最小值,下次迭代操作产生的量化误差大于或等于本次迭代操作产生的量化误差。
本发明实施例提供的基于自适应的二进制量化哈希编码的数据检索方法,基于聚类中心的基本思想,采取非完全编码的方案,自适应地确定聚类中心的数量和对应的二进制编码,从而减少量化损失,提高哈希检索的性能。本发明提供的非完全编码与现有技术中的完全编码相比,拥有更高的搜索自由度,能够在海明空间中获取到最能反映数据分布的编码组合,因此更好地保持数据的最近邻结构。
如下表所示,为自适应量化哈希算法流程。
表1自适应量化哈希算法流程
Figure GDA0002222797600000141
如图4所示,本发明的另一实施例提供了一种基于自适应的二进制量化哈希编码的数据检索装置,包括:聚类选取模块41、集合更新模块42和迭代完成模块43。以及,图4中未示出的数据检索模块。
其中,聚类选取模块41用于选取数据空间中的聚类中心集合,并分别为每个聚类中心赋予海明空间中的二进制编码,得到对应的二进制编码集合;所述数据空间的数据为非结构化数据。集合更新模块42用于更新所述聚类中心集合和所述数据空间的数据所属的聚类中心。迭代完成模块43用于迭代执行所述聚类选取模块和所述集合更新模块的动作,直到所述数据空间与所述海明空间对齐,将所述数据空间的所有数据映射至其所属聚类中心对应的二进制编码,以完成哈希编码。图4中未示出的数据检索模块用于基于完成的哈希编码,对所述数据空间的数据进行检索。
具体的,本实施例中编码装置的操作流程与上述方法类实施例一一对应,在此不再赘述。
本发明的另一实施例中,提供了一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,所述计算机执行的方法如本发明一实施例提供的编码方法所述。
本发明的又一实施例中,提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如本发明一实施例提供的编码方法。
最后,本发明的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种基于自适应的二进制量化哈希编码的数据检索方法,其特征在于,包括:
S1,选取数据空间中的聚类中心构成聚类中心集合,并分别为每个聚类中心赋予海明空间中的二进制编码,得到对应的二进制编码集合;所述数据空间的数据为非结构化数据;所述非结构化数据包括图像、视频;
S2,根据得到的所述二进制编码集合,更新所述聚类中心集合和所述数据空间的数据所属的聚类中心,直到所述数据空间与所述海明空间对齐,将所述数据空间的所有数据映射至其所属聚类中心对应的二进制编码,以完成哈希编码;
S3,基于完成的哈希编码,对所述数据空间的数据进行检索;
所述数据空间中的聚类中心通过如下方式确定:
根据数据的属性对所述数据空间中的数据进行类别的识别,把所述数据空间按照数据的相似度归成若干类,形成若干聚类中心,每个聚类中心代表着属于该聚类中心的数据。
2.根据权利要求1所述的数据检索方法,其特征在于,所述S1具体包括:
S11,随机选取数据空间中的聚类中心构成聚类中心集合;
S12,根据贪心算法,在海明空间中获取构成的超立方体结构与所述数据空间结构最一致的二进制编码,构成二进制编码集合。
3.根据权利要求2所述的数据检索方法,其特征在于,所述S12具体包括:
根据贪心算法,利用量化损失函数计算所述数据映射至其所属聚类中心的二进制编码产生的量化损失,最小量化损失对应的二进制编码为在海明空间中构成的超立方体结构与所述数据空间结构最一致的二进制编码。
4.根据权利要求1-3中任一项所述的数据检索方法,其特征在于,所述S2具体包括:
S21,通过枚举方式为每个数据重新分配所述聚类中心集合中的聚类中心,并重新确定各聚类中心的位置,形成新的聚类中心集合;
S22,根据所述新的聚类中心集合更新数据空间的数据所属的聚类中心。
5.根据权利要求3所述的数据检索方法,其特征在于,构建所述量化损失函数具体包括:
根据任意两个数据的距离和其所属聚类中心的二进制编码的海明距离平方根的差值,构建量化损失函数。
6.根据权利要求5所述的数据检索方法,其特征在于,所述量化损失函数具体为:
Figure FDA0002382636430000021
其中,X=[X1,X2,…,Xn]∈Rd×n表示数据空间,xi∈Rd为第i个数据样本中的特征向量,P={pk|pk∈Rd}为聚类中心集合,C={ck|ck∈{-1,1}b}为海明空间中与聚类中心集合对应的二进制编码集合,k=1~K,do(xi,pk)为数据样本xi到聚类中心pk的距离,
Figure FDA0002382636430000022
为数据样本xi和聚类中心pk对应的二进制编码之间的海明距离的平方根,wk为聚类中心pk中包含的数据样本数量,i*(xi)表示样本xi所属聚类中心的编号,λ为尺度参数,b为一个二进制编码的比特数。
7.根据权利要求4所述的数据检索方法,其特征在于,S22具体包括:
根据所述新的聚类中心集合,利用K-means聚类算法更新数据空间的数据所属的聚类中心。
8.一种基于自适应的二进制量化哈希编码的数据检索装置,其特征在于,包括:
聚类选取模块,用于选取数据空间中的聚类中心集合,并分别为每个聚类中心赋予海明空间中的二进制编码,得到对应的二进制编码集合;所述数据空间的数据为非结构化数据;所述非结构化数据包括图像、视频;
集合更新模块,用于更新所述聚类中心集合和所述数据空间的数据所属的聚类中心;
迭代完成模块,用于迭代执行所述聚类选取模块和所述集合更新模块的动作,直到所述数据空间与所述海明空间对齐,将所述数据空间的所有数据映射至其所属聚类中心对应的二进制编码,以完成哈希编码;
数据检索模块,用于基于完成的哈希编码,对所述数据空间的数据进行检索;
所述数据空间中的聚类中心通过如下方式确定:
根据数据的属性对所述数据空间中的数据进行类别的识别,把所述数据空间按照数据的相似度归成若干类,形成若干聚类中心,每个聚类中心代表着属于该聚类中心的数据。
9.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至7任一所述的方法。
CN201710375388.7A 2017-05-24 2017-05-24 一种基于自适应的二进制量化哈希编码的数据检索方法 Active CN107341178B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710375388.7A CN107341178B (zh) 2017-05-24 2017-05-24 一种基于自适应的二进制量化哈希编码的数据检索方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710375388.7A CN107341178B (zh) 2017-05-24 2017-05-24 一种基于自适应的二进制量化哈希编码的数据检索方法

Publications (2)

Publication Number Publication Date
CN107341178A CN107341178A (zh) 2017-11-10
CN107341178B true CN107341178B (zh) 2020-05-29

Family

ID=60221357

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710375388.7A Active CN107341178B (zh) 2017-05-24 2017-05-24 一种基于自适应的二进制量化哈希编码的数据检索方法

Country Status (1)

Country Link
CN (1) CN107341178B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107944046B (zh) * 2017-12-15 2019-02-05 清华大学 大规模高维数据快速检索方法及系统
CN110390011A (zh) * 2018-04-12 2019-10-29 北京京东尚科信息技术有限公司 数据分类的方法和装置
CN109710607B (zh) * 2018-11-07 2021-09-17 宁波大学 一种面向高维大数据的基于权重求解的哈希查询方法
CN111695917A (zh) * 2019-03-11 2020-09-22 北京京东尚科信息技术有限公司 商品推荐方法、系统、电子设备和存储介质
CN110399897B (zh) * 2019-04-10 2021-11-02 北京百卓网络技术有限公司 图像识别方法和装置
CN113592122B (zh) * 2020-04-30 2023-09-05 北京京东振世信息技术有限公司 路线规划的方法和装置
CN112101267B (zh) * 2020-09-23 2022-04-29 浙江浩腾电子科技股份有限公司 一种基于深度学习和哈希编码的快速人脸检索方法
CN114065798A (zh) * 2021-02-23 2022-02-18 杭州博工科技有限公司 基于机器识别的视觉识别方法及装置
CN113470831B (zh) * 2021-09-03 2021-11-16 武汉泰乐奇信息科技有限公司 一种基于数据简并的大数据转换方法与装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104021234A (zh) * 2014-06-30 2014-09-03 中国科学院自动化研究所 一种基于自适应位分配哈希算法的大规模图像库检索方法
CN105320685A (zh) * 2014-07-29 2016-02-10 富士通株式会社 哈希编码方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104021234A (zh) * 2014-06-30 2014-09-03 中国科学院自动化研究所 一种基于自适应位分配哈希算法的大规模图像库检索方法
CN105320685A (zh) * 2014-07-29 2016-02-10 富士通株式会社 哈希编码方法和装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Distributed Adaptive Binary Quantization for Fast Nearest Neighbor Search;Xianglong Liu 等;《IEEE TRANSACTIONS ON IMAGE PROCESSING》;20171130;第26卷(第11期);5324-5336 *
Structure Sensitive Hashing With Adaptive Product Quantization;Xianglong Liu 等;《IEEE Transactions on Cybernetics》;20161031;第46卷(第10期);2252-2264 *

Also Published As

Publication number Publication date
CN107341178A (zh) 2017-11-10

Similar Documents

Publication Publication Date Title
CN107341178B (zh) 一种基于自适应的二进制量化哈希编码的数据检索方法
WO2019134567A1 (zh) 样本集的处理方法及装置、样本的查询方法及装置
US20180349735A1 (en) Method and Device for Comparing Similarities of High Dimensional Features of Images
US8676725B1 (en) Method and system for entropy-based semantic hashing
US10949467B2 (en) Random draw forest index structure for searching large scale unstructured data
CN104035949A (zh) 一种基于局部敏感哈希改进算法的相似性数据检索方法
CN109697451B (zh) 相似图像聚类方法及装置、存储介质、电子设备
JP5193518B2 (ja) パターン探索装置及びその方法
WO2013129580A1 (ja) 近似最近傍探索装置、近似最近傍探索方法およびそのプログラム
US11106708B2 (en) Layered locality sensitive hashing (LSH) partition indexing for big data applications
Tiakas et al. MSIDX: multi-sort indexing for efficient content-based image search and retrieval
CN109299097B (zh) 一种基于哈希学习的在线高维数据最近邻查询方法
Leng et al. Hashing for distributed data
JP2005011042A (ja) データ検索方法、データ検索装置、データ検索プログラムおよびコンピュータで読み取り可能な記録媒体
CN110334290B (zh) 一种基于MF-Octree的时空数据快速检索方法
CN110083731B (zh) 图像检索方法、装置、计算机设备及存储介质
US8666164B2 (en) System and method for modeling a region segmented image
Feng et al. Real-time SLAM relocalization with online learning of binary feature indexing
WO2012077818A1 (ja) ハッシュ関数の変換行列を定める方法、該ハッシュ関数を利用するハッシュ型近似最近傍探索方法、その装置及びそのコンピュータプログラム
CN113448994B (zh) 一种基于核心集的连续遗憾率最小化查询方法
CN114417074A (zh) 高维度量空间数据的快速knn检索方法及系统
Mohamed et al. Quantized ranking for permutation-based indexing
Gorisse et al. Scalable active learning strategy for object category retrieval
CN111460088A (zh) 相似文本的检索方法、装置和系统
CN110609914B (zh) 一种基于快速类别更新的在线哈希学习图像检索方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant