《A Lightened CNN for Deep Face Representation》论文解读
本文来自中科院,原文地址为:
代码地址:
https://github.com/AlfredXiangWu/face_verification_experiment
正如前面《人脸验证:DeepID》博客所说,人脸验证任务中需要关心两个问题:一个是人脸特征提取,另一个就是如何判断是不是同一个人。特征提取的方法有LBP等传统方法,也有DeepID这样的深度学习方法。判断是不是同一个人的方法简单的有余弦相似度,复杂的有Joint Bayesian。本文主要的内容集中于人脸特征提取,就是使用Lighten CNN提取特征。
概述
为了得到更好的准确度,深度学习的方法都趋向更深的网络和多个模型ensemble,这样导致模型很大,计算时间长。本文提出一种轻型的CNN,在取得比较好的效果同时,网络结构简化,时间和空间都得到了优化,可以跑在嵌入式设备和移动设备上。
相关研究
用CNN进行人脸验证分为三种。一种是使用人脸分类的任务训练CNN提取特征,然后用分类器判断是不是同一个人。第二种是直接优化验证损失。第三种是将人脸识别和验证任务同时进行。本文框架是属于第一种。
网络结构
本文网络结构如上图所示,和DeepID一样,在训练时使用人脸分类的任务进行训练,最后得到256维的人脸特征。具体而言,网络结构如下,文章提出了两种结构,网络的主要结构是一样的,文章更多是集中在了第一种结构。
网络最后一层是Sofmax层,实现分类的目的,fc1的结果就是人脸的特征。
MFM激活函数
本文使用了一种称为MFM的激活函数,这个结构也很简单。在输入的卷积层中,选择两层,取相同位置较大的值。
写成公式: