Deep Metric Learning via Lifted Structured Feature Embedding

Deep Metric Learning via Lifted Structured Feature Embedding(PDF)


Author:Hyun Oh Song, Yu Xiang, Stefanie Jegelka, Silvio Savarese CVPR2016 (Citations:1066)

核心思想:

       较早提出的基于对的损失函数对于样本的利用率太低,例如说在contrastive loss中,一个mini-batch size为n的样本集只能形成n/2个样本对。那么本文主要解决的就是样本利用率过低的缺点,将所有样本之间两两配对,使样本对的数量提升为(n*(n-1)/2)。

问题引入:

       最近,含有大量类别数量的极端分类问题最近在学术界引起了广泛的关注。在极端分类问题中,学习和推理复杂度与类别的数量不再成线性关系,其次,每个类别中的可用样本数据非常少。然而,现有的方法途径在网络的小批量随机梯度下降训练过程中不能完全利用所有的训练样本。

解决方案:

提升结构化特征嵌入:

       在本文中,基于训练集中所有的正负样本对提出了结构化损失函数:

图1 结构化损失函数

其中,\hat{P} 是正样本对,\hat{N} 是负样本对,\alpha 是margin。该函数会遍历所有的正样本对(i,j),然后找到距离正样本对最近的一个负样本(相当于搜索最小的D_{i,k} D_{j,l} 即最难的负样本),如果该负样本到正样本的距离大于margin+正样本对的距离,则损失为0,其余情况下则产生损失。

图2 三种嵌入方式的样本对生成过程

       该函数有两个计算上的挑战:一是该函数由于含有max函数,因此非平滑;二是函数的估计和其子梯度的计算需要对所有的样本对进行多次最小化。为了解决上述两个问题,首先,我们对函数的平滑上边界进行优化,其次,采用随机方法进行处理。

       给定一个批量为m的c维嵌入特征X,其中X的每一个列向量为每个样本特征的平方归一化,我们就能通过该特征向量构建稠密对平方距离矩阵,该矩阵中的任意元素D_{i,j} 即为x_{i} x_{j} 的嵌入特征向量之间的平方L2范数。

图3  batch内各元素的二次方范数列向量
图4 稠密对平方距离矩阵

       那么在本文中,随机采样并不是完全随机的而是集成了重要性采样的元素。我们首先随机选择一些正样本对,然后灵活的添加它们的具有难度系数的近邻到训练批量中。那正如我们前面所提到的,嵌套max函数可能会导致网络嵌入局部最优解,因此我们将max函数替换为光滑上界

图5 难例挖掘过程

       那正如我们前面所提到的,嵌套max函数可能会导致网络嵌入局部最优解,因此我们将max函数替换为光滑上界:

图6 含光滑上界的损失函数
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容