2021ICCV行人重识别文章精读之03.Inter-instance Contrastive Encoding for Unsupervised Person

104 阅读3分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第12天,点击查看活动详情

论文--Hao Chen ,  Benoit Lagadec,  Francois Bremond. Inter-instance Contrastive Encoding for Unsupervised Person Re-identification[J].  In ICCV, 2021.

摘要

无监督行人重识别(Unsupervised person re-identification, ReID)的目的是在没有注释的情况下学习鉴别身份特征。近年来,自我监督对比学习因其在无监督表征学习中的有效性而受到越来越多的关注。实例对比学习的主要思想是在不同的增强视图中匹配同一个实例。然而,以往的对比方法并没有充分探讨不同实例之间的关系,尤其是实例级的对比损失。为了解决这个问题,我们提出了实例间对比编码(ICE),它利用实例间的两两相似度评分来增强以前的类级对比ReID方法。我们首先使用两两相似度排序作为硬实例对比的独热硬伪标签,目的是减少类内方差。然后,我们使用相似度分数作为软伪标签来增强视图和原始视图之间的一致性,使我们的模型对增强视图扰动具有更强的鲁棒性。在多个大规模的person ReID数据集上的实验验证了我们提出的无监督方法ICE的有效性,它甚至可以与有监督方法相媲美。可以从github.com/chenhao2345…

贡献

使用两两相似度排序来挖掘硬样本作为硬实例对比的独热硬伪标签,这减少了类内方差

使用两两相似度得分作为软伪标签,以增强增强实例和原始实例之间的一致性,减轻标签噪声,使模型对增强扰动更稳健。

方法

图片.png

根据MoCo,本文设计了基于在线编码器和动量编码器的ICE网络。在线编码器是常规网络,如ResNet50,通过反向传播更新。动量编码器(权重记为θm)具有与在线编码器相同的结构,但由在线编码器的累计权重(权重记为θo)更新

图片.png

在每个训练epoch开始时,使用动量编码器为训练集X中所有样本提取外观表征。在这些外观表示上使用聚类算法DBSCAN生成伪身份标签Y = {y1, y2,…, yN}。计算代理质心p1, p2,…并将它们存储在内存中,用于代理对比损失Lproxy。这个代理内存是相机感知的。

然后,使用一个随机身份采样器将训练集分成小批,其中每个小批包含NP伪身份,每个身份有NK实例。通过组合Lproxy(使用类级标签)、硬实例对比损失Lh-in(使用硬实例两两标签)和软实例一致性损失Ls-in(使用软实例两两标签)来训练整个网络

图片.png

实验

数据集:Market-1501,DukeMTMC-reID,MSMT17

主干网络:ImageNet预训练的ResNet50

优化器:权重衰减率为0.0005的Adam优化器

学习率:0.00035,并且前10个epoch有warm-up设置

4个GPU, pytorch, 400个iter, 共40epoch

Batchsize=32,其中Np=8,Nk=4

集群设置:计算聚类的k-reciprocal Jaccard距离,K设置为30.DBSCAN设置最小簇样本为4,距离阈值为0.55(duke),0.5(market),0.6(msmt17)

数据增强:256*128,随机水平翻转,裁剪,高斯模糊和擦除

图片.png