[发明专利]一种大规模图片集分布式近似搜索的方法在审
申请号: | 201710333386.1 | 申请日: | 2017-05-12 |
公开(公告)号: | CN107315765A | 公开(公告)日: | 2017-11-03 |
发明(设计)人: | 胡海峰;吕成钢 | 申请(专利权)人: | 南京邮电大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06K9/62 |
代理公司: | 南京知识律师事务所32207 | 代理人: | 高玲玲 |
地址: | 210003 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 大规模 图片集 分布式 近似 搜索 方法 | ||
1.一种大规模图片集分布式近似搜索的方法,其特征在于:所述方法包括如下步骤:
步骤1:输入图片数据集样本矩阵X,X是n*d维的矩阵,n是图片的个数,d是图片特征的维度,和对应的语义类标记矩阵Y,Y是n*c维的矩阵,n是样本个数,c是类标记的个数,假设有I个服务器结点,图片集中的样本矩阵均匀分为I部分:X=[X1,X2,…,XI],类标记矩阵也相应地分为I部分:Y=[Y1,Y2,…,YI],每一部分数据和对应的标记存储在一个结点上;
步骤2:从各服务器结点的图片样本中随机抽取一部分图片作为抽样图片集,计算图片和抽样图片之间的相似度;
步骤3:引入语义一致性构建目标函数表达式O(Ai),其中Ai是d*d维的方阵,d是图片特征的维度,i代表第i个服务器结点,Ai是在编码阶段需要的转换矩阵;
步骤4:在各结点中,对于每一个图片样本x,用转换矩阵Ai乘以图片样本x和抽样图片之间的相似度,得到了引入语义一致性之后的优化相似度,然后再利用哈希技术进行编码,将图片由原始的d维特征压缩映射成k维的二进制编码;
步骤5:对于新的查询图片,分别输入到各结点中,并行计算出此查询图片的二进制编码,并通过加权模型得到各结点中查询图片的汉明距离向量;
步骤6:合并各结点的汉明距离向量,得到查询图片相对于图片集中所有图片的汉明距离向量,如果图片在汉明距离向量中对应位置的元素值小于设定的汉明距离门限阈值r,以此图片作为查询图片的近似图片。
2.根据权利要求1所述的大规模图片集分布式近似搜索的方法,其特征在于:所述利用哈希技术进行编码具体包含以下步骤:
步骤1:
对于大规模图片数据集样本矩阵X,和对应的语义类标记矩阵Y,假设有I个服务器结点,则把图片集中的样本矩阵均匀分为I部分:X=[X1,X2,…,XI],
类标记矩阵也相应地分为I部分:Y=[Y1,Y2,…,YI],每一部分数据和对应的标记信息存储在一个结点中,作为后续各结点并行训练模型使用;
步骤2:
在各结点并行训练过程中,需要计算结点中图片和抽样图片集之间的优化相似度,若第i个结点中包含ni张图片样本,定义图片间的关系矩阵Wi是一个ni*ni
维的矩阵,关系矩阵中的每一个元素定义为:
Wpq=exp(-||Ai(xp-uq)||2)(1)
上式中Ai表示第i个结点的转换矩阵,xp表示结点中的第p张图片,uq表示结点抽样图片集中的第q张图片,训练转换矩阵Ai的过程引入了语义一致性建立目标函数,并通过随机梯度下降算法迭代求解,获得编码阶段所需要的转换矩阵,对于第i个结点,定义目标函数式为:
上述目标函数中的fp表示结点中第p个图片样本的类标记向量,类标记向量是c维的列向量,c是类的数目,向量中元素的值为1或0,分别表示图片属于这个类和不属于这个类。fq表示抽样图片集中图片的类标记向量。||fp-fq||2即是在训练转换矩阵时引入的语义一致性质;
步骤3:
在优化过程中采用随机梯度下降算法以减少训练转换矩阵所用的时间,转换矩阵的初始值为I/δ,I是d*d维的单位矩阵,δ是数据集中各图片之间欧氏距离的中位数,然后根据随机梯度下降算法优化转换矩阵Ai,迭代更新规则如下:
其中γ(t)是每次迭代过程中的优化步长,遍历完结点中所有图片后,即得到最终优化完成的转换矩阵Ai;
步骤4:
得到转换矩阵Ai后,再通过式(1)计算出结点中每张图片和抽样图片之间引入语义一致性后的优化相似度,即得到了关系矩阵Wi的各个元素的值;如果抽样图片集中有m张图片样本,那么通过关系矩阵可以构建出第i个结点中使用哈希编码技术需要用到的相似矩阵Zi,Zi矩阵中各元素的计算公式定义如下:
其中<p>集合代表的是抽样图片集,即只有当图片是属于抽样图片集中的图片时,才计算Zi矩阵上对应元素的值,否则Zi矩阵上对应元素值为0;
步骤5:
设结点抽样图片集中图片数量为m,构造一个m*m维的M矩阵,M矩阵定义如下:
M=Λ-1/2ZiTZiΛ-1/2(5)
其中Λ=diag(ZiT1),是一个对角矩阵,计算得到M矩阵前k个最大的特征值组成的k*k维的对角矩阵:Σ=diag(δ1,...,δk)∈Rk×k和前k个最大的特征值对应的特征向量组成的m*k维的矩阵:V=[v1,...,vk]∈Rm×k,由上式得到的各矩阵,构造出第i个服务器结点最终的编码矩阵Yi,Yi矩阵定义如下:
Yi是一个n*k维的矩阵,n代表结点中图片的个数,k代表编码位数,编码矩阵Yi的每行就是一个编码函数,各图片通过编码函数计算得到一个k维的向量,再对此向量进行二值化分割:sgn(yi),就得到了第i个结点中各图片的编码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京邮电大学,未经南京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710333386.1/1.html,转载请声明来源钻瓜专利网。