C3AE: Exploring the Limits of Compact Model for Age Estimation

这篇文章是提出新的浅层网络来做人脸年龄估计的任务。

文章主要是利用小的浅层网络来处理低分辨率的图片,创新的点到不是很大,但是值得引人思考的是,对于一些低分辨率的图片是否可以不去用重量级的网络以及一些经典的连接就可以取得很好的效果。

文章分为三点去展开
第一是研究了一下mobilenet和shufflenet中的depth-wise卷积和标准的卷积在低分辨率图像任务中,是否真正能够减小网络参数。
第二是提出使用类似于one-hot的,两点表示人类年龄的方法。
第三是尽可能更多的采用图片的信息对年龄进行估计。

下面依次说明

一、重新审视标准的卷积在低分辨率图片中的压缩效果

这部分主要解释为什么本文采用标准卷积,而不是mobilenet和shufflenet里面提出的通道分离卷积,如群卷积和depth-wise卷积。
这里是从参数的量和对应的效果考虑。
首先考虑一个卷积层,输入维度为D_{F}\times D_{F}\times M,输出维度为D_{F}\times D_{F}\times N,其中D_{F}表示特征图的大小,M和N表示输入和输出卷积的通道数。对于mobilenet里面提出的depth-wise的分离卷积来说计算量为D^2_{K}\cdot M \cdot D^2_{F}+M\cdot N \cdot D^2_{F}。对于一个标准的卷积来说计算量为D^2_{K}\cdot \hat M\cdot \hat N \cdot D^2_{F}。上面D_{K}为卷积核的大小。那么通过上面两式相除就能得到计算量的比较了,如下式所示:
\frac{D^2_{K}\cdot M \cdot D^2_{F}+M\cdot N \cdot D^2_{F}}{D^2_{K}\cdot \hat M\cdot \hat N \cdot D^2_{F}}=\frac{M}{\hat M\cdot \hat N }+\frac{M\cdot N}{\hat M\cdot \hat N\cdot D^2_{K}}
上式中如果假设普通的卷积和depth-wise卷积的输入通道和输出通道是对应相等的,即M=\hat MN=\hat N,上式可以简化为\frac{1}{N}+\frac{1}{D^2_{K}}<1,可以看出这种情况下确实是depth-wise计算量更小。但是为了在低分辨率图片上使depth-wise卷积能和普通的卷积有相应的特征表达能力,常常会增加depth-wise卷积的通道数,即一般会有M>\hat MN>\hat N
举个例子来说明,假设使用32通道大小的普通卷积提取图像特征,在MobileNet-V2中会使用144甚至更大的通道数来提取图像特征。在这种情况,上式结果\frac{M}{\hat M\cdot \hat N }+\frac{M\cdot N}{\hat M\cdot \hat N\cdot D^2_{K}}=\frac{144}{\hat 32\cdot \hat 32 }+\frac{144\cdot 144}{\hat 32\cdot \hat 32\cdot 3^2}=2.39>1
所以从对图片特征提取效果和计算量综合考虑,本文采用了标准的卷积。

二、使用类似one-hot向量的两点表示法来表示年龄

对于给定的数据库,用符号{(I_{n},y_{n})}_{n=1,2,…,N}表示,其中I_{n}表示图片,y_{n}表示年龄的标签。对于深度学习模型可以用一个映射关系来表示,\mathcal{F}: \mathcal{I} \rightarrow \mathcal{Y}。对于任何年龄标签y_{n}都能使用z^1_{n},z^2_{n},(z^1_{n}\neq z^2_{n})表示:
y_n=\lambda_1 z^1_{n} + \lambda_2 z^2_{n}
其中\lambda_1,\lambda_2为权重,且\lambda_1+\lambda_2=1

对于一个给定的年龄区间[a,b],y_n\in [a,b]。将年龄区间均匀划分为K个小区间,那么y_n就能用z^1_{n}=\lfloor \frac{y_n}{K}\rfloor \cdot Kz^2_{n}=\lceil \frac{y_n}{K} \rceil \cdot K表示,其中\lfloor \cdot \rfloor\lceil \cdot \rceil分别表示向下和向上取整符。\lambda_1\lambda_2因子计算如下:
\lambda_1=1-\frac{y_n-z^1}{K}
\lambda_2=1-\frac{z^2-y_n}{K}

下面举例说明,如下图所示,给定年龄区间为[10,80],下图第二行是K=10的情况,第三行是K=20的情况。下图分别使用不同的划分来对年龄68和74进行两点表示。比如68,在K=10区间为[10,80]的情况下,可以表示为y_n=[0, 0, 0, 0, 0, 0.2, 0.8, 0]

1.png

其实扩展一下思考,年龄还可以用多点表示,例如50可以表示为50 = 0.5\times 0+0.5\times 100 = 0.2\times 10+0.2\times 40+0.2\times 60+0.2\times 90,但是这种表示方式意义不大,对模型的训练没有什么指导意义。

三、级联训练(Cascade Training)

先给出一个形象的网络结构图,如下图所示


2.png

从上图看出,流程用符号表示是这样的f: I_{n}\stackrel{Conv}{\longrightarrow} X \stackrel{W_1}{\longrightarrow} \textbf{y}_\textbf{n} \stackrel{W_2}{\longrightarrow} y_n

这步说白了就是将年龄的两点表示和真实的年龄用来同时指导网络模型的训练。
对于两点表示的loss计算采用KL-Divergence,如下所示
L_{kl}(y_n, \hat y_{n})=\sum_n D_{KL}(y_n| \hat y_{n})+\lambda ||W_1||_1=\sum_{n} \sum_{k}y^k_{n} log\frac{y^k_n}{\hat y^k_n}+\lambda ||W_1||_1

对于最终的年龄预估阶段采用的loss是L1距离,如下所示
L_{reg}(y_n, \hat y_{n})=\sum_{n}||y_n-\hat y_{n}||

最终采用的loss函数如下所示
L_{total}=\alpha L_{kl}+L_{reg}
上式中\alpha是个超参数

四、基于上下文的回归模型

为了更好的利用图片的信息,对于网络的输入文章将输入图片截取三次,如上图中的三种颜色的框,提取好三种输入后对特征进行concat操作,然后用于年龄的预估。

这里是怎么截取的,文章没有说的很明白

最后看看文章使用的网络结构如下表所示


3.png

文章没有很大的创新,主要是给人一种启发。人工设计的网络有可能存在冗余部分,对于一些任务没必要用很复杂的网络,比如本文的低分辨率图片的年龄预估,没必要使用很深的网络也能达到好的效果,文章还做了很多实验,详情可以查看原文。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,386评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,142评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,704评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,702评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,716评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,573评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,314评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,230评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,680评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,873评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,991评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,706评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,329评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,910评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,038评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,158评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,941评论 2 355

推荐阅读更多精彩内容