【没有哪个港口是永远的停留~ 论文解读】FaceNet

论文:FaceNet: A Unified Embedding for Face Recognition and Clustering

摘要

  1. 以前的深度学习方法那样的中间  bottleneck layer 。我们用使用一种新的 triplets 方法。
  2. triplets 方法,由在线生成匹配/不匹配组合
  3. 只使用128 维表示人脸。
  4. 成就:LFW-dataset 99.63%. On YouTube Faces DB it achieves 95.12%.

Introduction

  1. L2代表相似度(同一个人的脸有很小的距离,不同的人的脸有很大的距离。)
  2. triplets  由两个匹配的面部缩略图和一个非匹配的面部缩略图组成,损失的目的是将正对与负的距离边缘分开。
  3. 除了缩放和平移外,没有进行2D或3D对齐
  4. 选择哪个 triplets  对取得良好的成绩是非常重要的,在curriculum learning[1]的启发下,我们提出了一种新的在线负面样本挖掘策略 当网络训练时,使得 triplets  难度不断增加。

相关工作

  1. 在本文中,我们探索了两种不同的深层网络体系结构,这些结构最近在计算机视觉社区中获得了巨大的成功。两者都是深卷积网络[8,11]。
  2. 别人是咋做的

Method

Triplet Loss

 

Triplet Selection

  • 在这里,我们集中在 online 和使用大型 mini-batches  的顺序为几千个样本,并且只计算一个 mini-batches 中的argmin和argmax。
  • mini-batches 中,每人40张脸,随机抽样负样本添加到 mini-batches 中
  • 选择所有的Anchor-Positive ,配合困难的负样本。而不是选择困难的 Anchor-Positive,在实践中发现all anchor-positive method 更稳定,收敛更快
  • 在训练初期,选择最难的 Negative 会导致局部极小

  • 如(4)描述的 Negative 称为 semi-hard,因为他们比 Positive 更远,但是也不简单,因为那些 Negative 就在边缘α
  • 在大多数实验中,我们使用大约1800个样本的批次大小。

Deep Convolutional Networks

  • 在我们所有的实验中,我们使用随机梯度下降(SGD)和标准反向传播[8,11]和AdaGrad[5]训练CNN。
  • 在大多数实验中,我们从0.05的学习率开始,我们降低了学习率,以最终确定模型。
  • 模型是从随机初始化的,类似于[16],并在CPU集群上训练1000到2000小时。
  • 在500h的训练后,损失的减少(和准确性的增加)急剧减缓,但额外的训练仍然可以显著提高性能。 α设置为0.2

Datasets and Evaluation

测试集1:学术数据集:LFW and YouTube Faces,

测试集2:100万张图像,与训练集同分布,但是没有相同身份,平均分5份 。组对:100k × 100k image pairs.

测试集2:13K,与训练集同分布,每人3张

评估方法:

其中:

  • TA:true accepts
  • FA:false accept
  • VAL=\frac{samePersonSuccessPredict}{pair(Anchor-Positive)}
  • VAL=\frac{negativePredictPositive}{pair(Anchor-Negative)}
图4-不同计算量的准确率,重点看红色点点,我们重点测试模型

 

 Experiments

  • 训练集:100M-200M张人脸,8M个人
  • 输入:在我们的实验中,输入大小从96x96像素到224x224像素不等

实验一:Computation Accuracy Trade-off

在深入研究更具体实验的细节之前,我们将讨论精度与特定模型所需的FLOPS数量之间的权衡。 图4显示了x轴上的FLOPS 在我们的用户标记测试数据集上的0.001假接受率(FAR)的准确性来自第4.2节。 有趣的是,看到模型所需的计算与准确率之间的强相关性 。 该图突出了我们在实验中更详细地讨论的五种模型(NN1、NN2、NN3、NNS1、NNS2)我们还研究了模型参数数量的准确性权衡。 然而,在这种情况下,情况并不那么清楚。 例如,基于Inception的模型NN2实现了COM 对NN1的可比喻性能,但只有20%的参数。 但FLOPS的数量是相当的。

 

NN1
NN1
NN2
图5-ROC曲线
表3-FAR=1E-3; VAL=*

 

实验二:CNN模型的影响

  • 如表3所示,研究不同输入大小对准确率的影响,很明显NN3较好
  • 如图5所示,<10−4的ROC急剧下降表明测试数据中的噪声标签。 在极低的错误接受率下,单个错误标记的图像可能对曲线产生显著影响。 

实验三:图像质量对准确率的影响

表4显示了我们的模型在广泛的图像大小范围内的鲁棒性。 该网络在JPEG压缩方面令人惊讶地健壮,性能非常好,直到JPEG质量为20。 性能下降是非常小的脸缩略图下降到120x120像素的大小,即使在80x80像素,它显示出可接受的性能。这是值得注意的,因为网络是在220x220输入图像上训练的。 低分辨率人脸的训练可以进一步改善这一范围。

NN1、FAR=10E-3、左图质量右图像素

实验四:Embedding维度

NN1、FAR=10E-3、也许训练不充分,512可能更好

实验五:Amount of Training Data

  • 训练时长:700h
  • inputs :96x96 pixel inputs.
  • model:NN2, but without the 5x5 convolutions in the Inception modules

表6显示了大量培训数据的影响。 由于时间限制,这一评估是在一个较小的模型上进行的;对较大的模型的影响可能更大。 显然,使用 数以千万计的样本导致了我们的个人照片测试集4.2节的准确性的明显提高。 与仅数百万幅图像相比,误差相对减少了60%。 使用一个 其他数量级更多的图像(数亿)仍然提供了一个小的促进,但改进逐渐减少

表6

Appendix: Harmonic Embedding

模型升级,暂不关心

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值