深度学习论文笔记-Deep Learning Face Representation from Predicting 10,000 Classes

深度学习论文笔记-Deep Learning Face Representation from Predicting 10,000 Classes

来自:CVPR 2014   作者:Yi Sun ,Xiaogang Wang,Xiaoao Tang

题目:Deep Learning Face Representation from Predicting 10,000 Classes

主要内容:通过深度学习来进行图像高级特征表示(DeepID),进而进行人脸的分类。

长处:在人脸验证上面做,能够非常好的扩展到其它的应用,而且夸数据库有效性;在数据库中的类别越多时,其泛化能力越强,特征比較少,不像其它特征好几K甚至上M,好的泛化能力+只是拟合于小的子训练集。

主要过程:採用卷积神经网络(CNN)方法,而且採用CNN最后一层的激活值输出作为features,不同的人脸区域放入CNN中提取特征,形成了互补、过全然的特征表示。(form complementary and over-complete representations)。

通过深度卷积网络来学习高级的过全然特征(有监督),CNN的最后一层激活值作为输出,

详细细节:

採用3个尺度,10个人脸region,60个patch,训练60个CNN网络,每一个提取两个160维的特征(两个是由于: extracts two 160-dimensional DeepID vectors from a particular patch and its horizontally flipped counterpart.),所以最后一张人脸图像的特征的维度是:160*2*60=19200维。

CNN的结构例如以下:

<span>深度学习论文笔记-Deep Learning Face Representation from Predicting 10,000 Classes</span>

<span>深度学习论文笔记-Deep Learning Face Representation from Predicting 10,000 Classes</span>

说明:共5层网络,越往上的神经元的个数就越少,到最后就剩下160个神经元的输出,上面的Face patches 是进过对齐过后的的人脸块,也就是说已左(右)眼为中心的人脸区域块,嘴角为中心的人脸区域块等等,这样就有多个不同的输入块输入到CNN中,文章採用了把倒数第二层的输出+倒数第一层的输出作为特征(这应该是採用12年的Le Cun 那篇文章的track)。最后再把不同的块所输出的特征连接起来,就形成了一个终于一张人脸的特征。然后再用各种分类器对其特征进行分类。

採用Max-Pooling,softmax;

输入图像:39*31*k 个人矩形脸图像块+31*31*k  (这里k在彩色图像时为3,灰度时k为1)个人脸正方形块(由于后面要考虑到是全局图像还是局部图像,且须要考虑到尺度问题),使用ReLU非线性处理;

注意到【Weights in higher convolutional layers of our ConvNets are locally shared to learn different mid- or high-level features in different regions [18]. r in Equation 1  indicates a local region where weights are shared. In the third convolutional layer, weights are locally shared in every 2  2 regions, while weights in the fourth convolutional layer are totally unshared.】

<span>深度学习论文笔记-Deep Learning Face Representation from Predicting 10,000 Classes</span>

不同的输入图像:

<span>深度学习论文笔记-Deep Learning Face Representation from Predicting 10,000 Classes</span><span>深度学习论文笔记-Deep Learning Face Representation from Predicting 10,000 Classes</span>

当中局部图像是关键点(每一个图像一个关键点)居中,不同的区域大小和不同的尺度图像输入到CNN中,其CNN的结构可能会不同样,可是最后的特征的都是160维度,最后将全部的特征级联起来。

最后一层的特征是第三层和第四层全相连(比較特殊的地方),由于这样能够添�尺度特征,由于第三层和第四层学习到的特征的尺度是不一样的。

特点:提取的特征非常Compact,仅仅有160*k,k不大。自然就具有判别力了。

在训练CNN中,训练数据的类别越多,其性能越好,可是会在训练模型中出现故障,也就是太慢。

CNN的输出是特征,而不是输出类别,

分类

採用Joint Bayesian 来进行人脸的verification;也採用了神经网络来比較,可是联合贝叶斯的效果比較好;

实验

由于在LFW中大部分人的图像个数是有限的,非常多人仅仅有一张图片;所以採用了新的数据库来训练模型:CelebFaces :八万多幅,五千多人,每一个人差点儿相同16张图片,

===============

方法比較:

当前的人脸识别方法:过全然的低级别特征+浅层模型。

ConvNet 可以有效地提取高级视觉特征。

已有的DL方法:

1. Huang【CVPR2012】的生成模型+非监督;

2. Cai 【2012】的深度非线性度量学习;

3 Sun【CVPR2013】的监督学习+二类分类(人脸校验 verfication),是作者去年写的。而这一篇文章是多类分类问题(identification),并且这篇文章中,有10000类的人脸类别。

================

结果:在有对齐人脸的情况下,可以在LFW数据库上识别率达到97.5%。(其训练数据不是LFW,有其它的训练数据来训练模型)。

不理解的地方:

<span>深度学习论文笔记-Deep Learning Face Representation from Predicting 10,000 Classes</span>


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/119082.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux ldd命令源代码,Linux中ldd命令的用法详解[通俗易懂]

    linux ldd命令源代码,Linux中ldd命令的用法详解[通俗易懂]Linux中ldd命令主要用于查看程式运行所需的共享库,那么ldd命令具体要如何使用呢?下面小编就给大家介绍下Linux下ldd命令的使用方法,感兴趣的朋友一起来学习下吧。ldd命令用于判断某个可执行的binary档案含有什么动态函式库LinuxLdd参数说明:–version  打印ldd的版本号-v–verbose  打印所有信息,例如包括符号的版本信息-d–data-relo…

    2022年5月6日
    212
  • 细谈微商分销系统开发对企业的发展是好还是坏「建议收藏」

    细谈微商分销系统开发对企业的发展是好还是坏「建议收藏」  微商分销系统开发,,微商二级分销系统,微商系统开发,微商软件。微商APP开发,微商分销模式,微商全返系统,微商返利系统,微商管理系统。  从各个层面和角度,全方位解决微商品牌企业,在渠道中的一切微商管理问题,让微商品牌和团队轻松应对市场。  一、微商分销系统的特点  1.当你成为产品的代理商之后,你可以选择多种发货模式,平台或推广者可以选择发货模式。  …

    2022年5月17日
    34
  • 视觉SLAM技术简述,一文了解视觉SLAM「建议收藏」

    视觉SLAM技术简述,一文了解视觉SLAM「建议收藏」如今科技发展日新月异,随着机器人、AR/VR等人工智能领域的不断发展,视觉SLAM也取得了惊人的发展。本文就视觉SLAM的定义、研究分类、模块、工作原理及应用方向等方面做一个视觉SLAM的技术简述。视觉SLAM是什么?SLAM的英文全称是SimultaneousLocalizationandMapping,中文称作「即时定位与地图创建」,而视觉SLAM就是用摄像头来完成环境的感知工作。当一个自主移动的机器人处在一个未知的环境,它要通过摄像头获取的信息数据对自身以及周围环境进行一个预估.

    2022年10月1日
    3
  • Objective-C的对象模型和runtime机制「建议收藏」

    Objective-C的对象模型和runtime机制

    2022年2月5日
    42
  • 关于EVE模拟器思科交换机无法启动问题「建议收藏」

    关于EVE模拟器思科交换机无法启动问题「建议收藏」今天碰到一个问题,用eve模拟器模拟思科的交换机,发现设备起不来,点了启动以后过一会自己就会关闭,检查了文件的权限以后发现没有问题,开始以为是镜像的问题,后来换了镜像也不对,最后发现是license的问题,重新换了个一个license解决此问题…

    2022年6月11日
    146
  • matlab条件跳出语句,if语句跳出循环

    matlab条件跳出语句,if语句跳出循环break跳出的是if语句,还是for循环break跳出的是for循环。break在一些计算机编程语言中是保留字,其作用大多情况下是终止所在层的循环。1、break语句对if-else的条件语句不起作用。2、在多层循环中,一个break语句只向外跳一层。在C语言的switch(开关语句)中,break语句还可用来在执行完一个case(分支)后立即跳出当前switch结构。扩展资料:…

    2022年6月4日
    63

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号