一种大规模图片多尺度语义检索方法与流程

文档序号:14479054阅读:205来源:国知局

本发明是一种大规模图片语义检索技术,特别是大规模的电商图片的多尺度语义检索方法。



背景技术:

现有的图片的检索技术主要分为基于文本的图片检索技术和基于内容的图片检索技术。基于文本的检索的技术利用文本描述的方式描述图片的特征。基于内容的图片检索技术是通过图片的颜色、纹理、布局等进行分析和检索。基于文本的检索通过图片的作者、年代、流派、尺寸来描述图片,此种方式不能体现出图片之间语义之间的相似。基于内容的图片检索技术需要手工提取图片的特征,需要加入人力和物力的投入。在近些年来,深度学习在计算机视觉领域已经取得了较大的成功,利用深度学习实现图像的检索将是一个很好的方法。

如cn106777177a公开的检索方法,接收客户端发送的检索请求,其中,所述检索请求包括目标图片;对所述目标图片进行解析,提取文本信息和图像特征;将所述文本信息与预置图片集合中的每一张预置图片的文本信息进行匹配,确定第一相似度,并且,响应于所述第一相似度大于预设的第一阈值,将所述图像特征与该预置图片的图像特征进行匹配,基于匹配结果,确定是否将该预置图片确定为相同图片;获取相同图片的关联信息,将相同图片和所述关联信息作为检索结果发送至所述客户端,以使所述客户端显示所述检索结果。

cn105760390a图片检索系统,运行于电子设备中,包括图片获取模块,用于获取一张待识别的图片;图片处理模块,用于对上述待识别的图片进行预处理;特征提取模块,用于提取该待识别图片的图像特征;及检索模块,用于根据所获取的图像特征,从预设的云存储器中检索与所述待识别图片相匹配的图片。



技术实现要素:

为了克服现有的方法语义表示不完整以及需要大量的人力、物力的投入的缺点。本发明目的是,提出了一种大规模图片语义检索技术,从多个尺度来考虑图片之间的关系,通过使用无监督的深度学习模型来训练网络获取图片的特征向量,并综合考虑图片的文本描述之间的语义关系来实现大规模的图片的检索。既无需对图片进行标注,减少了人力,同时综合考虑了图片的语义之间的关系。本发明的方法融合了基于文本的图片检索技术和基于内容的图片的检索技术的优点。

本发明解决大规模图片检索问题所使用的技术方案为:一种大规模图片语义检索方法,使用无监督的深度学习模型来训练网络获取图片的特征向量,并综合考虑图片的文本描述之间的语义关系来实现大规模的图片的检索;

对于图片的特征向量的处理,采用一个4-6层判别网络4-6层生成网络组成的生成式对抗网络,用来提取图片的特征;可以参考图3,5层判别网络5层生成网络组成的生成式对抗网络;

对于图片的文本的处理,采用词向量的分布式表示方法得到图片向量,利用单词嵌套来描述图片的语义信息;在实施例中可以参考图7;

采用聚类方法来对检索的图片进行聚类,通过聚类来向用户只展示某类商品中的一个,在实施例中可以参考图4,减少用户的查找商品的时间;使用聚类方法为k-means++方法;

在得到图片向量之后,通过计算与所要查找的图片计算相似性,找出相似性大于0.5的图片作为候选;

然后通过训练好的词向量得到图片文本描述向量;将文本向量和图片的向量连接在一起作为图片的特征表示;之后通过k-means++对图片进行聚类,在每个聚类中找出一张图片展现给用户,若用户想要查看这张图片所在的聚类的所有图片,则点击该张图片,则能看到所有的图片。

进一步,利用生成式对抗网络中的判别网络获得图片的特征表示,然后通过特征之间的相似性找出相似的图片,可以参考图5和6;同时,利用词向量获取图片文本描述的向量表示;然后将图片的向量和图片的文本描述连接在一起作为该张图片的表示,然后使用k-means对图片进行聚类,从每个类别中选择出来一张展示给用户。

具体的实施分为训练和生产环境两个步骤;训练步骤是训练生成式对抗网络;训练时使用tensorflow模型平台,训练时采用的判别网络为一个卷积神经网络,生成网络为一个反卷积神经网络;

上述的典型的为5层判别网络和5层生成网络组成的生成式对抗网络,在所述网络中,生成网络的输入为100维度的随机向量,输出为一张64*64*3的图片;判别网络的输入为64*64*3的一张图片,输出为一个0到1之间的数,表示该图片为真实图片的概率;

在训练中,分别通过最小化真实图片的损失和生成图片的损失来形成对抗;网络中使用了batchnormalization来解决网络训练中的梯度爆炸和梯度消失的问题,取消全连接层来提高网络的收敛速度;在网络训练结束后,判别网络的倒数第二层的输出作为图片的特征,根据图片之间的特征相似度将图片挑选出相似度较高的部分图片。

在词向量的训练中,图片对应的商品的文本描述作为输入,输出则是每个单词所对应的向量;然后将每张图片的文本描述的所包含的单词向量进行相加得到该张图片的语义表示。

上述的词向量的分布式表示相较于one-hot的方法来讲能表达出图片之间的语义的相似。在词向量的训练中,图片对应的商品的文本描述作为输入,输出则是每个单词所对应的向量。然后将每张图片的文本描述的所包含的单词向量进行相加得到该张图片的语义表示。

上述的聚类的方法是为了在向用户进行展示的时候,对于同一类的图片只展示其中的一张,减少用户的查找负担。k-means++和k-mean相比,使得初始化聚类中心时,使得聚类中心之间的距离的较远,对k-means方法进行了改进。

本发明有益效果:利用生成式对抗网络中的判别网络获得图片的特征表示,然后通过特征之间的相似性找出相似的图片。同时,利用词向量获取图片文本描述的向量表示。然后将图片的向量和图片的文本描述连接在一起作为该张图片的表示,然后使用k-means对图片进行聚类,从每个类别中选择出来一张展示给用户。本发明是从多个尺度考虑图片的语义特征,相比之前的方法,不需要大量的人工的参与,通过深度学习方法自动获取图片的特征,并综合考虑到了图片的描述的语义特征,适用于千万量级图片多尺度语义检索。图片的特征表示更加多元化,更能抽象出图片的深层次的特征。尤其是使用了无监督学习的方法来提取图片的特征,使得该方法在大规模图片下仍然通用。

附图说明

图1为生成式对抗网络的框架;

图2为整个系统流程图。

图3为生成网络的具体实现。

图4为关键字搜索结果的流程图。

图5为生成网络流程图。

图6为判别网络流程图。

图7为文本描述向量的生成流程。

具体实施方式

下面结合附图对本发明进一步说明,如图所示,具体的实施分为训练和生产环境两个部分。在训练的部分主要是训练生成式对抗网络。此训练使用tensorflow平台。判别网络为一个卷积神经网络,生成网络为一个反卷积神经网络。在网络中每次迭代使用64张图片。主要的架构在附图2中。

在训练完成之后,得到训练之后的模型,然后利用训练好的模型建立一个标准的tensorflow模型的server。在实际的应用中,每次可以向这个server发送一张或一批图片来获取图片的向量。

在得到图片向量之后,通过计算与所要查找的图片计算相似性,找出相似性大于0.5的图片作为候选。然后通过训练好的词向量得到图片文本描述向量。将文本向量和图片的向量连接在一起作为图片的特征表示。之后通过k-means++对图片进行聚类,在每个聚类中找出一张图片展现给用户,若用户想要查看这张图片所在的聚类的所有图片,则点击该张图片,则可以看到所有的图片。图3-7的流程可作参考。

参考图3,5层判别网络5层生成网络组成的生成式对抗网络;

参考图4,采用聚类方法来对检索的图片进行聚类,通过聚类来向用户只展示某类商品中的一个,减少用户的查找商品的时间;使用聚类方法为k-means++方法;

在得到图片向量之后,通过计算与所要查找的图片计算相似性,找出相似性大于0.5的图片作为候选;

参考图5和6;同时,利用词向量获取图片文本描述的向量表示;然后将图片的向量和图片的文本描述连接在一起作为该张图片的表示,然后使用k-means对图片进行聚类,从每个类别中选择出来一张展示给用户。

参考图7,采用词向量的分布式表示方法得到图片向量,利用单词嵌套来描述图片的语义信息。

本发明并不限于上述实施方式,采用与本发明上述实施实例相同或近似的结构,而得到的其它结构设计,均在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1