CVPR19_Patch-based Discriminative Feature Learning for Unsupervised Person Re-identification
同样来自中山大学Weishi Zheng老师组的一篇unsupervised person reid,但这篇不是domain adaption,而是只有unlabeled data。
PCB等监督模型的出现表明分块对于行人重识别的有效性。因此这篇文章利用分块的思想解决非监督问题上。
整个模型如上图:
- 输入:包括原图像和预处理图像,预处理包括crop, scaling, rotation, brightness, contrast和saturation。其中预处理是对整张图像做而不是图像块做
- 整个模型包括PatchNet和两个loss。PatchNet包括CNN backbone和patch generation network (PGN)。backbone用作特征提取;PGN用作预测不同的分块位置,以输出不同的分块。整个PatchNet在另外的label dataset上预训练。显然和PCB直接进行水平分块不同,该模型是自适应分块的。
- PGN包括一个a localization network (LN), patch sampling grids 和 sampler.具体细节参考NIP15文章Spatial transformer networks
loss部分是两个contrast learning loss:
- 一个loss$\mathbb{L}_c^m$是instance level的softcross entropy,显然也是借鉴了cvpr18年的Unsupervised feature learning via non-parametric instance discrimination。简单来说就是设置feature bank,$W^m=\{w_j^m\}_{i=1}^N$,N是训练集图像数目,m应该是$m=1,...M$(即M个patch)。每次forward更新部分bank
每个patch分类到自己的instance那一类,有
- 另外一个类是triplet loss$\mathbb{V}$
- 正样本对是原图像块和同一张图像的预处理图像块
- 负样本对的选择:在每个mini-batch中,l2 norm和点乘的方式计算patch间的余弦相似性并排序,最相似的前$r$个认为是positive,negative中的第一个被当做hard negative