论文:Deep Ranking Model by Large Adaptive Margin Learning for Person Re-identification网络
文章主要提出了一种基于pairwise的,自适应调整margin的损失函数,在此基础上提出了一个多分支的行人重识别的模型。ide
假设$X=\{X_n\}_{n=1}^N$是训练样本,其中$X_n=\{X_A^n,X_B^n\}$表示第$n$个行人的训练样本,$X_n$包含了行人摄像头$A$和$B$下的图片的数据,进一步,$X_A^n=\{x_A^{n,i}\}_{i=1}^{A_n},X_B^n=\{x_B^{n,j}\}_{j=1}^{B_n}$,其中的$x_A^{n,i}$和$x_B^{n,j}$分别是第$i$个行人在$A$和$B$两个摄像头下的第$i$和第$j$张图片。用$D(x_A^{i,k},x_B^{j,s})$表示两张图片特征的欧氏距离的平方。函数
文章中提出的自适应margin的loss包含了两部分,一部分是类似度损失,一部分是正则项,即
$$L=L_S(X,W,b)+\lambda R(W,b)$$spa
在pairwise的损失中,咱们的目的是让正负样本对之间存在一个比较大的间隔,在一个batch中,咱们用$X_A^g$表示摄像头$A$下具备性质$g$的样本的集合,咱们但愿的是同一我的的两张照片$x_A^{i,k}$和$x_B^{i,s}$的差异尽量小,即$D(x_A^{i,k},x_B^{i,s})$最好是能够小于一个自适应的up-margin $M_p$,而对于两个不一样的人$x_A^{i,k}$和$x_B^{j,s}$,两者的距$D(x_A^{i,k},x_B^{j,s})$应该大于一个自适应的down-margin $M_n$
也就是说,咱们的目标是blog
$$ \begin{align*} D(x_A^{i,k},x_B^{j,s})&<M_p(x_A^{i,k},X_B^g),i=j,i\neq g\\ D(x_A^{i,k},x_B^{j,s})&>M_p(x_A^{i,k},X_B^g),i\neq j,i=g \end{align*} $$图片
咱们使用以下的方法来自适应肯定两个marginget
$$ \begin{align*} M_p&=\frac{1}{\mu}(1-\exp({-\mu d)});\\ M_n&=\frac{1}{\gamma}\log{(1+\exp{(-\gamma s)})} \end{align*} $$it
其中的mean positive distance $s$ 和mean negative distance $d$的定义以下io
$$ \begin{align*} s&=\frac{1}{N}\sum_{s=1}^{N}{D(x_A^{i,k}, x_B^{j,s})},\text{if}\quad i=j\\ d&=\frac{1}{N}\sum_{s=1}^{N}{D(x_A^{i,k}, x_B^{j,s})},\text{if}\quad i\neq j \end{align*} $$class
进一步,咱们记$M_p=M_\tau-M_c,M_n=M_\tau+M_c$,则上面的约束条件能够统一写成
$$ M_c-y_{i,j}(M_\tau-D(x_A^{i,k}-x_B^{j,s}))<0 $$
这里$M_\tau>M_c$且
$$ y_{i,j}=\begin{cases} 1, \text{if}\quad i=j\\ -1,\text{else} \end{cases} $$
因此$L_S$能够写成
$$ L_S=\sum_{i,j=1}^{N}\{\max{M_c-y_{i,j}(M_\tau-D(x_A^{i,k},x_B^{j,s})),0\}} $$
正则项部分文章采用的是$L_2$正则
$$R=\sum_{m=1}^{M}{\lVert W^{(m)}\rVert_F^2+\lVert b^{(m)}\rVert_F^2}$$
首先是一个全局特征提取,输入的图片大小是$230\times80\times3$,全局特征提取包括一个$7\times7$的卷积层(卷积核为64个),一个$3\times3$的池化层,而后通过一个relu单元;后面是局部的信息提取,包含了四个分支,每一个分支都由两个$3\times3$的卷积层组成(卷积核个数都是32),第二个卷积层包含一个残差链接,而后经过一个$3\times3$的最大池化(步长为1),最后经过一个relu单元;而后每一个分支接上两个全链接层,一个是局部的全链接层,每一个分支的局部全链接层的神经元个数是100个,另外每一个分支接上一个全局全链接层,神经元个数是400,最后把这些全链接层链接起来成为一个800层的全链接层。
文章提出了两种训练模式,一种是直接将训练集分红positive pair和negative pair,而后喂入神经网络。
一种是随机挑选anchor,每一个anchor随机挑选若干个正样本和负样本组成样本对进行训练