为了验证本节中提出的两种基于子空间学习的人脸识别算法能够有效地解决训练样本量问题、信息瓶颈问题和单一尺度池化问题,本节设计了针对多重类内因素同时变化人脸识别问题的实验,采用了两个具有大量多重类内因素同时变化的数据库(即LFW和PaSC)进行测试,并与现有的同类型算法进行性能比较。评测标准为识别/验证准确率。
1.SRDANet算法实验结果及分析
本节中将SRDANet在LFW数据库中进行测试,以验证本算法能有效地利用监督的谱回归判别分析算法学习得到有判别能力的卷积核,并解决现有CNN模型需要在大规模标注训练样本的基础上训练网络参数和训练成本过高的问题。
为了验证SRDANet在面对非约束环境下多重类内因素同时变化的人脸识别问题,相比于其他现有CNN算法在有限训练样本的情况下,能够学习得到更具有判别能力的卷积核,以两层的SRDANet算法为例,将SRDANet算法与现有CNN模型的两层网络结构进行比较,如两层的Alex Net和两层的VGGNet。对于Alex Net模型的实现,该模型记为Alex Net-2,其网络结构参数如表2-14所示。为了验证SRDANet模型,利用较少的层数即可获得与深度CNN模型相似的性能,将SRDANet模型与完整的7层Alex Net模型进行比较,记为Alex Net-7,即Afonson工作展示的模型结构。对于VGGNet模型的实现,沿用Vu工作前两层的参数,同样利用512维的全连接层作为网络的输出。该模型记为VGGNet-2,其网络结构如表2-15所示。
表2-14 两层AlexNet模型的网络结构
表2-15 两层VGGNet模型的网络结构
由于LFW数据库上不同类别之间的样本数量差异巨大,即样本分布极度不均,只有1680个人有拥有超过2张以上的图像。对于现有CNN模型而言,无法使用只包含一张或两张人脸图像的训练样本来训练Softmax分类器。因此,选择在其他数据库(如FERET、CAS-PEAL-R1、CMU Multi-PIE和CASIA WebFace子集)上进行训练,并将训练得到的模型应用于LFW数据库中。一方面,这种实验设置能够公平地将SRDANet算法和其他CNN算法进行比较;另一方面,这种实验设置也能测试SRDANet算法与其他CNN算法的泛化能力,即从不同数据分布的源数据库上学习得到的模型能否成功地应用于LFW数据库。CASIA Web Face拥有10 575个人的494 414张人脸图像,而挑选了其中500个人的37 950张人脸图像作为训练集。对于SRDANet算法的参数,设置卷积核的个数[L1,L2]=[8,8]卷积核大小[j1,j2]=[7,7],池化层分块大小为[7,7]。实验结果如表2-16所示。根据实验结果,可以得出如下结论。
(1)当使用小规模训练样本训练时,如FERET或CAS-PEAL-R1,完整的7层Alex Net模型的准确率远低于其他几种两层模型,这说明了现有CNN模型在只使用小规模标注训练样本的情况下,极易出现了过拟合问题,难以学习得到具有判别能力的卷积核和网络模型。
(2)对于相同的网络结构,如Alex Net-2和RDANet,在网络模型训练过程中使用的训练样本数量越多,训练样本中类内变化越复杂,深度模型学习效果就越好,在面对多重类内因素同时变化的人脸识别问题时性能也就越好。这与人们对于深度学习模型的现有认知一致。
(3)同样为两层的深度网络结构,相比于其他基于BP算法学习卷积核的深度模型(如:Alex Net-2和VGGNet-2),SRDANet算法利用有监督的谱回归判别分析算法,在小规模训练集上即可学习得到了具有判别能力的特征向量,并将其表示为有判别能力的卷积核。随着训练样本规模的增加,SRDANet模型的描述能力和判别能力也随之得到提升。
表2-16 SRDANet算法与同类深度学习算法在LFW数据库的非监督测试协议下的平均识别准确率(AUC±std)(%)
2.MS-PCANet算法实验结果及分析
本节中将MS-PCANet在CMU Multi-PIE、LFW和PaSC数据库中进行测试,以验证本算法能有效地解决现有CNN模型和PCANet模型在信息传播过程中的信息瓶颈问题和池化层无多尺度池化能力的问题。
1)LFW数据库(www.xing528.com)
为了验证MS-PCANet算法在面对多重类内因素同时变化的人脸识别有效性,并验证该算法能够有效地解决现有CNN模型和PCANet模型在信息传播过程中存在的信息瓶颈问题和池化层无多尺度编码能力的问题。在LFW数据库上对MS-PCANet算法与同类算法进行比较,利用WPCA算法将输出特征的维度降为3200,并将其作为最终的输出特征。验证准确率和对应的ROC曲线分别列在表2-17中和图2-23中。
实验结果表明,MS-PCANet算法在面对多重类内因素同时变化的人脸识别问题时获得了优秀的验证准确率。本算法超过了现有的其他算法,特别是超过了各种版本的CNN算法和原始的PCANet算法。一方面,实验结果证明了多网络层级特征的引入,能够有效地解决了现有深度学习模型在信息播过程中存在的信息瓶颈问题;另一方面,在池化层中采用多尺度池化技术,能够有效地解决了现有CNN模型和PCANet模型在池化过程中由于只能按照固定尺寸进行池化而导致的信息损失问题。在无监督测试协议的情况下,MSPCANet算法的AUC仍能够超过93%,足以说明本算法能够应对无约束环境下多重类内因素同时变化的人脸识别问题。
在本算法提出之时,有一些同时期Belhumeur、LeCun、Krizhevsky工作在LFW数据库上基于监督的测试协议获得了超过95%的准确率。但是一方面,这些算法在训练过程中利用了监督信息(即标签信息)训练模型;另一方面,这些算法在训练过程中还引入了大量带有标签的外部数据,如Belhumeur工作则使用了超过400万社交平台数据,Belhumeur工作则使用了超过300万带有标注的外部数据。实验结果表明,MS-PCANet算法在使用轻量级网络结构和较小参数规模的情况下,即可获得超过现有CNN模型的准确率。MS-PCANet算法通过子空间学习算法利用较少的训练样本,可以学习得到具有描述能力的卷积核。而且,MS-PCANet算法能够通过多网络层级的特征联合和池化层中的多尺度池化,解决CNN模型存在的信息瓶颈问题和单一尺寸池化所导致的信息损失问题。
表2-17 MS-PCANet算法与其他现有算法在LFW数据库的非监督测试协议下的平均识别准确率(±std)(%)和AUC(%)
图2-23 MS-PCANet算法与其他现有算法在LFW数据库上的ROC曲线
2)PaSC数据库
为了验证MS-PCANet算法在面对多重类内因素同时变化的人脸识别问题时的泛化能力,并验证MS-PCANet算法能够有效地解决现有CNN模型和PCANet模型在信息传播过程中存在的信息瓶颈问题和池化层无多尺度编码能力的问题。在PaSC数据库上继续测试MS-PCANet算法。不同的是,在本节中MS-PCANet模型在FERET、CMU Multi-PIE数据库和自身训练集上进行训练,而将训练得到的模型在PaSC数据库上进行测试。
MS-PCANet算法的滤波核大小[j1,j2]=[7,7]、最细粒度池化尺寸[w,h]=[8,6]、空间金字塔池化尺寸为[162,82],利用WPCA算法将输出特征的维度降为500,并将其作为最终的输出特征。验证准确率和对应的ROC曲线分别列在表2-18中和图2-24中。其中,MS-PCANet(FERET)表示MS-PCANet模型是在FERET数据库上训练得到的,其他示例也按照相同的方式进行表示。实验结果表明,尽管FERET和CMU Multi-PIE数据库中的样本与PaSC数据库中的样本分布差距很大。但MS-PCANet算法在使用了与PaSC不同源的训练样本的情况下,依然获得了优秀的性能。多网络层级的联合以及多尺度池化的引入,不仅提升了MS-PCANet算法的描述能力,同时还使得MS-PCANet算法能够泛化地学习人脸图像中的通用特征描述方式,并将其应用于不同源的人脸图像上去。另外,基于PaSC数据库学习得到的MS-PCANet算法的验证准确率略高于其他两个数据库。这是因为PaSC数据库比其他两个数据库具有更多更为丰富的极端类内变化。因此,利用PaSC数据库学习得到的MS-PCANet算法自然会具有更强的描述能力。
图2-24 MS-PCANet算法和其他现有方法在PaSC的全部人脸和正面人脸场景下的ROC曲线
表2-18 MS-PCANet算法与现有其他算法在PaSC数据库上当FAR=0.01时的验证准确率
续表
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。