【行人重识别】《In Defense of the Triplet Loss for Person Re-Identification》论文阅读

论文https://arxiv.org/abs/1703.07737
GitHubhttps://github.com/VisualComputingInstitute/triplet-reid

论文创新

  • 针对现有triplet loss缺点,提出了几种新型的triplet loss,进行了横向的实验对比
  • 对于reid模型是否需要使用pre-trained模型这一问题,进行了实验对比

相关概述

  • Deep metric learning – 深度度量学习,也就是相似度学习D
  • Classification Loss – 当目标很大时,会严重增加网络参数,而训练结束后很多参数都会被摒弃。
  • Verification Loss – 只能成对的判断两张图片的相似度,因此很难应用到目标聚类和检索上去。因为一对一对比太慢。
  • Triplet loss – 端到端,简单直接; 自带聚类属性; 特征高度嵌入,但是不好训练。

Triplet loss最早来源于Google的FaceNet,Triplet loss的想法很简单:类内距离趋小,类间距离趋大。是当前应用很广泛的一种损失函数。在FaceNet中,通过构建embedding方式,将人脸图像直接映射到欧式空间,而优化这种embedding的方法可以概括为,构建许多组三元组(Anchor,Positive,Negative),其中Anchor与Positive同label,Anchor与Negative不同label(在人脸识别里面,即就是Anchor,Positive是同一个个体,而与Negative是不同个体),通过学习优化这embedding,使得欧式空间内的Anchor与Positive 的距离比与Negative的距离要近。

Triplet loss通常能比classification得到更好的feature。还有一个优点就是Triplet loss可以卡阈值,Triplet loss训练的时候需要设置一个margin,这个margin可以控制正负样本的距离,当feature 进行normalization后,可以更加方便的卡个阈值来判断是不是同一个ID。当然Triplet loss也有缺点,就是收敛慢,而且比classification更容overfitting。Triplet loss的主要应用就是face identification、person re-identification、vehicle re-identification等。

传统的Triplet loss训练需要一个三元组,achor(a)、positive(p)、negative(n)。
Triplet loss的缺点在于随机从训练集中挑选三张图片,那么可能挑选出来的可能是很简单的样本组合,即很像的正样本和很不像的负样本。作者认为,让网络一直学习简单的样本,会限制网络的泛化能力。因此,作者提出了一种在线batch hard sample mining的改进版Triplet loss,大量实验表明,这种改进版的方法效果非常好。

Triplet loss

Triplet loss损失函数

Batch Hard Triplet Loss

batch hard triplet loss损失函数

具体做法:随机抽样P类(P个人),每个人随机地选K张图片,从而产生一个PK batch的图片即batch size=P×K。现在,对于batch中的每个样本,可以在生成triplets来计算loss时选择batch中最难的positive和negative。

Soft Margin

soft margin

之前的很多Triplet Loss都采用了截断处理,即如果Triplet三元组关系正确则Loss直接为0。 作者发现,对于Re-ID来说,有必要不断地拉近同类目标的距离。

为此,可以使用softplus函数用平滑逼近代替hinge函数。其中,数值稳定的实现通常以log1p的形式提供。softplus函数的行为与hinge相似,但它是指数衰减的,而不是硬截止,因此作者将其称为soft margin公式。


原文

实验结果

triplet loss对比实验

在作者的行人重识别实验中,Batch Hard + soft-magin的效果最好, 同时作者为了排除是triplet loss后面的三元组都是loss为0的情况,排除了该情况下batch hard triplet loss的效果依然是最好。该方法work的原因在于在每一个batch中都选择最难的三元组,这样整个训练过程中,模型学习的是困难度较中的样本。

是否需要预训练实验1
是否需要预训练实验2

TriNet表示来自pre-trained model(ResNet50),LuNet是作者自己设计的一个普通网络,从头开始训练。利用pre-trained model确实可以获得更好一点的效果,但是从头开始训练的网络也不会太差。特别的,pre-trained model往往体积较大模式固定,不如自己设计网络来的灵活。同时,pre-trained model往往有其自己的固定输入,我们如果修改其输入很可能会得到相反的效果。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,053评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,527评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,779评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,685评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,699评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,609评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,989评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,654评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,890评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,634评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,716评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,394评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,976评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,950评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,191评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,849评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,458评论 2 342

推荐阅读更多精彩内容