1.一种对高维向量相似性比较的方法,其特征在于,所述方法用于相似图片查询,所述方法包括:获取向量集合,所述向量集合包含多个高维向量;每个所述高维向量表征一张图片;
对每一个所述高维向量多次降维得到多个预定维数映射;
依次计算每两个所述高维向量对应的同一次降维下预定维数映射之间的距离值,若多个所述距离值均小于预定距离值,则所述高维向量之间的相似度符合预定相似度值,所述高维向量表征的所述图片相似,所述预定距离值的确定方式为:依据预定召回率在预设卡方分布表中查找得到系数值,所述预定召回率用P表示,所述预设卡方分布表中预存储了所述预定召回率与系数值的对应关系,所述系数值为k的平方,所述预定距离值为kε,ε为已知数值,当根据所述预定召回率查找得到k的平方后,计算得到k的数值,进而计算得到预定距离值的数值,所述预定距离值为依据高维向量降维后确定的距离阈值;
保留相似度符合预定相似度值的高维向量对应的图片,并过滤掉相似度不符合预定相似度值的高维向量对应的图片,根据保留下来的图片确定图片召回率;
所述依次计算每两个所述高维向量对应的同一次降维下预定维数映射之间的距离值,若得到的所述距离值均小于预定距离值之后还包括步骤:计算两个所述高维向量的欧几里得距离;若所述欧几里得距离小于或等于阈值,则所述高维向量之间的相似度符合预定相似度值;
所述获取向量集合之后还包括步骤:为每一个所述高维向量分配一个数据块编号,将具有相同数据块编号的高维向量划分为一组,将相同组别的高维向量运行于同一终端设备上进行计算;将具有相同数据块编号的高维向量划分为一组;将相同组别的高维向量运行于同一终端设备上以进行分布式计算;
所述预定距离值的计算方式为:依据预定召回率在预设卡方分布表中查找得到系数值;依据所述系数值计算得到预定距离值。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
若得到的其中一个所述距离值大于预定距离值,则所述高维向量之间的相似度不符合预定相似度值。
3.一种对高维向量相似性比较的装置,其特征在于,所述装置用于相似图片查询,所述装置包括:收发模块,用于获取向量集合,所述向量集合包含多个高维向量;每个所述高维向量表征一张图片;
处理模块,用于对每一个所述高维向量多次降维得到多个预定维数映射;依次计算每两个所述高维向量对应的同一次降维下预定维数映射之间的距离值,若多个所述距离值均小于预定距离值,则所述高维向量之间的相似度符合预定相似度值,所述高维向量表征的所述图片相似,所述预定距离值的确定方式为:依据预定召回率在预设卡方分布表中查找得到系数值,所述预定召回率用P表示,所述预设卡方分布表中预存储了所述预定召回率与系数值的对应关系,所述系数值为k的平方,所述预定距离值为kε,ε为已知数值,当根据所述预定召回率查找得到k的平方后,计算得到k的数值,进而计算得到预定距离值的数值,所述预定距离值为依据高维向量降维后确定的距离阈值;
保留相似度符合预定相似度值的高维向量对应的图片,并过滤掉相似度不符合预定相似度值的高维向量对应的图片,根据保留下来的图片确定图片召回率;
所述处理模块还用于:计算两个所述高维向量的欧几里得距离;若所述欧几里得距离小于或等于阈值,则所述高维向量之间的相似度符合预定相似度值;
所述处理模块还用于:为每一个所述高维向量分配一个数据块编号,将具有相同数据块编号的高维向量划分为一组,将相同组别的高维向量运行于同一终端设备上进行计算;
将具有相同数据块编号的高维向量划分为一组;将相同组别的高维向量运行于同一终端设备上以进行分布式计算;
所述处理模块还用于:依据预定召回率在预设卡方分布表中查找得到系数值;依据所述系数值计算得到预定距离值。
4.如权利要求3所述的装置,其特征在于,所述处理模块还用于:若得到的其中一个所述距离值大于预定距离值,则所述高维向量之间的相似度不符合预定相似度值。