论文解读:Self-training with progressive augmentation for unsupervised person re-ID(PAST)

引言

通过深度学习和大量带标签的训练数据,行人再识别(Re-ID)取得了很大的进步。然而,将在标记数据的源域中训练的模型调整为仅可用未标记数据的目标域仍然是一项艰巨的任务。在这项工作中,我们开发了一种具有渐进增强框架(PAST)的自训练方法,以在目标数据集上逐步提升模型性能。特别地,我们的PAST框架包括两个阶段,即保留阶段和提升阶段。保留阶段使用基于三元组的损失函数捕获目标域数据点的局部结构,从而改进了特征表示。提升阶段通过在模型的最后一层附加一个可变的分类层来连续优化网络,从而可以使用有关数据分布的全局信息。重要的是,我们提出了一种新的自我训练策略,该策略通过交替采用保守阶段和晋升阶段来逐步增强模型能力。此外,为了提高所选三元组样本的可靠性,我们在保守阶段引入了基于排名的三元组损失,这是一种基于数据对之间相似度的无标签目标函数。

方法

本文的框架结构

首先是在源域上进行有监督训练,将训练得到的模型在目标域数据集上提取图像特征,这样就能获得一个相似性矩阵;然后将相似性矩阵和HDBSCAN等聚类方法相结合生成一个可靠的训练数据集,其中是整个训练集的子集,结合两个基于三元组的损失函数(即基于聚类的三元组损失(CTL)和基于排名的三元组损失(RTL)),可以捕获当前更新的训练集的局部结构以进行模型优化。之后,我们再用训练出的新模型来提取特征和生成新的训练集。接着在提升阶段,可以用保留阶段的特征通过softmax交叉熵来进一步提升网络。在这一阶段,考虑训练集的全局分布以改善特征表示的判别。 最后,通过在保留阶段和提升阶段交替训练网络,逐步提高了模型泛化的能力。

保留阶段

在开始阶段,通过当前模型来提取整个数据集特征,并通过互k编码(k-reciprocal encodin)来得到Jaccard距离矩阵。

表示二者的Jaccard距离。因此,我们可以得到一个相似性矩阵

HDBSCAN聚类方法则可以通过图像之间的相似度,即二者的Jaccard距离来进行聚类,将整个数据集划分为不同的类别,也就可以认为是一个伪标签,这样就可以赋予样本一个伪标签来进行训练,这里用到了两个triplet loss函数即基于聚类的三元组损失(CTL)和基于排名的三元组损失(RTL)。

基于聚类的三元组损失(CTL)就是在P个聚类中选取K个样本来进行训练,从中选出一个难正样本和一个难负样本计算triplet loss。

基于排名的三元组损失(RTL)则是根据相似性矩阵,在目标图片的前个图像中随机选择一个作为正样本,在中选择一个作为负样本,再计算triplet loss。除此之外,不同于CTL采用一个固定的margin值,RTL采用了一个与正负样本位置相关的soft margin。

其中m为一个固定值,

代表了正样本和负样本的位置。

保留阶段的最终损失值可以表示为:

提升阶段

为了防止在使用triplet loss时模型容易陷入局部最优的情况,提升阶段则是在网络结构的最后加上一个全连接层来作为分类层,根据伪标签用softmax来作为损失函数:

由于聚类结果会导致样本的类别不断发生变化,因此需要对分类层不断初始化,在本文中采用每个类别的平均值来对其初始化。

迭代训练

学习过程应该逐步提高泛化模型的能力,从而避免模型陷入局部最优状态。在本文中,我们精心设计了一个简单而有效的自我训练策略,该策略可以捕获训练图像的局部结构和全局信息。即,保留阶段和提升阶段是交替进行的。在开始时,仅使用数据点之间的局部关系来训练模型,从而可以避免因softmax损失而导致的放大错误情况。经过保留阶段几次训练之后,模型表示能力和聚类质量有了一定的提高。然后在提升阶段使用Softmax交叉熵损失进一步增强模型,并将更新的模型交替用作保留阶段的初始状态。随着训练的进行,模型泛化能力得到了改善,从而可以学习训练图像的更多区分特征表示。 Algorithm 1中包含了这两个阶段的交替自我训练的详细信息。我们还列出了这种交替自我训练过程的一个直观示例,如图3所示。

实验

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值