论文题目:Hu, Guosheng, et al. "Attribute-Enhanced Face Recognition with Neural Tensor Fusion Networks." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2017.
原文链接:http://yang.ac/papers/Hu2017Attribute.pdf
1.摘要
本文作者提出了一种基于张量的图像特征融合方法。证明这种张量融合方法和神经网络等价之后,作者直接使用神经网络来学习并得到最终融合后的特征。最后的实验证明,融合后的特征在MultiPIE,CASIA NIR-VIS2.0和 LFW 数据集上都取得了不错的效果。
2.相关工作
得益于大数据和深度学习的支持,人脸识别技术最近取得了长足的进步。不过,由于特征提取方法的局限,人脸识别技术在处理姿态变换问题时尚有不足。比如当一个人正面面对我们和侧面面对我们时,传统的提取特征方法提取到的特征FRF(face recognition features)肯定是不同的,这就会降低我们的识别准确率。而另一种特征FAF(face attribute features)对于光照和分辨率以及姿态变换则很鲁棒。什么是FAF呢?顾名思义,就是用一组属性来描述人脸特征。比如,一个人的外貌可以描述为“大鼻子,大眼睛,小嘴巴,高鼻梁,厚眉毛”,无论这个人以如何的姿态面对镜头,他的这些属性特征是不会改变的(比如不管正脸还是脸,大鼻子还是大鼻子),所以说FAF具有一些很鲁棒的特性。但是,单独用“大鼻子,大眼睛,小嘴巴,高鼻梁,厚眉毛”这些属性来描述一个人外貌又显得不够有区分性,因为长这样的人实在太多了。所以,本文作者为了充分利用两种特征的互补性,将FRF和FAF二者特征用基于张量的方法融合。由于求解张量特别繁琐,作者发现这个求解过程完全可以用一个神经网络来等价。于是作者最终使用神经网络来获取最终融合后的特征,降低了计算的复杂程度,并且取得了不错的效果。
3.具体方法
3.1目标函数
以简单的多分类问题举例。
对于一个特征来说,特征x和标签y之间的关系可以用矩阵W来建模,他们的关系如下:
而对于多个特征,比如2个特征,其中x表示FRF特征,z表示FAF特征,他们的关系也可以用一个张量W来建模,关系如下:
在这里,W是一个融合模型,一个D*C*B的三阶张量,x是D维特征向量,z是B维特征向量。y是最后标签,是一个C维向量,表示目标被分成C类。注意,公式2里的的乘法均为张量点积(tensor dot product)。所以,如果要对M个样本进行建模,求得一个最终的分量W的话,最终的目标函数即为:
就是一般的损失函数了。这个公式里的W,融合了FRF和FAF并最终确定了特征的分类y。
3.2问题优化
公式3里的W是一个三阶张量,有着非常复杂的计算难度。所以我们首先对W使用Tucker分解,将W分解为如下形式:
S是一个KD*KC*KB的三阶张量。是KD*D维的矩阵,是KC*C的矩阵,是KB*B的矩阵。通过约束,我们可以有效地把参数从降低到。这样我们只需学习到即可。
将公式4插入公式2,得到
整理得到
再整理,可得
是克罗内克积。是张量S的二模展开(mode-2 unfolding),为KC*KDKB矩阵。
观察公式7,我们可以发现,融合特征是一个KC维的向量,而则扮演着一个分类器的角色。所以我们只要学习到,就可以使用来预测类别了。本文就使用一个神经网络来学习这4个变量,如下图所示:
训练这么一个神经网络,就可以用来分类目标了。
3.3基本特征提取
(1)FRF特征使用下面网络提取,激活函数采用maxout。最终的特征为全连接层的256维向量。
(2)FAF特征使用Lighten CNN(Z. S. Xiang Wu, Ran He. A lightened cnn for deep face representationarXiv:1511.02683, 2015. 5)。5个conv-activation-pooling单元之后连接一个256维的全连接层。训练网络时,标签去掉了""wear glasses"和"smiling"这些不具有判别性的属性,最后一共使用17个属性来训练网络。
4.实验
写的真好,我要赞他!