深度学习论文笔记-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,有其它的训练数据来训练模型)。
不理解的地方: