阅读笔记-SVDNet for pedestrian retrieval

image.png

来源: ICCV2017, Liang Zheng大神


这篇文章还是蛮好理解的,就按自己理解思路来介绍吧。

Motivation

这篇文章是17年的文章,当时的背景:基于深度的reid方法一般还是三部分组成:1)训练集先训练一个分类器;2)从分类器前一层的FC层抽取图像特征;3)通过欧氏距离或者cosine距离进行相似度计算以排序。

在这个背景下,由于分类样本本身的不均衡性,作者就发现抽取特征的FC层上不同神经元对应的权重会有很大的相似性。(理解一下:FC层的操作是 , 那么在使用特征进行相似度计算时没有激活函数,相当于输入特征在W上的投影,所以我们希望作为投影轴W应该尽可能地独立。)以文章中的图1为例阐述一下:

image.png

图中左侧对应三个id的不同sample,而对应这三个id的神经元的w向量可能如右下角所示。(红色和粉色比较相近),那么对于测试集中的两个新出现的id4和id5分别对应绿色和黑色的矢量,这两个矢量在三个投影轴上的投影分量如右下图所示,可以发现在w3分量上区分性较大,但在w1和w2分量的区分性较小。只考虑这个3维向量的话,如右上图所示的描述子。那么欧氏距离可以计算为 ,显然降低了样本之间的可区分度。

所以SVDNet的motivation就是希望最后获得特征层的投影向量尽可能地正交。


Method

具体实现是将分类网络的倒数第二层替换成所谓的Eigenlayer(特征向量层,的特征向量),如下图所示:


lastlayer其实是分类网络最后输出 类的全连接层。EigenLayer没有bias也没有ReLU操作,bias会削弱正交性。这两个操作最终降低了reid的性能。所以EigenLayer说白了就是一个先行投影层,只是对投影向量有正交约束。

值得一提的是,作者在测试时,发现EigenLayer的输入特征和输出特征能够获得相似的reid性能。作者认为输入特征的性能提升来自于EigenLayer中正交约束的反向传递。(个人认为此处没有阐述清楚原理。)

EigenLayer的具体实现:

为了保留W的正交性,对原始训练得到的W矩阵进行了奇异值分解,将原始的W替换成,显然这时候每个投影向量的相互正交的。

为什么要选择, 而非或者呢?这个主要是从特征的欧氏距离公式来确定的。
\begin{aligned} D_{ij} =& ||f_i-f_j||_2 \\ =& \sqrt{(f_i-f_j)^T(f_i-f_j)}\\ =& \sqrt{(f_i^0-f_j^0)^TWW^T(f_i^0-f_j^0)}\\ =& \sqrt{(f_i^0-f_j^0)^TUSV^TVSU^T(f_i^0-f_j^0)} \\ =& \sqrt{(f_i^0-f_j^0)^TUSSU^T(f_i^0-f_j^0)} \\ =& \sqrt{(f_i^0-f_j^0)^TUSSU^T(f_i^0-f_j^0)} \\ =& \Vert SU^T(f_i^0-f_j^0) \Vert_2 \end{aligned}
即此时, 作者实验对比了多种正交基的方式,发现只有能够保持reid性能不变(必然的,如下表,作者是将训练好的分类网络的特征抽取层权重分别用不同的正交基替代,评估reid性能,此时不再涉及训练的事情,由公式可知只有能保持性能不变,其他的都缺少了投影方向上的幅值,导致距离被拉近了, 分解的上三角阵之利用了对角信息)

image.png

既然已经知道我们的目的是希望利用取代,那么如何实现呢?作者希望能嵌入到训练中, 因为网络训练是一个迭代过程,每一个batch都是用上一次的分解值,显然会造成训练不稳定,所以日出了RRI(Restraint and Relaxation Iteration)的方法,其实就是交替训练。具体算法如下:

image.png

迭代算法何时收敛?作者通过W的格拉姆矩阵(协方差矩阵)定义了一个指标 ,当该指标稳定时算法终止。

显然对角线元素表示投影向量自身的方差,其他元素表示相互之间的协方差,越接近1表示每个投影轴越接近相互正交,且蕴含的信息更丰富。

正交化的过程中性能提升主要来自于哪里?作者发现在每个RR周期内,限定正交进行微调时,性能是上升的,当松开正交约束整体微调时性能稍微下降。但整体多个周期来看性能是上升的。如图5所示。原因在于限定W正交时,reid使用的特征是在正交的基础上提升鉴别性的,松开正交约束时,微调会导致正交性下降,于是reid性能下降(另一方面,发现非正交性确实影响了reid性能,但性能影响并不是特别大)


image.png

实验部分

值得关注的是维度的影响:


image.png

发现对于没有正交化约束的模型来说,随着维度的上升性能先上升后下降了,而具有正交约束的模型,性能会随着维度增加一直上升直至稳定。说明,维度增大可能会增大维度之间的依赖性和相关性(这其实也是dropout要解决的一部分问题)。

总结

对于目前来说的全卷积网络,提取的特征其实直接是通道上的向量,那么为了保证投影轴的正交性,应考虑让获得每个通道的 个卷积核 相互正交。

你可能感兴趣的:(阅读笔记-SVDNet for pedestrian retrieval)