• 深度学习论文阅读笔记--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的结构如下:

    说明:共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.】

     

    不同的输入图像:

    其中局部图像是关键点(每个图像一个关键点)居中,不同的区域大小和不同的尺度图像输入到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,有其他的训练数据来训练模型)。

    不理解的地方:

     
  • 相关阅读:
    大白痴学习webmagic
    selenium docs
    centos6.5单用户模式拯救系统
    使用Squid做代理服务器,Squid单网卡透明代理配置详解(转)
    Redundant Call to Object.ToString()
    Specify a culture in string conversion explicitly
    Benefits of Cold Showers: 7 Reasons Why Taking Cool Showers Is Good For Your Health
    Why Creating a Meaningful Morning Routine Will Make You More Successful
    git图示所有分支的历史
    Rewriting History with Git Rebase
  • 原文地址:https://www.cnblogs.com/chenriwei/p/3791677.html
Copyright © 2020-2023  润新知