【论文学习】人脸识别——FaceNet:超级经典的paper(triplet loss)

【论文学习】人脸识别——FaceNet:超级经典的paper(triplet loss)_第1张图片

又是超级经典的一篇人脸识别paper,提供了一种端到端的处理,提出了新颖的loss function,好文值得多读!

FaceNet这篇paper是2015年的论文,实验效果非常好,在LFW中达到了99.63%的精度。

实现了利用端到端的网络学习在欧式距离空间的128维人脸特征向量。并提出了triplet loss,通过loss函数直接学习embedding feature,并且优化feature的分布。

基本框架

先看FaceNet的基本框架,如下图所示。

【论文学习】人脸识别——FaceNet:超级经典的paper(triplet loss)_第2张图片

Pipeline:先通过一个比较大batch_size输入人脸图像数据x,通过深度CNN之后就会得到一个feature map,再对其做L2归一化之后就可以得到对这张人脸的表示embedding,然后用triplet loss(anchor, positive, negative)方法对这整个模型进行端到端的训练。

文章是直接通过网络生成feature,并且希望feature是距离线性空间,距离近则为人脸的ID接近。

Triplet loss

paper中提出的triplet loss十分值得学习,先看什么是triplet loss:

【论文学习】人脸识别——FaceNet:超级经典的paper(triplet loss)_第3张图片

Triplet loss的核心思想就是使类间距离增大,类内距离缩小。看公式

【论文学习】人脸识别——FaceNet:超级经典的paper(triplet loss)_第4张图片

上标为a表示anchor,p表示与anchor属于同一类的正例,n表示与anchor不属于同一类的负例。

Triplet selection

事实上,选样本时,选择hard negative 和hard positive是更有利的。文章中提出来两种方式,作者使用了后一种。

(1)离线:每训练n个step,计算得到hard negative 和hard positive

(2)在线:从每个mini batch中选取hard negative 和hard positive

网络结构

(1)Zeiler&Fergus model (NN1)

【论文学习】人脸识别——FaceNet:超级经典的paper(triplet loss)_第5张图片

(2)Inception model (NN2)

【论文学习】人脸识别——FaceNet:超级经典的paper(triplet loss)_第6张图片

实验结果

           

【论文学习】人脸识别——FaceNet:超级经典的paper(triplet loss)_第7张图片

 

        

【论文学习】人脸识别——FaceNet:超级经典的paper(triplet loss)_第8张图片

 

        

【论文学习】人脸识别——FaceNet:超级经典的paper(triplet loss)_第9张图片

 

【论文学习】人脸识别——FaceNet:超级经典的paper(triplet loss)_第10张图片

你可能感兴趣的:(深度学习,人脸识别)