Bag of Tricks and A Strong Baseline for Deep Person Re-identification
《深度行人重识别的锦囊妙计与强力基线》
摘要
本文探索了一种简单且高效的深度行人重识别(ReID)基线。近年来,基于深度神经网络的行人重识别已取得显著进展,但许多最先进的方法都设计了复杂的网络结构并拼接多分支特征。在文献中,一些有效的训练技巧仅在若干论文或开源代码中零星出现。本文系统收集并评估了这些在行人 ReID 中行之有效的训练技巧。通过将这些技巧组合,模型在仅使用全局特征的情况下,即在 Market1501 上取得了 94.5 % 的 Rank-1 准确率和 85.9 % 的 mAP。我们的代码与模型已开源。
1 引言
近年来,基于深度神经网络的行人重识别(ReID)已取得显著进展,实现了很高的性能。然而,许多最先进的方法都设计了复杂的网络结构,并将多分支特征拼接在一起。在文献中,一些有效的训练技巧或改进仅在若干论文或开源代码中零星出现。本文系统收集并评估了这些在行人 ReID 中行之有效的训练技巧。在综合应用所有技巧后,仅使用 ResNet50 的全局特征就在 Market1501 上达到了 94.5 % 的 Rank-1 准确率和 85.9 % 的 mAP。值得强调的是,这一惊人性能仅由全局特征取得。
作为对比,我们调研了去年 ECCV2018 与 CVPR2018 发表的文章。如图 1 所示,大多数已有工作都建立在较弱的基线之上:在 Market1501 上,23 个基线中只有 2 个的 Rank-1 准确率超过 90 %,甚至有 4 个低于 80 %;在 DukeMTMC-reID 上,所有基线的 Rank-1 准确率均未超过 80 %,mAP 也未超过 65 %。我们认为,一个强有力的基线对推动研究发展至关重要,因此通过引入若干训练技巧对标准基线进行了改进,并开源了代码。
此外,我们发现部分工作在与其它最先进方法对比时存在不公平现象:其性能提升主要来自训练技巧,而非方法本身。然而,这些技巧在论文中被淡化,导致读者忽视,进而夸大了新方法的有效性。 我们建议审稿方在评议学术论文时,应把这些技巧纳入考量。
除上述原因外,工业界更倾向于简单高效的模型,而非在推理阶段拼接大量局部特征。为了追求高准确率,学术界常融合多种局部特征,或引入姿态估计、语义分割等额外信息,但这带来巨大开销,且大幅降低了检索速度。因此,我们希望通过技巧提升 ReID 模型能力,仅利用全局特征即可实现高性能。
本文目的概括如下:
• 调研顶级会议大量工作,发现其多建立在薄弱基线之上。
• 为学术界提供强力基线,助力行人 ReID 研究获得更高精度。
• 为社区提供参考,指出哪些技巧会影响 ReID 性能,并建议审稿方在比较不同方法时予以考虑。
• 为工业界提供有效技巧,在不增加过多开销的情况下获得更好模型。
幸运的是,许多有效训练技巧已在部分论文或开源项目中出现。我们收集并逐一在 ReID 数据集上评估,最终选取 6 项技巧加以介绍,其中部分由我们设计或改进。将这些技巧加入常用基线后,我们的改进基线在 Market1501 上取得了 94.5 % 的 Rank-1 准确率和 85.9 % 的 mAP。此外,我们发现不同工作采用了不同的图像尺寸和批大小,因此补充实验探讨了它们对性能的影响。
综上,本文贡献如下:
• 收集并评估若干行人 ReID 有效训练技巧,设计了一种新的 neck 结构 BNNeck,并在两个常用数据集上量化各技巧带来的提升。
• 提供强力 ReID 基线,在 Market1501 上达到 94.5 % Rank-1 与 85.9 % mAP,且仅使用 ResNet50 提供的全局特征;据我们所知,这是全局特征在行人 ReID 中的最佳性能。
• 补充实验评估了图像尺寸与批大小对 ReID 模型性能的影响。
2 标准基线
我们以一套广泛使用的开源代码作为标准基线。该基线的主干网络为 ResNet50[5]。训练阶段流程如下:
- 用 ImageNet 预训练参数初始化 ResNet50,并将最后一层全连接输出维度改为 N(训练集中行人 ID 数量)。
- 随机采样 P 个身份,每个身份抽取 K 张图像,组成一个训练批次,因此批次大小 B = P × K。本文设 P = 16,K = 4。
- 将每张图像缩放至 256 × 128 像素,四周零填充 10 像素后随机裁剪回 256 × 128。
- 以 0.5 的概率对图像做水平翻转。
- 图像像素解码为 [0, 1] 的 32-bit 浮点值,然后按 RGB 三通道分别减去 (0.485, 0.456, 0.406) 并除以 (0.229, 0.224, 0.225) 做归一化。
- 模型输出 ReID 特征 f 与 ID 预测 logits p。
- 用特征 f 计算三元组损失(triplet loss)[6],用 logits p 计算交叉熵 ID 损失;三元组损失 margin 设为 0.3。
- 采用 Adam 优化器,初始学习率 3.5 × 10⁻⁴,在第 40 与第 70 epoch 分别乘以 0.1,共训练 120 epoch。
3 训练技巧
本节介绍在行人 ReID 中行之有效的若干训练技巧。大多数技巧可在不改变模型主干的前提下,直接叠加到第 2 节的标准基线上。图 2(b) 给出了本节出现的训练策略与模型结构概览。
3.1 热身学习率
学习率对 ReID 模型性能影响巨大。标准基线采用较大且恒定的初始学习率。文献 [2] 提出“热身”策略以 bootstrap 网络。具体做法如图 3:前 10 个 epoch 线性地把学习率从 3.5×10⁻⁵ 提升到 3.5×10⁻⁴;随后在第 40、70 epoch 分别衰减到 3.5×10⁻⁵ 与 3.5×10⁻⁶。总计 120 epoch 的学习率调度为
lr(t)=⎧3.5×10−5⋅t/10,t≤10⎨3.5×10−4,10<t≤40⎩3.5×10−5,40<t≤703.5×10−6,70<t≤120lr(t)=
⎧ 3.5×10⁻⁵·t/10, t≤10
⎨ 3.5×10⁻⁴, 10<t≤40
⎩ 3.5×10⁻⁵, 40<t≤70
3.5×10⁻⁶, 70<t≤120lr(t)=⎧3.5×10−5⋅t/10,t≤10⎨3.5×10−4,10<t≤40⎩3.5×10−5,40<t≤703.5×10−6,70<t≤120
3.2 随机擦除数据增强
行人图像常被遮挡。为提升模型鲁棒性,Zhong 等人 [27] 提出 Random Erasing Augmentation(REA)。对 mini-batch 中的图像 I,以概率 pe 随机选择矩形区域 Ie,面积 Se∈[0.02S,0.4S],长宽比在 [0.3,3.33] 之间随机采样,然后用该图像的均值像素擦除该区域。本文设 pe=0.5。
3.3 标签平滑
ID Embedding(IDE)网络把 ReID 看成 N 类分类,最后一层 FC 输出 N 维 logits。给定图像,真实标签 y,交叉熵 ID 损失为
LID=−∑i=1NqilogpiL_ID=−∑_{i=1}^N q_i log p_iLID=−∑i=1Nqilogpi, 其中 qi=1q_i=1qi=1(i=y)。
由于测试 ID 从未在训练集出现,极易过拟合。标签平滑 [17] 把qiq_iqi改为
qi=1−εq_i=1−εqi=1−ε, i=yi=yi=y;qi=ε/Nq_i=ε/Nqi=ε/N, 否则。
本文 ε=0.1,可在训练集规模有限时显著提升性能。
3.4 最后一层 stride
更高空间分辨率可提升特征粒度。Sun 等人 [16] 把主干最后一层下采样 stride 由 2 改为 1。对 256×128 输入,ResNet50 输出特征图由 8×4 增至 16×8,仅增加极少计算量,却带来显著性能提升。
3.5 BNNeck
多数工作联合 ID 损失与三元组损失训练。如图 5(a),两损失同时约束同一特征 f,但目标不一致:ID 损失在余弦空间分离不同 ID,三元组损失在欧氏空间拉近同类、推远异类。同步优化同一向量会导致两损失相互干扰。
为此,我们设计 BNNeck(图 5(b)):在特征与分类 FC 之间插入一个 BN 层,得到归一化特征 fif_ifi;训练阶段,用$f_i $计算 ID 损失,用 fif_ifi前的特征 ftf_tft计算三元组损失。
归一化使各维度分布接近超球面,ID 损失更易收敛;同时削弱 ID 损失对$f_t $的约束,使三元组损失也更易收敛。此外,我们移除 FC 的偏置项,让分类超平面通过坐标原点。推理阶段仅用 fif_ifi 并采用余弦距离,可进一步提升性能。
3.6 中心损失
三元组损失只关注相对距离 dp−dnd_p−d_ndp−dn,忽略绝对数值,难以保证全局dp<dnd_p<d_ndp<dn。中心损失 [20] 为每类学习一个中心 cyc_ycy,最小化特征到类中心的欧氏距离:
LC=1/2∑∗j=1B‖f∗tj−cyj‖22L_C=1/2 ∑*{j=1}^B ‖f*{t_j}−c_{y_j}‖₂²LC=1/2∑∗j=1B‖f∗tj−cyj‖22
从而增强类内紧凑性。总损失为:
$L = L_ID + L_{Triplet} + β L_C $, 本文 β=0.0005。
4 实验结果
本节在 Market-1501 与 DukeMTMC-reID 两个主流数据集上评估各技巧带来的性能提升,采用 Rank-1 准确率与 mAP 作为评价指标。我们依次将技巧叠加到第 2 节的标准基线,其余训练配置保持不变;并通过跨域实验验证技巧的泛化性,避免过拟合误导。
4.1 各技巧在同域上的影响
| 模型 | Market-1501 | DukeMTMC-reID | ||
|---|---|---|---|---|
| r=1 | mAP | r=1 | mAP | |
| Baseline-S | 87.7 | 74.0 | 79.7 | 63.7 |
| +warmup | 88.7 | 75.2 | 80.6 | 65.1 |
| +REA | 91.3 | 79.3 | 81.5 | 68.3 |
| +LS | 91.4 | 80.3 | 82.4 | 69.3 |
| +stride=1 | 92.0 | 81.7 | 82.6 | 70.6 |
| +BNNeck | 94.1 | 85.7 | 86.2 | 75.9 |
| +center loss | 94.5 | 85.9 | 86.4 | 76.4 |
标准基线已接近多数文献报告的水平;依次加入热身、随机擦除、标签平滑、stride-1、BNNeck 与中心损失后,最终仅增加一个 BN 层、未增加训练时间,即在 Market-1501 上取得 94.5 % Rank-1 与 85.9 % mAP,在 DukeMTMC-reID 上达到 86.4 % Rank-1 与 76.4 % mAP,相对标准基线 mAP 提升超 10 个百分点。
4.2 BNNeck 分析
表 2 对比了是否使用 BNNeck、以及选用 f_t 或 f_i 时,欧氏距离与余弦距离的检索性能(均未加中心损失)。
| 特征 | 距离 | Market-1501 | DukeMTMC-reID | ||
|---|---|---|---|---|---|
| r=1 | mAP | r=1 | mAP | ||
| f (无 BNNeck) | 欧氏 | 92.0 | 81.7 | 82.6 | 70.6 |
| ftf_tft | 欧氏 | 94.2 | 85.5 | 85.7 | 74.4 |
| ftf_tft | 余弦 | 94.2 | 85.7 | 85.5 | 74.6 |
| fif_ifi | 欧氏 | 93.8 | 83.7 | 86.6 | 73.0 |
| fif_ifi | 余弦 | 94.1 | 85.7 | 86.2 | 75.9 |
可见,对归一化后的 f_i 采用余弦距离效果最佳;BNNeck 显著提升模型性能,故推理阶段默认使用 f_i + 余弦距离。
4.3 各技巧在跨域上的影响
表 3 给出跨域测试结果(M→D:Market-1501 训练,Duke 测试;D→M 反之)。总体来看,热身、标签平滑与 BNNeck 对跨域性能提升明显;stride-1 与中心损失影响有限;REA 反而损害跨域表现——去掉 REA 后,跨域 Rank-1 由 21.5 %→41.4 %(M→D)、32.5 %→54.3 %(D→M)。我们推测 REA 让模型过度拟合训练域的“遮挡”模式,导致测试域性能下降。
4.4 与最先进方法对比
表 4 将我们的强基线与各类最先进方法对比。Pyramid[22] 拼接 21 条局部特征取得最高指标,但若仅使用全局特征,其 Market-1501 结果为 92.8 % Rank-1 / 82.1 % mAP;我们的单全局特征基线达到 94.5 % / 85.9 % mAP,优于同样只使用全局特征的 AWTL[12] 逾 10 个百分点。再辅以 k-reciprocal 重排序,指标进一步提升至 94.1 % mAP(Market-1501)与 89.1 % mAP(DukeMTMC-reID)。据我们所知,这是仅依赖全局特征所能取得的最好成绩。
5 补充实验
我们注意到,已有工作在不同批次大小(batch size)或输入图像尺寸下训练模型。为排除这些因素对结果的干扰,本节系统评估它们对性能的影响。
5.1 批次大小的影响
三元组损失的 mini-batch 构成 B = P × K,其中 P 为身份数,K 为每身份采样图像数。单 GPU 显存限制下,batch 最多 128 张,因此无法测试 P=32 & K=6/8 等更大组合。为清晰观察 batch 与三元组损失的关系,我们去掉了中心损失。结果见表 5。
| P×K | Market-1501 | DukeMTMC-reID | ||
|---|---|---|---|---|
| r=1 | mAP | r=1 | mAP | |
| 8×3 | 92.6 | 79.2 | 84.4 | 68.1 |
| 8×4 | 92.9 | 80.0 | 84.7 | 69.4 |
| 8×6 | 93.5 | 81.6 | 85.1 | 70.7 |
| 8×8 | 93.9 | 82.0 | 85.8 | 71.5 |
| 16×3 | 93.8 | 83.1 | 86.8 | 72.1 |
| 16×4 | 94.0 | 83.7 | 86.6 | 73.0 |
| 16×6 | 94.0 | 82.8 | 85.1 | 69.9 |
| 16×8 | 93.1 | 81.6 | 86.7 | 72.1 |
| 32×3 | 94.5 | 84.1 | 86.0 | 71.4 |
| 32×4 | 93.2 | 82.8 | 86.5 | 73.1 |
总体趋势显示,适当增大 batch(尤其增大 P 或 K)可带来轻微提升:大 K 有助于挖掘困难正样本,大 P 有助于挖掘困难负样本;但超过一定规模后收益饱和,甚至因 GPU 显存限制导致梯度不稳定而下降。
5.2 图像尺寸的影响
在去掉中心损失、固定 P=16 & K=4 的条件下,我们测试了四种输入分辨率,结果见表 6。
| 图像尺寸 | Market-1501 | DukeMTMC-reID | ||
|---|---|---|---|---|
| r=1 | mAP | r=1 | mAP | |
| 256×128 | 93.8 | 83.7 | 86.6 | 73.0 |
| 224×224 | 94.2 | 83.3 | 86.1 | 72.2 |
| 384×128 | 86.4 | 73.2 | 87.1 | 72.9 |
| 384×192 | 86.4 | 73.2 | 87.1 | 72.9 |
四种分辨率性能相近,差距在 1 个百分点以内。由此可见,在常用范围内,输入图像尺寸对 ReID 模型性能并非关键因子;权衡计算量与显存占用,256×128 仍是性价比较高的选择
6 结论与展望
本文系统梳理了行人重识别领域一系列行之有效的训练技巧,并构建了一个简单却性能强劲的基线。通过在相同域与跨域任务上的大量消融实验,我们验证了每种技巧对模型性能的具体贡献。最终,仅依靠全局特征,我们的强基线在 Market-1501 上达到 94.5 % Rank-1 准确率与 85.9 % mAP,在 DukeMTMC-reID 上达到 86.4 % Rank-1 与 76.4 % mAP。我们希望该工作能为学术界与工业界的 ReID 研究提供可靠起点。
然而,本文目的并非“无脑”刷高分数。相较于人脸识别,行人重识别仍有巨大探索空间。我们认为,训练技巧能够加速研究迭代,但远未穷尽。欢迎同行分享更多实用技巧,我们将基于该强基线持续评估并开源结果。
未来工作将从以下方向展开:
- 深入解析技巧机理,例如将 BNNeck 中的 BN 替换为 L2 归一化后的性能变化;
- 验证 PCB、MGN、AlignedReID 等最新架构是否能在我们的强基线上进一步获益;
- 通过更多可视化分析,帮助社区直观理解不同技巧对特征分布的影响。
我们期待与广大研究者共同推动行人重识别技术向前发展。
一句话核心
系统评估并组合已有“训练技巧”,在仅使用全局特征的条件下把行人重识别基线推到新高度。
研究动机
现有文献多把性能提升包装成“结构创新”,却忽视背后起决定作用的训练细节;行业也需要简单高效、不拼接局部特征的实用模型。厘清“技巧”的真实贡献,可为学术评审与工业落地提供公平基准和可直接复用的强力基线。
技术路线
以标准 ResNet50+Triplet/ID 损失为起点;
逐一加入 6 大技巧(热身学习率、Random Erasing、标签平滑、stride=1、BNNeck、Center Loss)做消融;
在同域与跨域双数据集量化增益;
补充 batch size 与图像尺度的敏感性实验。
关键发现
BNNeck 单独带来最大跃升(Market-1501 mAP +4.0%,Duke +5.3%)。
全局特征即可达到 94.5 % Rank-1 / 85.9 % mAP,超越多数多分支方法。
Random Erasing 在同域有效,跨域反而有害(Rank-1 从 41.4 % 降到 21.5 %)。
创新贡献
首次系统梳理并量化 6 项训练技巧在 ReID 中的独立与联合贡献;
提出 BNNeck 结构,用 BN 解耦 ID 与 Triplet 损失的不同几何约束,推理仅取归一化特征;
提供不依赖局部特征、不增加推理耗时的“强基线”,成为后续研究公平比较的参照。
局限性
实验仅覆盖two-stream损失与两个数据集,技巧在其他损失函数或更大规模数据上的普适性未验证;
对技巧的理论解释(为何 BNNeck 有效、为何 REA 跨域失效)仍偏经验;
未探讨技巧与不同主干网络、Transformer 结构的兼容性。
论证严谨性
消融实验充分、指标完整,同域+跨域双重验证避免过拟合误导;所有超参数与实现细节均开源,可复现。结论与证据一致,推理严谨。
与已有研究关系
补充并“纠偏”了现有工作:把被忽视的“暗技巧”显性化,为后续结构创新论文提供更高起点,同时警示评审需考虑技巧因素。
969

被折叠的 条评论
为什么被折叠?



