Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)

论文链接:

1.Abstract

人脸检测,人脸对齐和FAC问题都是被独立研究,没有探索过这三类问题的关系;2)人脸属性预测都是使用的相同的网络结构,但人脸属性的学习复杂度是不一样的;针对以上的两点问题,作者提出了一个多任务多标签CNN,DMM-CNN(deep multi-task multi-label CNN);DMM-CNN将人脸关键点和人脸检测联系起来,同时作者将人脸属性分为两组:客观(objective)属性和主观(subjective)属性。

Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)

2.Methodology

作者使用了resnet50进行特征提取,同时提取人脸关键点和人脸属性的特征;

作者使用了两个不同的空间金字塔池化(SPP)层,提取不同的语言信息,用于主观属性和客观属性分类;

Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)

 

Objective Attributes and Subjective Attributes

作者认为主观属性通常以一种微妙的形式,使得CNN难以学的决策边缘,如微笑,年轻这些主观属性,客观属性如戴帽子,戴眼镜;客观属性学习使用1-level SPP层和两个全连接层分别输出1024和22个维度;学习主观属性使用3-level SPP层和三个全连接层,输出特征分别是2048维,1024维,18维。网络设计主观属性编码高维语义信息(该信息更有利于客观属性);

The SPP Layer

SPPlayer可以产生固定长度的输出,无论输入尺寸怎样,有效避免了裁剪输入图片;使用SPP后,可以输入任意尺寸的脸部图片;

 

Facial Landmark Detection(FLD)

人脸属性分类是主要任务,而关键点分类是辅助任务,同时标注的关键点增添至72个。

Training

为了处理不同人脸属性,作者提出了动态权值计划,自动给不同的属性赋予权值;同时为了减少样本不均衡问题,作者使用了自适应的阈值策略预测多种属性标签;

文中,作者使用了均方误差(MSE)loss;

1)人脸关键点检测(FLD):MSE在人脸关键点上的形式

Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)

N:训练图片的总数量,Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)预测的人脸关键点,Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)真实标注的人脸关键点;

2)人脸属性分类:MSE loss在FAC上形式:

Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)

Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)分别代表了预测属性结果和真是标签结果;

3)联合loss函数:联合loss函数分别是包括人脸属性分类和人脸关键点检测:

Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)

Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)是人脸关键点总数,Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)代表第j个人脸关键点权值矢量(在第t次迭代中)。Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)是回归参数,设置为0.5.

  1. 动态加权计划。作者提出使用参考文献【31】进行动态加权。

Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)

Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)就是验证loss(基于公式2计算)。但loss没有下降时,就给予值较小的权值,反之,基于较大的权值;

在训练初始化时,容易分类的属性基于较大的权值,以便MSE loss可以快速下降;在最后的训练阶段,网络主要训练难以分类的属性。

5)自适应阈值策略。作者预测第j个人脸关键点基于网络结构的最终输出:

Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)

Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)是阈值参数,为了留意样本不均衡带来的影响,作者提出的自适应阈值策略:

Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)

Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)是第轮迭代的阈值;Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)代表了验证集样本数量;Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)分别代表了在t轮迭代中假样例和假阴例的数量;当Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)大,而Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)较小时,阈值应当大一些,Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)用于调整阈值;Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)就是固定阈值设置为0.01.DMM-CNN算法总结如算法1.

Deep Multi-task Multi-label CNN for Effective Facial Attribute Classification(FAC)

看此篇论文的疑问:

1)SPP很耗时间?

2)都是客观属性(如:戴帽子,戴口罩)又当怎么处理;

3)人脸关键点检测单独在某类属性中使用又对模型有什么帮助;