CCBR2018
Sheng Chen, Yang Liu, Xiang Gao, Zhen Han
一、简介
提出了一类极其高效的CNN模型MobileFaceNets,使用不到100万的参数,专门为移动和嵌入式设备上的高精度实时人脸验证而设计。
在人脸特征嵌入CNN的最后一个卷积层之后,使用全局深度卷积层而不是一个全局平均池化层或者一个全连接层来输出一个有区别的特征向量。
二、面向人脸验证的移动网络弱点
对于人脸识别任务,有全局平均池化层的CNN比没有全局平均池化层的CNN准确率要低。
人脸预处理方法(preprocess):使用MTCNN检测图像中的人脸和五个面部标志。然后通过根据五个标志点通过相似性变换进行人脸对齐。对齐的人脸图像大小为112×112,RGB图像中的每个像素通过减去127.5然后除以128进行归一化。
人脸嵌入网络(CNN stem):人脸嵌入CNN将每个对齐的面部映射到特征向量。最后一个卷积层输出一个7×7大小的特征图。我们将这个特征图表示为FMap-end。
尽管FMap-end的角单元和中心单元的理论感受野大小相同,但是角单元的有效感受野比中心单元的有效感受野要小得多。当输入图像是对齐的人脸时,角单元比中心单元携带更少的人脸信息,即不同的单元对提取人脸特征向量的重要性不同。
FMap-end由于维数太高不适合直接用于人脸特征向量。全局平均池化层对FMap-end的所有单元同等重视,这是不符合上述分析的。全连接层可以将FMap-end投影到紧凑的人脸特征向量,但这给模型增加了大量的参数。
三、模型
为了以不同的重要性处理不同的FMap-end单元,我们使用全局深度卷积层(GDConv)来代替全局平均池化层。
GDConv层是深度卷积层,内核大小等于输入大小,pad=0,stride=1。公式如下:
F:输入的特征图,尺寸为W×H×M。
K:深度卷积核,尺寸为W×H×M。
G:输出,尺寸为1×1×M。
GDConv层实际上就是对M个通道依次求出一个值。最后输出M个大小为1×1的特征图。
假如FMap-end的大小为7×7×1280,那么经过一个7×7×1280的GDConv后得到1280维的特征向量,参数量只有62720。
MobileFaceNet:
c是输出通道数;n是重复次数;s是步长数;t是扩展倍数(用于bottleneck的升维和降维);激活函数使用的是PReLU;bottleneck层使用3×3卷积核。
MobileFaceNet-M:相对于MobileFaceNet,移除了GDConv之后的1×1卷积层。
MobileFaceNet-S:相对于MobileFaceNet,移除了GDConv之前和之后的1×1卷积层。
四、实验
LFW:
MegaFace: