判别特征学习方法用于人脸识别


最近因为博主科研繁忙,没有时间更新,在此向所有关注的您说一声对不起!希望没有ComputerVisionGzq 大家依然科研顺利,生活愉快,嘿嘿!


今天我来给大家讲讲人脸识别的一些小事,希望您能有些收获,谢谢!

n 主要内容

卷积神经网络(CNN)已广泛地用于计算机视觉领域,显著地提高了先进的方法。在大多数的CNNs中,softmax损失函数被作为监督信号去训练深度模型。为了增强深度学习特征的判别力,提出一种新的监督信号,称为中心损失,用于人脸识别任务。中心损失同时学习每一类深度特征的中心,并惩罚深度特征和它们相对应类别中心之间的距离。更重要的是,证明了提出的中心损失函数是可以训练的且非常容易在CNNs中优化。Softmax损失和中心损失的联合监督,可以训练一个鲁棒的CNNs去获得两个关键学习目标的深度特征,尽可能的使类间分散和类内紧凑,在人脸识别中是非常必要的。

提出的CNNs(联合监督)在一些重要的人脸基准数据集中(LFW,YTF和MegaFace)都可以获得很好的结果。

n 贡献

Ø 提出一个中心损失函数去最小化同类深度特征之间的距离。这也是第一次尝试去使用这样一个损失函数去协助CNNs的监督学习,在联合监督下,高判别力的特征被获得去鲁棒的识别人脸;

Ø 证明了提出的损失函数在CNNs中很容易去实现,本文的CNN直接通过标准的SGD优化;

Ø 做了广泛的实验,在基准数据集LFW,YTF和MegaFace上进行实验(其中MegaFace是最大的公共领域人脸数据库,有100万人脸去识别)。

n 主要方法

图1 卷积神经网络的典型框架

在通常的目标,场景或行为识别中,测试样本可能的类别是在训练集内的,这也被称为闭集识别(close-set identification)。因此,softmax损失可以直接解决分类问题。以这种方式,标签预测(最后全连接层)像一个线性分类器,并且深度学习的特征很容易被分离。

但是对于人脸识别任务,深度学习特征不仅需要可分离还需要判别性。因为它是不切实际的预收集所有可能的测试身份去训练,在CNN中的标签预测并不总是适用。深度学习特征被要求具有判别性,并且在没有标签预测情况下足够识别新的没有出现的类别。判别特征可以通过近邻(NN)或K最近邻(K-NN)算法很好的分类,其不需依赖标签预测。然而,softmax损失只支持特征的分离,由此产生的特征是不够有效地人脸识别。

本文提出一个新的损失函数,称为中心损失,有效地增强了深度学习特征的判别力。它学习每类深度特征的一个中心,在训练过程中,同时更新中心和最小化深度特征和相对应类别中心的距离。直观地,softmax损失使不同类别特征保持分离,中心损失有效地将同一类的深度特征拉到它们的中心。联合监督,不仅类间特征的差异增大,而且类内特征的变化减少。

ü 一个小型实验


图2 深度特征分布,(a)是训练集,(b)是测试集

从图2中可以观察到:(1)在softmax损失的监督下,深度学习特征可分离;(2)深度特征判别性不够,由于它们仍然表现出显著的类内变化。因此不适用直接使用这些特征去识别。

ü 中心损失

如何建立有效的损失函数提高深度学习特征的辨别力?最小化类内变化,同时保持不同类别的特征分离是关键。所以本文提出中心损失函数,如下:

为了解决这个问题,本文做了两个必要的修改。第一,本文基于mini-batch更新中心,在每次迭代中,通过平均相对应类别的特征去计算中心,这样有些中心就不必更新;第二,为了避免一些贴错标签样本的扰动,本文使用了一个标量a去控制中心的学习率。

其中如果condition满足则:

反之

a被限制在[0,1],本文采用联合监督去训练CNNs用于判别特征学习。公式如下:

公式可以通过标准的SGD优化,λ是为了平衡两个损失函数。

本文还进行了实验来说明λ的影响分布。图3显示了不同的λ导致不同的深度特征分布。适当的λ,深度特征的分类能力得到显著增强。

ü 讨论

1) 联合监督的必要性

如果只使用softmax损失作为监控信号,导致深度学习特征将包含大的类内变化。简单的使用其中任何一个不能实现判别性特征学习,因此有必要将它们结合起来,共同监督CNNs,本文也通过实验证实。

2) 对比损失与三重损失的比较

最近,对比损失和三重损失也提出了去增强深度学习人脸特征的分类能力。然而,对比损失和三重损失遭受数据扩增,从训练集构成样本对或三重样本。本文的中心损失不需要复杂的重组样本。因此,学习本文的CNNs是更有效和易于实施。此外,本文损失函数的目标更直接的去学习类内紧凑的目标,这是非常有益于判别性特征学习。

n 实验



表1 LFW和YTF数据集上的结果


表2 不同方法的识别率在MegaFace数据集


n 总结

本文提出一种新的损失函数,称为中心损失。通过结合中心损失和softmax损失去联合监督CNNs的学习,深度学习特征的判别力可以被很大的增强用于鲁棒的人脸识别。大量的实验在一些大规模的人脸基准进行,并证明了所提方法的有效性。

文章最后的连接密码:a0w2

希望大家关注我的平台,里面有我们的联系方式,让我们大家一起学习进步!谢谢!!!

原文发布于微信公众号 - 计算机视觉战队(ComputerVisionGzq)

原文发表时间:2017-04-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏机器之心

入门 | 简述迁移学习在深度学习中的应用

37070
来自专栏IT派

机器学习各类算法比较

导语:机器学习算法太多了,分类、回归、聚类、推荐、图像识别领域等等,要想找到一个合适算法真的不容易,所以在实际应用中,我们一般都是采用启发式学习方式来实验。通常...

433120
来自专栏机器之心

深度 | 理解神经网络中的目标函数

选自Kdnuggets 作者:Lars Hulstaert 机器之心编译 参与:晏奇、李泽南 本文面向稍有经验的机器学习开发者,来自微软的 Lars Hulst...

34890
来自专栏Brian

机器学习系列-机器学习是什么?

概述 机器学习现在已经运用在很多领域和行业,比如通过机器学习系统来提高自己系统的准确率和目标、进行商业数据的分析与预测等等。机器学习是关于计算机基于数据构建的概...

354110
来自专栏null的专栏

图解机器学习总结——1、基本概念

序言:近期主要帮同事讲解《图解机器学习》,刚拿到这本书觉得内容相比较平常使用的机器学习算法,很多地方讲解得比较奇怪,在认真的读完后,觉得还是有很多重要的东西,因...

42780
来自专栏PPV课数据科学社区

机器学习算法比较

本文主要回顾下几个常用算法的适应场景及其优缺点!(提示:部分内容摘自网络)。 机器学习算法太多了,分类、回归、聚类、推荐、图像识别领域等等,要想找到一个合适算法...

30190
来自专栏专知

【干货】监督学习与无监督学习简介

【导读】本文是一篇入门级的概念介绍文章,主要带大家了解一下监督学习和无监督学习,理解这两类机器学习算法的不同,以及偏差和方差详细阐述。这两类方法是机器学习领域中...

47280
来自专栏PPV课数据科学社区

什么是迁移学习?它都用在深度学习的哪些场景上?这篇文章替你讲清楚了

翻译 | 刘畅 迁移学习是机器学习方法之一,它可以把为一个任务开发的模型重新用在另一个不同的任务中,并作为另一个任务模型的起点。 这在深度学习中是一种常见的方法...

28760
来自专栏ACM算法日常

第四篇:《机器学习之逻辑回归(上)》

前面我们学习了线性回归,它通过输入一个样本的所有特征,然后和参数计算得到了自己的预测值,再通过梯度下降完成代价函数的最小化。

11050
来自专栏AI科技大本营的专栏

什么是迁移学习?它都用在深度学习的哪些场景上?这篇文章替你讲清楚了

翻译 | 刘畅 迁移学习是机器学习方法之一,它可以把为一个任务开发的模型重新用在另一个不同的任务中,并作为另一个任务模型的起点。 这在深度学习中是一种常见的方法...

361100

扫码关注云+社区

领取腾讯云代金券