您的位置:首页 > 其它

【论文笔记】Margin Sample Mining Loss: A Deep Learning Based Method for Person Re-identification

2017-11-07 14:12 1201 查看

摘要

Person re-identification (ReID) is an important task in computer vision. Recently, deep learning with a metric learning loss has become a common framework for ReID. In this paper, we propose a new metric learning loss with hard sample mining called margin smaple mining loss (MSML) which can achieve better accuracy compared with other metric learning losses, such as triplet loss. In experiments, our proposed methods outperforms most of the state-ofthe-art algorithms on Market1501, MARS, CUHK03 and CUHK-SYSU.

行人重识别是一个计算机视觉领域非常重要的一个任务。基于度量学习方法的深度学习技术如今成为了ReID的主流方法。在本论文中,我们提出了一种新的引入难样本采样的度量学习方法,这种方法叫做MSML。实验表明,我们提出的方法击败了目前大多数的方法,在Market1501,MARS,CUHK03和CUHK-SYSU数据集上取得了state-of-the-arts的结果。

方法

Triplet loss是一种非常常用的度量学习方法,而Quadruplet loss和TriHard loss是它的两个改进版本。Quadruplet loss相对于Triplet loss考虑了正负样本对之间的绝对距离,而TriHard loss则是引入了hard sample mining的思想,MSML则吸收了这两个优点。

度量学习的目标是学习一个函数g(x):RF→RD,使得RF 空间上语义相似度反映在RD空间的距离上。

通常我们需要定义一个距离度量函数D(x,y):RD×RD→R来表示嵌入空间(Embedding space)的距离,而这个距离也用来重识别行人图片。

在国内外研究现状里面介绍的三元组损失、四元组损失和TriHard损失都是典型度量学习方法。给定一个三元组{a,p,n},三元组损失表示为:

Lt=(da,p−da,n+α)+

三元组损失只考虑了正负样本对之间的相对距离。为了引入正负样本对之间的绝对距离,四元组损失加入一张负样本组成了四元组{a,p,n1,n2},而四元组损失也定义为:

Lq=(da,p−da,n1+α)++(da,p−dn1,n2+β)+

假如我们忽视参数α和β的影响,我们可以用一种更加通用的形式表示四元组损失:

Lq′=(da,p−dm,n+α)+

其中m和n是一对负样本对,m和a既可以是一对正样本对也可以是一对负样本对。但是直接使用Lq′并不能取得很好的结果,因为随着数据量的上升,可能四元组组合数量急剧上升。绝大部分样本对都是比较简单的,这限制了模型的性能。为了解决这个问题,我们采用了TriHard损失使用的难样本采样思想。TriHard损失是在一个batch里面计算三元组损失对于batch中的每一张图片a,我们可以挑选一个最难的正样本和一个最难的负样本和a组成一个三元组。我们定义和a为相同ID的图片集为A,剩下不同ID的图片图片集为B,则TriHard损失表示为:

Lth=1P×K∑a∈batch(maxp∈Ada,p−minn∈Bda,n+α)+

而TriHard损失同样只考虑了正负样本对之间的相对距离,而没有考虑它们之间的绝对距离。于是我们把这种难样本采样的思想引入到Lq′,可以得到:

Lmsml=(maxa,pda,p−minm,ndm,n+α)+

其中a,p,m,n均是batch中的图片,a,p是batch中最不像的正样本对,m,n是batch 中最像的负样本对,a,m皆可以是正样本对也可以是负样本对概括而言TriHard损失是针对batch中的每一张图片都挑选了一个三元组,而MSML损失只挑选出最难的一个正样本对和最难的一个负样本对计算损失。所以MSML是比TriHard更难的一种难样本采样,此外maxa,pda,p可以看作是正样本对距离的上界,minm,ndm,n可以看作是负样本对的下界。MSML是为了把正负样本对的边界给推开,因此命名为边界样本挖掘损失。MSML只用了两对样本对计算损失,看上去浪费了很多训练数据。但是这两对样本对是根据整个batch的结果挑选出来了,所以batch中的其他图片也间接影响了最终的损失。并且随着训练周期的增加,几乎所有的数据都会参与损失的计算。总的概括,MSML是同时兼顾相对距离和绝对距离并引入了难样本采样思想的度量学习方法。



如果用一张图概括这几个loss之间的关系的话,可以表示为下图。



结果

论文里在Market1501,MARS,CUHK03和CUHK-SYSU数据集都进行了对比实验,为了减少实验数量,并没有在每个数据集上都做一次实验,而是用所有数据集的训练集训练一个模型。为了增加结果的可信度,使用了Resnet50、inception-v2、Resnet-Xecption三个在ImageNet上pre-trained的网络作为base model,和classification、Triplet loss、Quadruplet loss、TriHard loss四个损失函数进行了对比。结果如下表,可以看出MSML的结果还是很不错的。



简评

MSML是一种新的度量学习方法,吸收了目前已有的一些度量学习方法的优点,能过进一步提升模型的泛化能力。本文在行人重识别问题上发表了这个损失函数,但是这是一个在图像检索领域可以通用的度量学习方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  深度学习
相关文章推荐