【深度度量学习系列】MSloss及GPW框架是什么?

2020 年 5 月 15 日 AINLP

一、背景

度量学习(Metric Learning)也叫距离度量学习(Distance Metric Learning),是一种传统的机器学习方法,随着深度学习的兴起,将深度学习结合在度量学习这种传统方法上也逐渐成为一种趋势,即Deep Metric Learning。本文将解读一篇深度度量学习论文,从中可以看到一种通用的样本对加权框架,及一种度量学习损失函数。

论文:Multi-Similarity Loss with General Pair Weighting for Deep Metric Learning
地址:https://arxiv.org/pdf/1904.06627.pdf

该论文的贡献包括三个方面:

  • 建立了一种通用样本对加权框架(GPW),“样本对”是度量学习的训练数据组织形态,因为损失函数要度量“一对”样本间的距离。该框架通过梯度分析将深度度量学习转化为样本对的加权问题,为理解基于样本对的损失函数提供了统一的视角和有力的工具;
  • 通过使用GPW,可以对现有的各种基于样本对的方法进行全面的比较和讨论,并且可以发现明显的差异和关键限制;
  • 在GPW下提出了一种称为多相似损失(MS loss)的新损失函数,该损失是通过两个迭代步骤(即采样和加权)实现的。

二、概念详解

度量学习

度量学习的目的是学习一种低维空间,在这个空间内同类样本相距非常近,异类样本距离比较远。深度度量学习利用卷积网络强大的特征抽取能力,能学习更好的嵌入空间。

基于样本对的深度度量学习

最近的许多深度度量学习方法都是建立在成对样本的基础上的。在形式上,它们的损失函数可以表示为嵌入空间中的两两余弦相似性。我们将这种方法称为基于样本对的深度度量学习。属于该类方法的损失函数包括:contrastive loss;triplet loss;triplet-center loss;binomial deviance loss;histogram loss ;distance weighted margin-based loss等。

已有基于样本对的度量学习的缺陷

对于这些基于样本对的方法,训练样本被构造成成对、三个一组或四个一组,导致训练对的多项式增长,这是高度冗余和信息量较少的。这就给基于样对的方法带来了一个重要问题,即随机抽样的训练可能会被冗余的样本对所淹没,导致收敛速度变慢,模型退化,性能低下。

三、GPW:从归纳到统一

GPW框架

为一实例向量, 为一实例矩阵, 为标签向量,其中m为样本数。通过以 为参数的神经网络 映射到 维空间中,我们定义两个样本的相似度为:,其中 为内积运算,计算得到出的相似度矩阵为
基于配对的损失函数可以表示为 ,计算第t次迭代时对 的导数,求导:
公式(1):

公式(1)为计算神经网络参数 的导数, 我们可以重新构造一个用于计算配对权重的函数
公式(2):

其中 为常量。假设对于负样本对 ,对于正样本对 ,则F可以表示为:
公式(3):

其中 ,为样本对 的权重,公式(3)即是general pair weighting (GPW)。

回顾经典损失函数

为了证明GPW框架的泛化能力,我们来回顾四种典型的基于成对的损失函数用于深度度量学习:

Contrastive loss

公式(4):

其中 表示正样本对, 表示负样本对,我们可以发现对于所有正样本对和 的困难负样本对,权重是一样的。这是我们的配对加权方案的一个简单和特殊的情况,没有考虑任何配对之间的差异。

Triplet loss

公式(5):

其中 分别为负样本对 和正样本对 的相似性。由公式(5)可知,Triplet loss对于所有 的三元组使用相同的权重,而舍弃 的三元组。Triplet loss不同于Contrastive loss,但这两种方法对所有选择的样本对都考虑得一样多,这限制了它们在选择的样本对中识别更多信息的能力。

Lifted Structure Loss

公式(6):

按照公式(3)求导后得出:
公式(7):

公式(8):

公式(7)表明,正对的权重是由其相对相似度决定的,衡量方法是将其与具有相同锚点的剩余正对进行比较。负对的权值的计算类似。

Binomial Deviance Loss

公式(9):

其中 为对于锚 的正样本对个数和负样本对个数, 为固定的超参数。按照公式(3)求导后得出:
公式(10):

可以发现,Binomial Deviance Loss是contrastive loss的平滑版本。在公式(3)中,相似度高的负对被赋予更大的权值,这意味着它的信息量更大,这是通过从不同的类中区分两个相似的样本(形成负对)来实现的。

四、Multi-Similarity Loss(MS Loss)

GPW 还有更重要的实践意义,我们可以在它定义的框架下构建性能更强大的损失函数。

MS Loss 定义的三种相似性

MS Loss 综合考虑了三种相似性,它们能概括目前大多数基于样本对的损失函数。它们可以分为自相似性与相对相似。给样本对加权的核心在于判断局部分布 - 即它们之间的相似性,局部样本之间的分布和相互关系并不是仅仅决定于两个样本之间的距离和相似性,还取决于当前样本对与其周围样本对之间的关系。

因此,对于每一个样本对,我们不仅需要考虑样本对本身的自相似性,同时还要考虑它与其它样本对的相对相似性。其中相对相似性又可以分为正相对相似性 (正样本)、负相对相似性(负样本)两种相似性,它们三者共同构建了MS Loss 的两步迭代策略。

  • 自相似性(余弦相似性):随着负样本接近 anchor,样本对相似性增加;
  • 负相对相似性(Negative relative similarity):随着周围负样本聚集在一起,样本对相似性降低;
  • 正相对相似性(Positive relative similarity):随着周围正样本聚集在一起,样本对相似性降低。

下图展示了上面三种相似性的直观变化,我们希望计算实线样本对间的相似性:

图中 case 1 的相似性是增加的,case 2 和 case 3 的相似性都将降低。因为 case 1 中的自相似性很明显没有考虑与周围样本的关系,所以作者引入了后面两种相对相似性。

在 case 2 中,即使 anchor 与负样本的自相似性不变,但我们还需要考虑负样本的近邻。如果负样本间的自相似性增加,那么它与 anchor 间的相对相似就自然降低。case 3 也是同样的道理,正样本间的自相似要是增加了,那么 anchor 与负样本的相对相似性就要降低。

如下表所示,基于样本对的各种损失函数都可以归类到这三种相似性,目前只有该论文提出的 MS Loss 能同时考虑三种相似性。

其他损失函数之所以没能全部考虑三种相似性,是因为它们并没有特意关注这一本质区别,很多损失函数都是从直觉的角度设计的,因此只考虑到其中一种相似性度量,能考虑到两种的情况都很少。

MS Loss的迭代过程

如下图所示,MS Loss 通过采样和加权两次迭代,实现更加高效的样本训练。它通过定义自相似性和相对相似性,在训练过程中更加全面地考虑了局部样本分布,从而能更高效精确的对重要样本对进行采用和加权。这里重要样本对通常是含有更大的信息量的样本对。

在 MS Loss 的第一阶段采样中,它会通过某种相似性判断哪些样本对学习嵌入空间更重要。例如上图连着黑线的蓝色、红色样本点,它们就比同色的其它样本点重要,信息量更大,因为黄色样本点要是想与这两种样本分离,那就需要把这两个样本推开。

第二阶段的加权则是在采样的基础上进行的,第一阶段采样的样本有正样本(黄色)也有负样本(红色、蓝色),我们需要另外两种相似性来确定它们的重要性。具体而言,如果正样本相似性越高,那么加的权就越少,因为它已经不太需要进一步拉近距离。但如果负样本的相似性太高,就表示它离 anchor 非常近,我们需要提供更大的权重以使模型把它们推地更远。

MS Loss的公式

前面已经了解到,MS Loss 采用采样和加权交替迭代的训练策略来实现上述三种相似性。研究者表示他们实际上也是站在前人的肩膀上,巧妙地融合表 1 中 Triplet、Lifted Structure 和 Binomial Deviance 三种损失函数,它们都只采用三种相似性中的一种。

我们需要分两步完成目标。因为我们很难构建单个训练和优化步骤来同时实现三种相似性,这样的公式不仅复杂,同时还容易产生冲突。此外,分为两步实现也不会违反 GPW 的基本思想。因为第一步的采样就是抛弃一些非常不重要,信息量很少的样本,可以看作将它们的权重设置为 0。这个权重与第二步的权重类似,它们结合起来可以视为一种加权方法。

采样

第一步通过正相对相似性确定哪些是信息量大的样本对。
假设 为anchor,如果负样本对 满足以下条件,则被选为重要样本对。
公式(11):

如果 为正样本对,则需要满足以下条件:
公式(12):

对于正相对相似性,我们可以度量在相同 anchor 下正样本和负样本对之间的相似性。具体而言,如果 anchor 与负样本的相似性比它与最不相似的正样本对还要大,那么该负样本就是重要的样本。

同理,如果 anchor 与正样本的相似性比它与最相似的负样本还要小,那么该正样本也含有重要信息。这两者加起来就是该 anchor 第一步选出的重要样本。

加权

第二步通过自相似性和负相对相似性为重要的样本对进一步赋不同的权重。
对于挑选出的重要负样本对 ,它的权重 为:
公式(13):

正样本对 的权重 为:
公式(14):

其中 为超参数。

公式(13)(14)结合了 binomial deviance 和 lifted structure 两种损失函数,且分别利用了自相似性和负相似性。然而,作者通过实验证明,它们的直接结合并不能导致性能的提高。最后,作者将采样和加权策略结合起来,从而产生了 MS Loss 这种新型基于成对样本的损失函数,MS loss的公式如下:
公式(15):

可以通过迭代样本对挖掘和加权,使用梯度下降进行优化。

效果对比

无论是Cars196和CUB200这样的细粒度数据集,还是SOP和In-Shop这样的大类别数据集,该论文提出的方法都能获得新的最佳或相当的性能,即使其他方法使用了ABE和BIER等集成技术。结果对比如下:

作者介绍



刘娜,2019年6月毕业于北京邮电大学自动化学院,毕业后加入贝壳找房语言智能与搜索部,主要从事NLP及强化学习相关工作。


推荐阅读

AINLP年度阅读收藏清单

中文命名实体识别工具(NER)哪家强?

学自然语言处理,其实更应该学好英语

斯坦福大学NLP组Python深度学习自然语言处理工具Stanza试用

太赞了!Springer面向公众开放电子书籍,附65本数学、编程、机器学习、深度学习、数据挖掘、数据科学等书籍链接及打包下载

数学之美中盛赞的 Michael Collins 教授,他的NLP课程要不要收藏?

自动作诗机&藏头诗生成器:五言、七言、绝句、律诗全了

模型压缩实践系列之——bert-of-theseus,一个非常亲民的bert压缩方法

这门斯坦福大学自然语言处理经典入门课,我放到B站了

征稿启示 | 稿费+GPU算力+星球嘉宾一个都不少

关于AINLP

AINLP 是一个有趣有AI的自然语言处理社区,专注于 AI、NLP、机器学习、深度学习、推荐算法等相关技术的分享,主题包括文本摘要、智能问答、聊天机器人、机器翻译、自动生成、知识图谱、预训练模型、推荐系统、计算广告、招聘信息、求职经验分享等,欢迎关注!加技术交流群请添加AINLPer(id:ainlper),备注工作/研究方向+加群目的。


登录查看更多
2

相关内容

度量学习的目的为了衡量样本之间的相近程度,而这也正是模式识别的核心问题之一。大量的机器学习方法,比如K近邻、支持向量机、径向基函数网络等分类方法以及K-means聚类方法,还有一些基于图的方法,其性能好坏都主要有样本之间的相似度量方法的选择决定。 度量学习通常的目标是使同类样本之间的距离尽可能缩小,不同类样本之间的距离尽可能放大。
基于改进卷积神经网络的短文本分类模型
专知会员服务
25+阅读 · 2020年7月22日
【IJCAI2020-华为诺亚】面向深度强化学习的策略迁移框架
专知会员服务
25+阅读 · 2020年5月25日
【经典书】机器学习高斯过程,266页pdf
专知会员服务
193+阅读 · 2020年5月2日
【CVPR2020-CMU】无数据模型选择,一种深度框架潜力
专知会员服务
21+阅读 · 2020年4月12日
深度度量学习-论文简评
极市平台
10+阅读 · 2020年6月21日
度量学习中的pair-based loss
极市平台
65+阅读 · 2019年7月17日
CVPR 19系列2 | 强判别能力的深度人脸识别(文末附有源码)
非平衡数据集 focal loss 多类分类
AI研习社
33+阅读 · 2019年4月23日
CosFace: Large Margin Cosine Loss for Deep Face Recognition论文笔记
统计学习与视觉计算组
44+阅读 · 2018年4月25日
何恺明大神的「Focal Loss」,如何更好地理解?
PaperWeekly
10+阅读 · 2017年12月28日
BAT题库 | 机器学习面试1000题系列(第226~230题)
七月在线实验室
9+阅读 · 2017年11月27日
A General and Adaptive Robust Loss Function
Arxiv
7+阅读 · 2018年11月5日
Arxiv
11+阅读 · 2018年7月8日
Arxiv
9+阅读 · 2018年3月28日
VIP会员
相关VIP内容
相关资讯
深度度量学习-论文简评
极市平台
10+阅读 · 2020年6月21日
度量学习中的pair-based loss
极市平台
65+阅读 · 2019年7月17日
CVPR 19系列2 | 强判别能力的深度人脸识别(文末附有源码)
非平衡数据集 focal loss 多类分类
AI研习社
33+阅读 · 2019年4月23日
CosFace: Large Margin Cosine Loss for Deep Face Recognition论文笔记
统计学习与视觉计算组
44+阅读 · 2018年4月25日
何恺明大神的「Focal Loss」,如何更好地理解?
PaperWeekly
10+阅读 · 2017年12月28日
BAT题库 | 机器学习面试1000题系列(第226~230题)
七月在线实验室
9+阅读 · 2017年11月27日
Top
微信扫码咨询专知VIP会员