这篇文章是阅读《Deep Learning of Binary Hash Codes for Fast Image Retrieval》后的总结,该文章提出了一种利用CNN处理基于内容的图像检索的方法。
文章的重点
基于内容的图像检索(Content-based Image Retrieval,CBIR)旨在通过对图像内容的分析搜索出相似的图像,其主要的工作有如下两点:
以AlexNet卷积神经网络为例,AlexNet的网络结构如下图所示:
(图片来源:ImageNet Classification with Deep Convolutional Neural Networks)
将最终的4096维向量作为最终图像的特征向量。这样的向量是一些高维向量,不利于计算。
模型结构如下图所示:
在文章中,作者指出,该模型主要有三个主要的部分:
本人认为在上图中,F7F7F_7与F8F8F_8之间会存在一个隐层,这一点不影响对Latent Layer的构造。
如上所述,我们可以使用F7F7F_7的结构作为图像的特征,但是这样的向量是一个高维的向量(4096维),这样的向量不利于计算。解决的方法有:降维(如PCA,Hash等方法)。通过Hash的方法构造出来的二进制的编码形式,可以利用hashing和Hamming距离计算相似度,那么能否通过模型学习到最好的Hash方法?
解决的方法是在F7F7F_7和F8F8F_8之间增加一个映射层(Latent Layer)H,那么如果两个图片生成的二进制编码相似,那么这两张图片也应该具有相同的标签。在H层的激活函数为Sigmoid函数。
在深层的卷积神经网络中,浅层可以学习到局部的视觉表征,而深层可以捕获到适合识别的语义信息。
在检索阶段,作者采用了由粗到精的搜索策略(coarse-to-fine search strategy):