DarkRank:Accelerating Deep Metric Learning via Cross Sample Similarities论文初读
目录
摘要
引言
相关工作
深度度量学习
知识迁移
背景
本文的方法
出发点
公式
实验
结论
摘要
针对模型压缩与加速的任务而言,在本研究中引入了一种新的交叉样本相似性知识;这些知识可通过从深度度量模型中提取获得。
为了实现迁移学习,本文引入了'learning to rank'技术,并将其整合到深度度量学习框架中
针对一系列度量学习任务(pedestrian re-identification, image retrieval and image clustering)进行了评估该方法
和存在的方法有互补的作用
引言
传统的知识蒸馏方法主要关注于单个实例级别的知识提取与应用,在本研究中我们进一步将实例间的关联也作为一个独立的学习目标纳入考虑范畴;这些提取的知识不仅能够嵌入到教师网络的嵌入空间(基于个人理解即模型分布)中,并且能够有效捕获数据潜在的分布特性
实例间的关系信息与度量学习的目标一致于基于相似实例的监督信息

如图1右上角所示,在经历了关系学习之后(student network能够更好地识别实例之间的关系)
总结:
在深度学习框架中提出了一种新型知识迁移机制--基于交叉样本相似性的知识引导方法。
该研究通过构建教师学生网络体系结构,在任务学习过程中实现了对 teacher-student 关系的创新性建模。
系统性地评估该方法在多种度量学习任务中的表现后发现,在所有测试场景下 student 网络的性能均显著提升(从原来的 75% 提升至 90% 以上),并展现出与现有技术方案良好的协同作用。
相关工作
深度度量学习
传统度量学习方法专注于在欧式空间或者高维核空间中学习马氏距离
深度学习中的度量方法通常利用DNN将输入数据转换为特征表示。随后,在欧氏空间中对样本的特征进行直接对比。
度量学习方法的要以在于分离类间向量,减少类内的方差
这些分类损失函数及其变体能够有效提取出具有抗干扰性的特征,并且能够在不同类别之间建立良好的区分能力。然而,在面对未被包含在训练数据中的新实例时,并不能保证模型表现优异。其主要缺陷在于缺乏明确的目标度量来指导模型优化方向。此外还存在另一个主要缺陷:这种方法倾向于将所有具有相同标签的样本都映射至分布空间中的同一区域,并且这种做法会导致同一类别内部存在的多样性和变化性被忽视。
对比损失直接包含了样本间的相似性监督与非相似性监督;他的缺点是他会强制地将目标样本与负样本分隔开预定的距离;显得过于严格的是因为有些图片虽然属于不同类别但看起来却十分相似。
Triplet loss及其相关方法通过强制施加距离优先级在三元组上有效地解决了这一挑战。这种损失机制本质上反映了所需的检索结果:正样本与锚点之间的距离应小于负样本与锚点之间的距离。然而,要获得理想的效果需通过精细的采样策略和科学的设计来优化训练过程。
center loss通过同时获取每个类别的中心来减少类内的变化
除了loss的设计,还有用数据流行走位先验来引入度量空间的平滑性
知识迁移
KD,soften targets包含样本更多的类间分布信息
FitNets, Attention Transfer, Neuron Selectivity Transfer研究中间层的监督
其他人采用Sobolev训练方法,并通过teacher网络进行知识迁移。
本文针对深度度量学习问题提出了一种新颖的视角用于研究样本之间的相似关系,并以此为基础来提升学生模型的性能。
Learning to Rank
Ranking model指的是基于查询及其相关样本,并按照与查询的相关程度对这些样本进行排序。
根据嵌入样本,可以将LTR分为三类:pointwise, pairwise and listwise
pointwise方法直接优化查询和每个候选样本间的相似分数
pairwise方法比较两个候选样本的相对相似性(Ranking SVM , Lambda Rank )
listwise或者专注于提升排序指标(SVM MAP),或者增强对真实顺序的概率建模能力(ListNet, ListMLE)
本研究在深度度量学习领域中首次将listwise ranking loss与软相似度计算相结合,并将其有效迁移至student网络模型中。
背景
ListNet and ListMLE的回顾:
这些方法的主要依据是基于候选样本与查询间的相似度,并对每个排序排列分配一个概率值



ListNet深入解析(不看懂就无法理解后续的内容)
与传统的ListMLE相似,在损失函数的设计上有所创新,在具体实现上也更加注重...
本文的方法
出发点
如图1右上方所示,在完成样本关系学习之后(student网络)更加精准地反映了各类实例之间的相互关联。例如与数字6更为相似的数值0被安置在位置3、4、5之前的位置上;相比之下仅采用硬标签方法则会忽视这些潜在的信息;然而这些潜在的信息却为模型提升泛化能力提供了重要支撑
公式

(4)式表示相似度计算公式,在此式中,q代表 mini-batch内的一个样本特征,x代表其余样本特征中的一个
alpha被设计为归一化参数,在研究结果表明,在单位超球面上的数据会导致特征表示能力的减弱。
beta是为了增大距离间的差距

(5)式是损失函数的两种设计方法
基于ListNet框架设计的Lsoft系统综合了所有可能的排列情况,并以KL散度作为损失函数进行优化。尽管考虑到排列数量较多,在实际应用中仍面临着较高的计算复杂度问题。然而,在这种情况下该方法依然能够充分地利用更多的信息资源以提升性能表现。
基于ListMLE的思想发展而来第二种Lhard,并且是以最大似然原理为基础构建的模型,在计算复杂度方面相对较低。

(6)式为某一个排列对Si(query和某一个后选样本i的相似度)的导数
整体损失函数包括marginal Softmax损失、验证损失、三元损失以及DarkRank损失。
实验


其中Direct Match的具体而言,则是非基于类似ListNet或ListMLE的方法,并且直接采用(8)式的策略以使模型能够获得教师所包含的样本相似性这一特征。(8)这一定义的核心在于引导学生网络去学习教师提供的样本与查询样本之间的距离信息。
根据实验结果可以看出, Direct Match的方法基本上与student网络差别不大,原因尚不清楚
在效果上相比DarkRank而言,KD表现更为出色,然而DarkRank并非孤立存在,它与KD之间能够实现协同作用,从而展现出超越单一性能的优势
在另一个数据集上是类似的效果
其他的不重要,这里不展示了
结论
为知识蒸馏提供了一种新的知识--样本间的相似度、
将ListNet和ListMLE应用到知识蒸馏
基于DarkRank loss这种inter-instance的信息与KD这种intra-instance的信息整合后,则能够取得更高的效果。
