1.基于稀疏哈希的大数据检索方法,包括下述步骤:
(1)从大数据中抽样数据当做训练集X;
(2)用X训练哈希函数;
(3)对大数据集中还没得到二进制代码的实例进行二进制编码,并将编码后的大数据储存在计算机内存或者外磁盘;
(4)对新来的测试实例,首先得到它的低维实数值,然后得到它的低维二进制代码,最后,把测试实例的二进制代码跟大数据的二进制代码进行相似性搜索,得到它的相似实例;
所述步骤(1)的训练集X的训练集大小n由 确定,其中tα/2表示置信度的值,通过t分布临界值获得,ε表示设定的最大的允许误差;
所述步骤(2)包括下述过程:
A).建立目标函数:
其中X为训练集,B是基空间,B的每一个向量是从训练集X中训练出来的基向量,S是X被投影在基空间B上的低维实数值,λ1和λ2是通过十折交叉验证方法取得的可调参数,wi,j是X中两个实例xi和xj之间的欧式距离在高斯核上的投影,si和sj是矩阵S中的两个向量,Bi,j是矩阵B中的第i行和第j列元素,i=1,…,n表示实例的记号,j=1,…,k表示基向量的标号,n是实例的个数,k是基向量的个数, 表示S中每个元素为非负;
B).把S转换成二进制代码;S中非0元素转换成1,否则为0;
C).建立哈希函数:找到训练集X中哈希值全为1的实例为类Am1,m=1,…,d,剩余哈希值为0的实例归为类Am0,m=1,…,d,得到2d个类,哈希函数定义为:设S的维度是d,X的维度是D,D>>d,d维中每一维为一个二进制向量,为d维中每一维建立一个哈希函数,一共建立d个哈希函数;式中,Xi是矩阵X的第i个向量,Si是矩阵S的第i个向量,i=1,…,n。
2.根据权利要求1的方法,所述步骤(3)对大数据每一个实例x,通过s=(B'B+2I)-1B'x得到x的低维实数值,然后通过哈希函数得到它的低维二进制代码;其中,B是上面步骤定义的基空间,I是跟B同维度的单位矩阵。
3.根据权利要求1的方法,所述步骤(4)对测试数据集每一个实例xt,通过st=(B'B+
2I)-1B'xt得到xt的低维实数值,然后通过哈希函数得到它的低维二进制代码;其中,B是上面步骤定义的基空间,I是跟B同维度的单位矩阵。