SSR-Net: A Compact Soft Stagewise Regression Network for Age Estimation

Abstract

本文提出了一种新的CNN模型,称为软阶段回归网络(SSR-Net),用于从单一图像和一个紧凑大小的模型估计年龄。受DEX的启发,我们通过多类分类处理年龄估计,然后通过计算期望值将分类结果转化为回归。SSR-Net采用由粗到精的策略,分多个阶段进行多类分类。每个阶段只负责细化前一阶段的决策,以便更准确地估计年龄。因此,每个阶段执行的任务类很少,需要的神经元也很少,这大大减少了模型的大小。为了解决将年龄分组到年龄类中的量化问题,SSR-Net通过允许根据输入的人脸图像进行移动和缩放,为每个年龄类分配一个动态范围多阶段策略和动态范围被纳入到软阶段回归的公式中。提出了一种用于软阶段回归的网络结构。合成的SSR-Net模型非常紧凑,只需要0.32 MB。尽管SSR-Net的大小很紧凑,但它的性能接近于模型大小通常大于1500倍的最先进方法。


1 Introduction

从一张人脸图像预测一个人的真实年龄(生物年龄)是计算机视觉和人工智能领域的一个经典问题[Ramanathan et al., 2009]。它适用于许多应用程序,如监视、产品推荐、人机界面和市场分析。这个问题很有挑战性,因为同年龄的人在外貌上有很大的差异。老年人可能看起来比一些年轻人年轻,反之亦然。因此,从外表判断真实年龄的任务甚至对人类来说都是具有挑战性的

由于年龄是一个连续的值,而不是一组离散的类,因此将年龄估计问题表述为回归问题是很直观的[Agustsson et al., 2017;Rothe et al., 2016b]。然而,正如之前的研究所指出的[Chang et al., 2011;Rothe等,2016a;Tan等人,2018],基于回归的年龄估计方法可能会出现过拟合问题,这是因为衰老过程的随机性以及面部外观与其实际年龄之间的模糊映射。另一方面,人们可以很容易地分为几个年龄组,如青少年,中年人或老年人。因此,许多研究使用多类分类方法,通过将年龄量化为组来解决年龄估计问题[Rothe et al., 2015;Rothe等,2016a;Tan等人,2018]。然而,将年龄估计作为一个多类分类问题,必须面对的问题是,年龄组是有序和高度相关的,而不是独立的类。此外,将年龄量化成年龄组可能会出现量化误差和年龄组之间的模糊性问题。一些方法采用序数信息[Chang et al., 2011;Zhang等人,2017],用于获取年龄间的相对排序和解决年龄组间的模糊性。分布学习方法将年龄作为一个可学习的分布进行建模[Geng et al., 2014;侯等人,2017],以解决群体模糊问题。然而,使用序数信息和分布学习的方法通常需要额外的信息,如分布或排列之间的相似性。此外,它们通常需要更复杂的损失函数和算法

最先进的基于cnn的年龄估计方法建立在复杂的网络或网络的集合上[Simonyan和Zisserman, 2014;Chen等人,2017]。它们的模型通常体积庞大,模型大小超过500 MB,因此不适合在移动和嵌入式设备等内存和计算资源有限的平台上使用。一些努力已经被用于紧凑的通用型CNN模型,内存占用小[Howard et al., 2017;Huang等人,2017],使智能应用可以在这样的设备上运行。对于年龄估计,Niu等人提出了ORCNN, ORCNN的模型消耗了大约1.7 MB的内存[Niu等人,2016]。

本文提出了一种用于年龄估计的新型CNN模型——软阶段回归网络(SSR-Net)。该模型是紧凑的,只有0.32 MB的内存开销,并实现了最先进的性能。SSR-Net受DEX启发 [Rothe et al., 2015;Rothe等,2016a]。DEX将年龄估计问题转化为一个多类分类问题,通过计算年龄的期望值将分类结果转化为回归。DEX的一个问题是它需要大量的神经元,每个年龄层都有一个。最终的全连接层的连接数是特征数和神经元(类)数的乘积。因此,许多神经元导致许多参数和一个大的模型SSR-Net使用从粗到细的策略来解决这个问题。每个阶段只进行中等程度的分类,在当前的年龄组内,只进行少量的分类,如“相对年轻”、“大致正确”和“相对年长”。下一阶段在前一阶段指定的年龄组内细化决策。这样,每个阶段只需要少量的神经元,模型的大小可以大大减小。基于分类的方法的另一个问题是年龄的量化。SSR-Net通过为每个年龄组引入一个动态范围来解决这个问题。每组的年龄区间可以根据输入的人脸图像进行平移和缩放。这些想法被纳入一个软阶段回归的公式。为实现软阶段回归,提出了一种新的网络结构。与基于有序信息或分布学习的方法相比,SSRNet可以通过简单的回归损失和端到端的方式进行训练,而不需要额外的信息,如分布/等级相似性。实验表明,SSRNet优于现有的紧凑网络,包括MobileNet [Howard et al., 2017]、DenseNet [Huang et al., 2017]和ORCNN [Niu et al., 2016]。SSR-Net的性能与最先进的方法接近,模型尺寸更大,通常比我们的模型大1500倍以上。

2 Related work

在这一节中,我们回顾了最先进的年龄估计方法,将它们分为四类。


2.1 Regression

将年龄估计问题归结为回归问题是很直观的。Rothe等人将CNN特征输入支持向量回归[Chang and Lin, 2011]进行年龄估计[Rothe等人,2016b]。Agustsson等人提出了锚定回归网络(anchor Regression Network, ARN),该网络通过软分配将多个线性回归量组合到锚点上[Agustsson等人,2017]。正如之前的研究所指出的[Chang et al., 2011;Rothe等人,2016a],由于老龄化过程的随机性和映射的模糊性,基于回归的方法往往存在过拟合问题


2.2 Multi-Class Classification and Age Grouping

DEX通过多类分类进行年龄估计,然后计算期望值作为年龄估计[Rothe et al., 2015;Rothe等,2016a]。Liu等人同时使用回归和分类进行年龄估计[Liu et al., 2015]。Malli等人使用年龄组和他们的年龄转移分组来训练深度学习模型的集合[Malli等人,2016]。


2.3 Distribution Learning

考虑到分类常常存在群体模糊和量化错误,Geng等人提出了两种不同的自适应分布学习方法,分别是IIS-ALDL和BFGS-ALDL,用于年龄估计[Geng等人,2014]。分布的标准差根据KL散度更新。为了解决精确年龄训练数据不足的问题,Hou等人提出了标签分布学习在学习特定年龄时利用邻近年龄[Hou等人,2017]。


2.4 Ordinal Information

一些方法侧重于从数据集中学习相对排序来估计年龄。OHRank通过开发一个具有多种二元分类的成本敏感框架,成功地获取了年龄估计的排序关系[Chang et al., 2011]。rank - cnn在ImageNet等大数据集上对几个基本cnn进行预训练,并使用序号年龄标签对它们进行微调[Chen et al., 2017]。Zhang等人提出了一种将多重年龄比较映射为年龄估计的后验年龄分布的范式[Zhang et al., 2017]。


3 Soft Stagewise Regression Network

本节首先说明问题。然后,我们描述了两个关键思想,阶段回归和动态范围。最后给出了网络结构,并给出了软阶段回归的公式。


3.1 Problem Formulation

对于训练,我们通过最小化预测年龄和实际年龄之间的平均绝对误差(MAE)来寻找函数F
在这里插入图片描述


3.2 Stagewise Regression

DEX:将年龄估计的回归问题转化为一个多类分类问题,然后计算作为预测年龄的期望值
在这里插入图片描述

p:分布概率
μ:年龄小区间
V:[0,V]总年龄段
s:总共有s个年龄小区间,每个年龄小区间的宽度为V/s

为了得到更准确的估计,DEX将年龄区间精细划分,并将bin宽度设置为一岁,即,如果Y =[0…100],则有101个bin,这导致了在最后阶段的全连接(FC)层的大量参数和大量的内存消耗。

SSRNet:为了在不牺牲精度的前提下减小模型的尺寸,我们提出了一种由粗到精的多阶段预测策略。
在这里插入图片描述

阶段回归的优点是每个阶段的类的数量很少,导致更少的参数和更紧凑的模型
假设我们想估算0 ~ 90岁范围内的年龄(V =90),分成三个阶段(K = 3),每个阶段有三个小区间(s1 = s2 = s3=3)
在这里插入图片描述


3.3 Dynamic Range

将年龄区间统一划分为不重叠的区间,在处理年龄组模糊性和年龄连续性上缺乏灵活性。在粗粒度上,问题甚至更严重。我们通过为每个区间引入一个动态范围来解决这个问题;也就是说,我们允许每个箱子根据输入图像进行移动和缩放。
修正后的区间个数:
在这里插入图片描述
修正后的区间宽度:
在这里插入图片描述
修正后的区间指数:
在这里插入图片描述
【注:∆k和偏移向量ηi(k)都是由给定输入图像的回归网络的输出得到】


3.4 Network Structure

在这里插入图片描述
2-stream model :两个异构流
基本块的构成:3×3卷积、批处理归一化、非线性激活和2×2池化
异构的方式:每个流采用不同的激活函数(ReLU与Tanh)和不同的池化(平均池化与最大值池化)

【通过这种方式,他们可以探索不同的特征,并且他们的融合可以提高性能】


3.5 Soft Stagewise Regression

在这里插入图片描述


4 Experiments

本节首先介绍预处理、实验设置和竞争方法。接下来,我们报告IMDB-WIKI、MORPH2和MegaAge-Asian数据集上的实验。

4.1 Preprocessing and Experimental Setting

我们对几个年龄估算的基准数据集进行了实验,包括IMDB-WIKI [Rothe et al., 2015;Rothe等人,2016a], MORPH2 [Ricanek和Tesafaye, 2006],和MegaAge-Asian [Zhang等人,2017]数据集。按照之前工作建议的流程[Zhang et al., 2017;Niu等人,2016],为了进行预处理,所有的人脸图像都使用眼睛和鼻子等面部地标进行对齐。对齐后,对每张图像的人脸区域进行裁剪和调整,分辨率为64×64。请注意,该尺寸比以前使用的最先进的方法,如DEX [Rothe et al., 2016a]和ARN [Agustsson et al., 2017]的分辨率224×224小得多。低分辨率对于资源有限的移动和嵌入式设备是必要的

实验是在一台使用Intel i7 CPU和NVIDIA GTX1080Ti的机器上进行的。这个程序是用Keras实现的。用于软阶段回归的自定义层由Keras的自动微分提供支持。在训练中,随机激活常用的数据增强技巧,包括缩放、移位、剪切和翻转。除非另有说明,SSR-Net使用三个阶段,其中s1 = s2 = s3 = 3,即,SSR-Net (3, 3, 3)。采用Adam方法[Kingma and Ba, 2014]对90个epoch的网络参数进行优化。初始学习率为0.002,每30个epoch减少1倍IMDB数据集的批处理大小为128,其他数据集为50。SSR-Net的训练时间大约为3个小时,包括预训练的时间。


4.2 Competing Methods

我们将提出的SSR-Net模型与一组最先进的基于深度学习的年龄估计方法进行了比较。竞争的方法可以根据他们的模型大小大致分为两组,大模型和紧凑模型。

体积庞大的模型更加强调预测的准确性,它们通常更精确,但代价是庞大的网络模型。许多这样的模型是建立在VGG16上的[Simonyan和Zisserman, 2014]。DEX [Rothe et al., 2015;Rothe等人,2016a]将年龄估计的回归问题转化为一个多类分类问题,并使用期望值作为年龄估计。ARN [Agustsson et al., 2017]通过将多个线性回归量组合到软分配锚点上,解决了年龄回归问题。AP [Zhang et al., 2017]训练联合进行有序超平面分类和后验分布学习的网络。Hot [Rothe et al., 2016b]将VGG16特征输入支持向量回归(SVR)进行年龄预测。RankingCNN [Chen et al., 2017]集合了一系列的二元分类网络,每个网络都用序数年龄标签进行训练。

紧凑的模型强调减少内存占用,并可能牺牲精度的内存和速度。这一类的年龄估计模型较少。ORCNN [Niu et al., 2016]将有序回归问题转化为一系列的二元分类问题,并使用一个多输出CNN来共同解决这些子问题。MRCNN [Niu等人,2016]使用了类似的网络,但用于度量回归。MobileNet [Howard et al., 2017]将标准卷积替换为深度可分离卷积,以减少参数和计算开销。DenseNet [Huang et al., 2017]采用前馈方式将每一层与每一层连接起来,用较少的参数就可以获得良好的性能。MobileNet和DenseNet都是具有可调参数的通用网络模型。我们选择这些参数,使它们的模型大小大约为1mb,以便与SSR-Net进行公平的比较。

在这里插入图片描述


4.3 Experiments on IMDB-WIKI

IMDB-WIKI数据集是最大的带有年龄标签的人脸图像数据集。它包含了20284位名人的523051张脸。其中,460723张图片来自IMDB,其余62328张来自维基百科。

尽管IMDB-WIKI数据集在年龄估计方面是最大的,正如之前的工作所指出的那样(Tan等,2018),但它包含了更多的噪声,比如不准确的年龄和没有或多个面孔的图像。因此,用MAE进行性能评价是不合适的。像以前的大多数工作一样,我们用它来进行预训练此外,我们使用IMDB-WIKI数据集来观察不同方法的过拟合属性。IMDB和WIKI数据集分别使用80%的图像进行训练。另外20%作为验证集。由于IMDB数据集要大得多,所以我们首先在IMDB上训练我们的模型,并使用训练后的模型作为在WIKI数据集上训练的起点。图2比较了MobileNet、DenseNet和提议的SSRNet在IMDB、WIKI和MORPH2数据集上的培训过程。蓝色曲线表示训练错误的进展情况,而橙色曲线表示验证集的进展情况。可以看出,SSR-Net的蓝色和橙色曲线比其他两种方法更接近。这意味着我们在训练集上训练的模型可以更成功地应用于验证集。训练误差与验证误差之间的差异表明,MobileNet和DenseNet受过度拟合的影响更大。


4.4 Experiments on MORPH2

MORPH2是最流行的年龄估计基准数据集。它有大约55000张13000人的脸。他们的年龄从16岁到77岁不等。与之前的工作相似[Niu等,2016;Zhang等人,2017],我们将数据集随机分为独立训练集(80%)和测试集(20%)。MAE被用作性能评估的度量标准

在这里插入图片描述

表1报告了一组用于估计年龄的最先进的网络模型MORPH2的MAE值,包括体积庞大和体积紧凑的模型。为了获得更高的精度,体积庞大的模型通常使用更高分辨率的输入(224×224×3)来保存更多的信息。由于有大量的参数,它们通常会消耗500 MB以上的内存。对于具有大量参数的训练模型,需要更多的图像。因此,除了IMDB-WIKI,他们中的一些人还使用ImageNet [Russakovsky et al., 2015]进行预培训,这导致了更长的培训时间。Ranking-CNN采用了一个二进制分类网络的集合,并且消耗了更多的内存,高达2.2 GB。虽然取得了更好的性能,但由于体积庞大,在资源有限的移动和嵌入式设备上很难采用大体积模型。

另一方面,为了减少内存占用,紧凑模型通常采用低分辨率图像作为输入(64×64×3),并且包含更少的参数。提出的SSR-Net非常紧凑,只消耗0.32 MB的内存,而MobileNet和DenseNet大约消耗1 MB, MRCNN/ORCNN消耗1.7 MB。在使用MORPH2进行训练之前,我们使用IMDB-WIKI数据集进行预训练SSR-Net达到3.16 MAE,是紧凑模型中最好的。它甚至超过了几个笨重的模型,尽管它消耗的不到他们模型尺寸的1/1500。SSR-Net具有非常紧凑的模型(0.32 MB)和合理的性能,适合在移动和嵌入式平台上使用。图2的最后一行显示了MobileNet、DenseNet和SSR-Net在MORPH2上的训练/验证曲线。再次,与其他两个紧凑的模型相比,SSR-Net受过度拟合的影响较小

表1还报告了在GPU或CPU上运行的紧凑模型的推断时间。MobileNet略快于SSR-Net,但它的年龄估计性能差得多。DenseNet比SSR-Net慢得多,而且它的模型更大,性能更差。我们无法报告MRCNN和ORCNN的推断时间和训练进展,因为它们的源代码没有公开。

软动态范围的使用是SSR-Net的重要组成部分。如果没有它,SSR-Net的MAE是9.29。结果表明,动态范围所提供的灵活性是多阶段回归所必需的。从粗到细的逐级回归方法减少了神经元的数量,每个分类中的类都有一个神经元。对于SSR-Net(s1, s2, s3),需要(s1 + s2 + s3)个神经元。在类数大致相同的情况下,单阶段方法需要s1×s2×s3神经元。图3比较了具有不同配置的SSR-Net和ORCNN的参数数量。多阶段设计通常比单阶段设计参数更少,特别是当V较大时。此外,所提出的网络结构也有助于减少参数。总的来说,与ORCNN相比,SSR-Net在获得更好的MAE的同时消耗更少的参数。


4.5 Experiments on MegaAge-Asian

大部分的人脸图像数据集都包含西方人的图像,而人种在年龄估计中起着重要的作用。为了验证所提出的SSR-Net如何适用于其他种族,如亚洲人,我们还在超大亚洲数据集上进行了实验[Zhang et al., 2017]。它包含了40000张年龄在0到70岁之间的亚洲人的脸。按照Zhang等人的方案,保留3945幅图像进行检测,并以累积精度(CA)作为评价指标CA被定义为CA (n) = Kn / K×100, K是总数的测试图像,Kn代表测试图像的绝对误差小于n的数量。SSR-Net模型训练IMDB-WIKI作为培训和训练的起点MegaAge-Asian被用来训练SSR-Net的图像。对MobileNet和DenseNet采用了相同的培训程序。表2报告了比较方法的CA(3)和CA(5)。很明显,SSR-Net比其他两个紧凑型模型表现得更好。


5 Conclusion

本文提出了一种年龄估计的新方法——软阶段回归网络(SSR-Net)。它既紧凑又高效。在多个年龄估计数据集上也取得了良好的性能。阶段预测结构避免了大量的神经元,使模型更加紧凑。通过利用动态范围,量化误差可以得到更好的解决,使SSR-Net的性能可以与那些笨重的模型相媲美。SSR-Net具有体积小、计算效率高等优点,适用于移动或嵌入式设备的年龄估计。在未来,我们希望探讨我们提出的方法在其他回归问题的应用。

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值