【论文阅读】行人重识别——Bag of tricks and a strong baseline for deep person re-identification

Bag of tricks and a strong baseline for deep person re-identification

原文

论文链接:https://arxiv.org/pdf/1903.07071.pdf

代码链接:https://github.com/michuanhaohao/reid-strong-baseline

摘要:

This paper explores a simple and efficient baseline for person re-identification (ReID). Person re-identification(ReID) with deep neural networks has made progress and achieved high performance in recent years.本文探讨了一种简单有效的人员重新识别基准(ReID。具有深度神经网络的人员重新识别(ReID)近年来取得了进步并取得了很高的性能However, many state-of-the-arts methods design complex network structure and concatenate multi-branch features. In the literature, some effective training tricks are briefly appeared in several papers or source codes.然而,许多最先进的方法设计复杂的网络结构并连接多分支特征。在文献中,一些有效的训练技巧简要地出现在几篇论文或源代码中This paper will collect and evaluate these effective training tricks in person ReID. By combining these tricks together, the model achieves 94.5%rank-1 and 85.9% mAP on Market1501 with only using global features.本文将收集和评估这些有效的培训技巧用于ReID。通过将这些技巧结合在一起,该模型仅使用了全局特征Market1501上实现了94.5Rank-185.9%的mAP

1. 解决的问题:

  1. 我们对在顶级会议上发表的许多作品进行了调查,结果发现其中大多数都是基于不良基线;
  2. 对于学术界,我们希望为研究人员提供一个强大的基线,以达到更高的准确性;
  3. 对于学术圈,我们希望为审阅者提供一些参考,说明哪些技巧会影响ReID模型的性能。 我们建议,在比较不同方法的表现时,审稿人需要考虑这些技巧;
  4. 对于工业界而言,我们希望提供一些有效的技巧来获得更好的模型而不需要太多的额外消耗。

2. 创新点:

  1. 我们为学术界和工业界提供强大而简单的ReID基线;
  2. 我们收集并评估了Market1501和DukeMTMC-reID数据集上的一些训练技巧;
  3. 我们观察到ID丢失和三联体丢失之间的不一致,并提出了一种名为BNNeck的新型结构;
  4. 我们观察到ReID任务忽略了类内紧凑性和类间可分性,并且证明中心丢失可以弥补它。

【论文阅读】行人重识别——Bag of tricks and a strong baseline for deep person re-identification_第1张图片

  3. 网络架构

【论文阅读】行人重识别——Bag of tricks and a strong baseline for deep person re-identification_第2张图片

Standard Baseline:

  1. 采用ImageNet上预训练的Resnet50作为backbone;
  2. 随机抽取P个对象,每个对象K张图来构成训练batch。最终的Batchsize为B=P×K。本文中,我们设置P=16,K=4,即每个batch中包括16个人,每个人4张图;
  3. 将每张样本resize成256×128像素大小,并pad10个像素0。随机crop成256×128矩形样本;
  4. 图片预处理还采用了随机水平翻转,以0.5的概率进行翻转;
  5. 图片预处理采用了归一化,使像素值分布满足均值为0,方差为1;
  6. 模型的输出包括特征f和ID预测概率p;
  7. 模型的输出f用于计算triplet loss,p用于计算交叉熵损失;
  8. 模型优化使用Adam。初始化学习权重设置为0.00035并分别在第40次与70次epoch时下降0.1。整体训练120个epochs。

大多数Standard Baseline中结合ID损失和triplet loss 的方式都采用了上图所示结构,两个损失函数对同一个特征f进行约束,而作者指出,前置研究发现,ID loss 本质是在特征空间中学习几个超平面,将不同类别的特征分配到不同的子空间里,将特征归一化到超球面,再采用ID loss进行优化会取得更好的效果,Triplet loss 则适合在自由的欧式空间中进行约束。

因此作者提出了BNNeck,BNNeck中triplet loss优化的特征仍然是原先的特征,即图中的ft,ID loss优化的则是ft经过一个BN层归一化后生成的特征fi,经过归一化后使得fi近似在超球面表面分布。

Training ticks:

1. Warmup Learning Rate

 前几轮学习率有个逐渐增大的过程,增加网络的效果。

 【论文阅读】行人重识别——Bag of tricks and a strong baseline for deep person re-identification_第3张图片【论文阅读】行人重识别——Bag of tricks and a strong baseline for deep person re-identification_第4张图片

 2. Random Erasing Augmentation

随机擦除数据扩展。提出的数据增强手段,对于miniBatch中的一张图,Random Erasing的概率为pe,保持原样的概率为1-pe,持续迭代,直到选到理想的。选择出的擦除区域中每个像素分别设置为图像I的均值。本文设置参数 p = 0.5, 0.02

 3. Label Smoothing

目的是使标签更为平滑。本文将ε设置为0.1。

一张样本,我们假设y为真实的ID标签,是第i类的预测概率。交叉熵损失函数计算如下

然而,行人重识别可以当做单步学习任务,因为测试集中的ID不会出现在训练集中。所以防止ReID模型过拟合训练数据中的ID就显得十分重要。Label smoothing(LS)广泛应用在防止分类任务过拟合上。将表示如下:

4. Last Stride

将骨干网络中的最后一个降采样操作表示为Last Stride。ResNet50中的Last Stride为2。当输入一张256×128的样本,ResNet50骨干网络输出的特征图尺寸大小为8×4。如果将last stride从2改为1,我们可以得到尺寸为(16×8)空间大小的特征图。将ResNet50最后一个卷积层的步长由2改为1,从而增大输出feature map的尺寸。这一做法增加的计算量极少且不会增加训练参数,但对性能提升有明显帮助。

 5. BNNeck

ID loss主要优化cosine距离,而triplet loss更加关注欧式距离。如果我们同时使用两个loss同时优化特征向量,他们的目标可能不一致。在训练过程中可能出现一个loss降低了另外一个loss一直在震荡或者甚至增加了的现象。

BNNeck仅仅在特征层后或者FC分类层后增加了一个BN层。BN层前的特征层表示为。我们使得通过BN层来得到正则化后的特征。在训练阶段,用来计算triplet loss与ID loss。正则化平衡了各个维度的。特征是超平面的高斯分布。这样的分布使得ID loss更容易收敛。此外,BNNeck减少了ID loss在的限制。ID loss更少的约束使得triplet loss同时更容易收敛。

【论文阅读】行人重识别——Bag of tricks and a strong baseline for deep person re-identification_第5张图片

 

6. Center Loss 

【论文阅读】行人重识别——Bag of tricks and a strong baseline for deep person re-identification_第6张图片

Triplet loss存在一个缺点,即只考虑样本对之间的相对距离,没有考虑到绝对距离。作者提出再增加Center loss,其数学形式如上所示,即使特征ft与该类特征的中心更为接近。 

 4. 实验结果

1. Influences of Each Trick (Same domain) 

【论文阅读】行人重识别——Bag of tricks and a strong baseline for deep person re-identification_第7张图片

各个trick带来的性能提升。其中可以看到random erasing和BNNeck带来提升较大,各有2-3%。 

 2. Analysis of BNNeck

【论文阅读】行人重识别——Bag of tricks and a strong baseline for deep person re-identification_第8张图片

主要对加BNNeck后的ft、fi两个特征分别用欧式距离和余弦距离给出了实验结果。 

3. Influences of Each Trick (Cross domain) 

【论文阅读】行人重识别——Bag of tricks and a strong baseline for deep person re-identification_第9张图片

M-->D 表示模型在Market1501上训练,但在DukeMTMC-reID上进行评估。

你可能感兴趣的:(论文阅读)