All Projects → liuguiyangnwpu → Massimageretrieval

liuguiyangnwpu / Massimageretrieval

Licence: apache-2.0
This project is intended to solve the task of massive image retrieval.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Massimageretrieval

Hardnet
Hardnet descriptor model - "Working hard to know your neighbor's margins: Local descriptor learning loss"
Stars: ✭ 350 (+644.68%)
Mutual labels:  image-retrieval
Pyretri
Open source deep learning based unsupervised image retrieval toolbox built on PyTorch🔥
Stars: ✭ 795 (+1591.49%)
Mutual labels:  image-retrieval
Hierarchical Localization
Visual localization made easy with hloc
Stars: ✭ 997 (+2021.28%)
Mutual labels:  image-retrieval
Flask Keras Cnn Image Retrieval
🚀CNN-based image retrieval built on Keras
Stars: ✭ 416 (+785.11%)
Mutual labels:  image-retrieval
Deep metric
Deep Metric Learning
Stars: ✭ 671 (+1327.66%)
Mutual labels:  image-retrieval
Cnnimageretrieval Pytorch
CNN Image Retrieval in PyTorch: Training and evaluating CNNs for Image Retrieval in PyTorch
Stars: ✭ 931 (+1880.85%)
Mutual labels:  image-retrieval
Artificio
Deep Learning Computer Vision Algorithms for Real-World Use
Stars: ✭ 326 (+593.62%)
Mutual labels:  image-retrieval
Watermarkreco
Pytorch implementation of the paper "Large-Scale Historical Watermark Recognition: dataset and a new consistency-based approach"
Stars: ✭ 45 (-4.26%)
Mutual labels:  image-retrieval
Lire
Open source library for content based image retrieval / visual information retrieval.
Stars: ✭ 740 (+1474.47%)
Mutual labels:  image-retrieval
Mxnet Ir
Image Retrieval Experiment Using Triplet Loss
Stars: ✭ 27 (-42.55%)
Mutual labels:  image-retrieval
Sis
Simple image search engine
Stars: ✭ 438 (+831.91%)
Mutual labels:  image-retrieval
Cnn For Image Retrieval
🌅The code of post "Image retrieval using MatconvNet and pre-trained imageNet"
Stars: ✭ 597 (+1170.21%)
Mutual labels:  image-retrieval
Cbir System
Content-Based Image Retrieval system (KTH DD2476 Project)
Stars: ✭ 9 (-80.85%)
Mutual labels:  image-retrieval
Cbir
🏞 A content-based image retrieval (CBIR) system
Stars: ✭ 407 (+765.96%)
Mutual labels:  image-retrieval
Mirror
Matchable Image Retrieval by Learning from Surface Reconstruction
Stars: ✭ 44 (-6.38%)
Mutual labels:  image-retrieval
Mmt
[ICLR-2020] Mutual Mean-Teaching: Pseudo Label Refinery for Unsupervised Domain Adaptation on Person Re-identification.
Stars: ✭ 345 (+634.04%)
Mutual labels:  image-retrieval
Ddsh Tip2018
source code for paper "Deep Discrete Supervised Hashing"
Stars: ✭ 16 (-65.96%)
Mutual labels:  image-retrieval
Keras rmac plus
Keras implementation of R-MAC+ descriptors
Stars: ✭ 46 (-2.13%)
Mutual labels:  image-retrieval
Deep Fashion
Proposal a new method to retrieval clothing images
Stars: ✭ 44 (-6.38%)
Mutual labels:  image-retrieval
Deep Mihash
Code for papers "Hashing with Mutual Information" (TPAMI 2019) and "Hashing with Binary Matrix Pursuit" (ECCV 2018)
Stars: ✭ 13 (-72.34%)
Mutual labels:  image-retrieval

模型设计的指导

  1. 修改采样的方案,通过每隔几轮的更新候选集合进行采样
    • 采样中当选择了(x_a, x_p)之后,如何确定选择的x_n是一个可以提升结果的点
  2. 细化case方案,重新定制损失函数,把损失函数可视化出来
  3. 设计x_a, x_p, x_n之间的矢量信息,求出夹角方向值,重新设计损失函数
  4. 通过增大的batch信息,将类内误差和类间误差添加到损失函数中去

问题以及解决?

  1. 所有的训练样本都是根据随机选择的,其中存在部分数据是很难被直接选择到的,导致10分类的分类器的分类性能下降
  2. 改进样本构造的方案,使得所有的样本都可以进入分类器进行训练

实验结果


TODOLIST

  • [x] 使用Res50提取图像的特征
  • [x] 编写孪生网络进行测试
  • [x] 编写Triple Loss网络,并进行测试
  • [ ] 重新设计Triple Loss网络训练样本的构造
    • [x] 添加了基于聚类中心的anchor选择和在给定半径之外的正负样本的选择
    • [x] 添加了针对训练样本中$(x_a, x_p, x_n)$之间的方向条件进行选择
    • [ ] 添加针对Query列表候选集进行训练样本选择的策略
  • [ ] 根据TripleModel输入的数据中可以转化成PairWise的排序问题
  • [x] 将每次训练出得模型结果保存成文件便于后续分析
  • [ ] 结果图中,聚类不够紧凑
    • [ ] 针对数据采样策略的修改
      • [x] 在采样时使用一个set,保证被采样过的样本不能在被采样一次,直到没有可采样数据后,结束这一轮的训练
      • [x] 每一个batch采样时,将记录每个样本被采样的次数,每次会得到一个分布,将分布改成概率p,下一次按照(1-p)去进行采样
      • [ ] 损失函数为max(0, dist loss),在训练段记录为0的样本,这些样本对整体训练没有梯度的贡献,进而指导采样
      • [ ] 每一轮训练后,会得到全量数据的距离矩阵,将距离矩阵转换成概率矩阵对采样端进行结果指导(MCMC)
    • [ ] 修改loss函数策略
      • [x] 关注到x_p到x_a的距离的控制
      • 是否可以引入EM算法,对进行二维变量的混合高斯估计
    • [ ] 当选择的数据sample(x_a, x_p, x_n)为一下情况,样本失效(目标是max(0.0, dist_p - dist_n + margin))
      • dist_n too large, dist_p too small
      • margin too small
      • the categories of positive and negative samples are not close neighbors
      • the selection of positive and negative samples is not on the same side
  • [x] 添加Hash Loss Function
  • [ ] 每次使用2000个Triple样本进行训练,相邻的两个epoch得到的预测结果差异很大,如何较好的控制每次聚类的结果,这个确实很重要?
  • [x] 使用SoftMax Loss + Center Loss进行训练,得到模型

Reference List

  1. Deep Learning of Binary Hash Codes for Fast Image Retrieval
  2. Deep Relative Distance Learning- Tell the Difference Between Similar Vehicles
  3. Deep Supervised Discrete Hashing
  4. Deep Supervised Hashing for Fast Image Retrieval
  5. FaceNet- A Unified Embedding for Face Recognition and Clustering
  6. Fast Training of Triplet-based Deep Binary Embedding Networks
  7. Hard-Aware Deeply Cascaded Embedding
  8. HashNet: Deep Learning to Hash by Continuation
  9. Fast Supervised Hashing with Decision Trees for High-Dimensional Data
  10. Simultaneous Feature Learning and Hash Coding with Deep Neural Networks
  11. Learning to Hash with Binary Reconstructive Embeddings
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].