Re:从零开始的行人重识别(四)

度量学习之三元组损失

Schroff F, Kalenichenko D, Philbin J. Facenet: A unified embedding for face recognition and clustering[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2015: 815-823.

这篇论文虽然是是用在人脸识别上的,但是行人重识别中的一个影响力十分大损失函数——triplet loss就是在这篇论文中提出的,之前用到的对比损失(contrastive loss)能够起到缩小类内距离,增大类间距离的作用,从而通过距离判断两类相似与否。但是contrastive loss有一个痛点,就是我们无法约束类间距离和类内距离的大小,虽然缩小了类内距离,也扩大了类间距离,但是类内距离仍然可能比类间距离大,这就是contrastive loss的局限性。由此作者想到增加一个类内距离比类间距离小的约束,于是三元组诞生了,如下图所示:

Triplet Loss

Re:从零开始的行人重识别(三)

度量学习之对比损失

Hadsell R, Chopra S, LeCun Y. Dimensionality reduction by learning an invariant mapping[C]//2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR’06). IEEE, 2006, 2: 1735-1742.

这篇论文早在2006年就被提出来,其中最重要的核心思想就是减小类内距离,扩大类间距离。因此作者提出一个对比损失(contrastive loss)函数:
$$
L(W,Y,\vec{X_1},\vec{X_2})=(1-Y)\frac{1}{2}{(D_W)}^2+(Y)\frac{1}{2}{(\max{0,m-D_W})}^2
$$
其中,
$$
D_{W}(\vec{X_1},\vec{X_2})={\left|G_W(\vec{X_1})-G_W(\vec{X_2})\right|}_2
$$

Re:从零开始的行人重识别(二)

用分类来学习行人特征

Geng M, Wang Y, Xiang T, et al. Deep transfer learning for person re-identification[J]. arXiv preprint arXiv:1611.05244, 2016.

该论文的提出的模型是使用的ImageNet上训练好的模型进行初始化,然后对特征采用了两个子网络进行训练,一个是分类子网络,一个是验证子网络。分类子网络的输入是一张一张的图像,采用的损失函数是cross-entropy loss,这样使得类间特征的距离扩大。验证子网络的输入是成对的图像,值得注意的是这里采用的损失函数不是contrastive loss而是与之前一样的cross-entropy loss,参考作者给出的原因是他们发现用contrastive loss反而模型性能会变差,具体操作是将成对的图像特征相减,然后当做是二分类模型,输出相似或者不相似,这样能使类内特征的距离减小。

Re:从零开始的行人重识别(一)

绪言

马上研二要开题了,提前通过blog的方式先把研究思路理清楚,也算是重新温习一下学习过程中遇到的问题吧,希望能给自己带来一些新的思路,同时帮助一些刚刚接触reID的同学入门(虽然应该没什么人会看),如有勘误可以提出来,我会及时改正的。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×