神经网络hash码论文笔记

  1. Deep Learning of Binary Hash Codes for Fast Image Retrieval
    神经网络hash码论文笔记_第1张图片
    首先通过ImageNet进行训练,通过迁移学习的方法,保留包括F7之前的参数,在F7之后添加一层hash编码层,最后是分类层。Hash编码层通过sigmoid,映射到0~1,最后通过0.5阈值二值化为{0,1}。

思想是,通过hash编码层得到每张图像的hash码,然后通过LSH将得到的hash码进行映射,最后每类都有一个hash码。检索分为两级:1,使用Hamming距离,通过上得到的hash码定位到属于哪一类;2,使用Euclidean距离,然后通过F7学到的图像特征做进一步的精确检索。

  1. Deep Supervised Hashing for Fast Image Retrieval
    神经网络hash码论文笔记_第2张图片
    通过图像对来进行训练网络。没对图像相似标记为0,否则标记为1。图像是否相似是通过这两张图片是否属于同一类,因为数据库有类别标签。
    训练时,首先将两张图片通过具有相同参数的网络,根据损失函数计算损失,然后进行反向传播。与第一篇论文不同,这篇论文将hash编码为{-1,1},也没有分类层。测试时将输出进行二值化,得到该图像的hash码,然后进行检索。
    损失函数分为3部分:
    神经网络hash码论文笔记_第3张图片
    如果俩夫图片相似,使用第一个式子;如果两幅图片不相似,使用第二个式子;通过第三个式子将输出拉向-1,1。结果是相似的图像编码相似,不相似的图像编码不相似,而且最后输出趋于-1,1。
    M设为2k,k为组后一层编码长度。
  2. Feature Learning based Deep Supervised Hashing with Pairwise Labels
    作者给deep pairwise-supervised hashing取名DPSH。
    网络结构不复杂:
    神经网络hash码论文笔记_第4张图片
    神经网络hash码论文笔记_第5张图片
    也是迁移学习,不过迁移过来后所有参数是要跟新的。其实,说的再复杂,还是再full7后边又加了一层全连接层。
    训练方法和论文2差不多,损失函数不一样。
    损失函数推理过程:
    1.
    神经网络hash码论文笔记_第6张图片
    2.
    神经网络hash码论文笔记_第7张图片
    3.
    神经网络hash码论文笔记_第8张图片
    4.其实就是指,最后边加了一个全连接层
    这里写图片描述
    5.
    神经网络hash码论文笔记_第9张图片
    Sij表示相似为1,不相似为0。这里写图片描述u为网络的输出。b为u二值化后的值,大于0为1,小于0为-1。
    最后也是相似的图像编码相似,不相似的图像编码不相似。损失函数第二项通过将输出二值化然后与输出进行正则话很机智。详细推导见论文。

第一篇文章通过类别来学习hash码,后两篇通过将类别信息隐藏于图像对进行学习hash码。

你可能感兴趣的:(论文笔记)