人脸识别-cocoloss

本文主要介绍一篇来自nips 2017的文章 《Rethinking Feature Discrimination and Polymerization for Large-scale Recognition》。本文主要提出了一个新的loss提高人脸识别准确率。这篇文章算是特征归一化的一系列文章中的一篇,同一时期的还有 L2-Softmax,NormFace。SphereFace在这基础上提出Margin的概念,算其中效果最好的。
论文地址:http://cn.arxiv.org/pdf/1710.00870v2
https://arxiv.org/abs/1702.06890
代码主页:https://github.com/sciencefans/coco_loss

Motivation

人脸分类任务中,核心思想都是类内方差小,类间方差大。而SoftmaxLoss并不能学习到判别性较好的特征,因此为了解决这个问题,出现了一系列loss,包括triplet loss,contrastive loss。而这两种loss的缺点在于如何选取样本对,当一个batch较小时,样本对较小,因此很难挖掘到难样本,最终导致训练效果不佳。而之前的Centerloss免去了采样这个步骤,训练较为简单,但问题在于Centerloss的center是个统计意义值,即不是样本进行迭代更新,更新时是求一个batch当中同一类样本减去该类样本的中心取平均值。而本篇文章提出的Center即使用全连接进行中心学习。

算法核心

在一个batch中计算两个样本的余弦相似度如下:
这里写图片描述
很自然的我们会想到,让每一类之间的中心距离离得更远,可以得到下面的loss:
这里写图片描述
但如果循环计算每个样本的距离,时间复杂度过高,受Centerloss的启发,只许与自己的中心近则类内特征会变得更加紧缩。因此得到下面的loss:
这里写图片描述
因此cocoloss如下:
这里写图片描述
在实现时只要将 f和c进行归一化,全连接的w就相当于中心c。
特征可视化结果:
这里写图片描述

实验结果

这里写图片描述
从结果来看base softmax已经很高了,添加coco已将lfw全部识别正确(有10几对数据标错)。

Trick

  1. 对齐很重要,作者并没有详细说明其对齐方式。
  2. 微软1M名人数据集比较脏,数据的干净也极大的影响结果。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值