论文题目:Deep Metric Learning by Online Soft Mining and Class-Aware Attention(来源:AAAI2019)
解决的问题:
- 深度量学习由于大部分平凡样本而遭受慢收敛,大多数现有方法通常采用样本挖掘策略来选择非平凡样本以加速收敛并提高性能。以前的挖掘方法为每个样本分配一个二进制分数,即删除或保留它,因此它们只在一个小批中选择相关样本的一个子集。
- 由于离群值通常包含在挖掘的子集中,现有的方法很容易受其影响。
解决方案:
- 提出一种新的样本挖掘方法:在线软挖掘(Online Soft Mining,OSM)。它将一个连续的分数分配给每个样本,以充分利用小批量中的所有样本。OSM学习扩展流形(extended manifolds),通过将重点放在更类似的正例上,保留有用的类内差异。
- 引入类感知注意机制(Class-Aware Attention,CAA),用来分配更少的注意力在异常数据样本上。CAA的作用为:通过图像与标签的语义关系来识别噪声图像,图像 x i \mathbf{x}_i xi的CAA得分表示它与其标签 y i y_i yi在语义上有多大关系
- 结合OSM和CAA,提出一种新的加权对比损失函数(weighted contrastive loss)
方法细节:
-
OSM分为在线正例挖掘(OSPM),在线负例挖掘(OSNM),OSPM、OSNM的分数分别为: s i j + = exp ( − d i j 2 / σ O S M 2 ) s _ { i j } ^ { + } = \exp \left( - d _ { i j } ^ { 2 } / \sigma _ { \mathrm { OSM } } ^ { 2 } \right) sij+=exp(−dij2/σOSM2) s i j − = max ( 0 , α − d i j ) s _ { i j } ^ { - } = \max \left( 0 , \alpha - d _ { i j } \right) sij−=max(0,α−dij) 说明: d i j = ∥ f i − f j ∥ 2 d _ { i j } = \left\| \mathbf { f } _ { i } - \mathbf { f } _ { j } \right\| _ { 2 } dij=∥fi−fj∥2 , σ O S M \sigma _ { \mathrm { OSM } } σOSM为超参数。给定数据集 X = { ( x i , y i ) } X = \left\{ \left( \mathbf { x } _ { i } , y _ { i } \right) \right\} X={(xi,yi)}, x i \mathbf{x}_i xi代表第i个图像, y i y _ { i } yi代表对应的标签,通过学习一个 嵌入函数f 使得相似对的特征(feature)被拉到一起,不同对的特征被推开,嵌入函数f 的输入为 x i \mathbf { x } _ { i } xi,输出为 f i \mathbf { f } _ { i } fi。
-
类感知注意CAA的分数用来评价图像与标签的语义关系,计算公式: a i = exp ( f i ⊤ c y i ) ∑ k = 1 C exp ( f i ⊤ c k ) a _ { i } = \frac { \exp \left( \mathbf { f } _ { i } ^ { \top } \mathbf { c } _ { y _ { i } } \right) } { \sum _ { k = 1 } ^ { C } \exp \left( \mathbf { f } _ { i } ^ { \top } \mathbf { c } _ { k } \right) } ai=∑k=1Cexp(fi⊤ck)exp(fi⊤cyi), c k \mathbf { c } _ { k } ck代表class context vector,是全连接层的训练参数
-
加权对比损失函数(weighted contrastive loss)计算公式:
L W C L ( P ) = 1 2 ∑ ( x i , x j ) ∈ P w i j + d i j 2 ∑ ( x i , x j ) ∈ P w i j + L _ { W C L } ( P ) = \frac { 1 } { 2 } \frac { \sum _ { \left( x _ { i } , x _ { j } \right) \in P } w _ { i j } ^ { + } d _ { i j } ^ { 2 } } { \sum _ { \left( x _ { i } , x _ { j } \right) \in P } w _ { i j } ^ { + } } LWCL(P)=21∑(xi,xj)∈Pwij+∑(xi,xj)∈Pwij+dij2
L W C L ( N ) = 1 2 ∑ ( x i , x j ) ∈ N w i j − max ( 0 , α − d i j ) 2 ∑ ( x i , x j ) ∈ N w i j − L _ { W C L } ( N ) = \frac { 1 } { 2 } \frac { \sum _ { \left( x _ { i } , x _ { j } \right) \in N } w _ { i j } ^ { - } \max \left( 0 , \alpha - d _ { i j } \right) ^ { 2 } } { \sum _ { \left( x _ { i } , x _ { j } \right) \in N } w _ { i j } ^ { - } } LWCL(N)=21∑(xi,xj)∈Nwij−∑(xi,xj)∈Nwij−max(0,α−dij)2
L W C L ( P , N ) = ( 1 − λ ) L W C L ( P ) + λ L W C L ( N ) L _ { W C L } ( P , N ) = ( 1 - \lambda ) L _ { W C L } ( P ) + \lambda L _ { W C L } ( N ) LWCL(P,N)=(1−λ)LWCL(P)+λLWCL(N)
其中,权重 w w w的定义为: w i j + = s i j + ∗ a i j w _ { i j } ^ { + } = s _ { i j } ^ { + } * a _ { i j } wij+=sij+∗aij w i j − = s i j − ∗ a i j w _ { i j } ^ { - } = s _ { i j } ^ { - } * a _ { i j } wij−=sij−∗aij a i j = min ( a i , a j ) a _ { i j }=\min \left( a _ { i } , a _ { j } \right) aij=min(ai,aj)
实验:
实验设置:网络的backbone architecture:GoogleNet with batch normalisation
实验种类:
- 细粒度分类:数据集分识为CUB-200-2011,CARS196,提高了最先进水平1.5%,实验结果:
- 视频中的人物重识别:数据集分别为MARS, LPW 。在MARS数据集上比CAE提高2.3%(CMC-1),4.9%(mAP)
在数据集LPW上,取得最先进水平(CMC)