一、摘要
这篇文章讨论了open-set(测试图片并没有在训练集中出现过)下的深度面部识别(FR) 问题,其中,我们假定在特定的度量空间中,理想面部特征的最大类内距离要小于最小类间距离。
为了有效达到上述标准,因此这篇文章提出了A-Softmax损失,使得CNN可以学习角度判别特征。
二、介绍
1. 研究背景:
人脸识别问题可分为人脸识别和人脸验证。前者指代将人脸对应其特定的身份,后者指代确定一对人脸是否属于同一身份。
close-set | open-set |
---|---|
测试图片在训练集中存在 | 测试图片在训练集中不存在 |
特征可分时,可以较好的解决分类问题 | 更接近实际,本质是找到有判别力的 large-margin的度量学习问题 |
2. 研究现状:
原始的softmax loss不能简单的通过角度分类,而Modified Softmax loss 明显加强了角度可分性,但不具有高内聚、低耦合的特点,A-Softmax loss则可以达到高内聚、低耦合的特点,而且效果很明显。
Softmax loss | Modified Softmax loss | A-Softmax loss |
---|---|---|
不能简单的通过角度分类 | 加强了角度可分性,但不具有高内聚、低耦合的特点 | 高内聚、低耦合,且j进一步增大角度分类的margin |
3. 文章思想:
由于Softmax loss得到的特征具有内在的角度分布,故可以将现有的将欧氏距离与Softmax loss结合的方法改良为将角度距离与Softmax loss结合。
例:对于二分类问题,Softmax loss的决策边界是:
(
W
1
−
W
2
)
x
+
b
1
−
b
2
=
0
,
(W_1-W_2)x+b_1-b_2=0,
(W1−W2)x+b1−b2=0,
我们规定x是特征向量,
∣
∣
W
1
∣
∣
=
∣
∣
W
2
∣
∣
=
1
,
b
1
=
b
2
=
0
||W1||=||W2||=1,b1=b2=0
∣∣W1∣∣=∣∣W2∣∣=1,b1=b2=0,则上式可等价为:
∣
∣
x
∣
∣
(
cos
(
θ
1
)
−
cos
(
θ
2
)
)
=
0
,
||x||(\cos(\theta_1)-\cos(\theta_2))=0,
∣∣x∣∣(cos(θ1)−cos(θ2))=0,
新的决策边界仅取决于
θ
1
\theta_1
θ1和
θ
2
\theta_2
θ2。(这就是上文中提到的Modified Softmax loss)
本文提出的A-Softmax方法引入了一个整形
m
(
m
≥
1
)
m(m\ge1)
m(m≥1)定量控制决策边界(角度距离的大小),在二分类问题中,类1和类2的决策边界分别表示为:
∣
∣
x
∣
∣
(
cos
(
m
θ
1
)
−
cos
(
θ
2
)
)
=
0
,
∣
∣
x
∣
∣
(
cos
(
θ
1
)
−
cos
(
m
θ
2
)
)
=
0
,
||x||(\cos(m\theta_1)-\cos(\theta_2))=0, ||x||(\cos(\theta_1)-\cos(m\theta_2))=0,
∣∣x∣∣(cos(mθ1)−cos(θ2))=0,∣∣x∣∣(cos(θ1)−cos(mθ2))=0,
三、相关工作
1. 度量学习
度量学习旨在学习一个相似度(距离)函数。
传统度量学习:距离度量矩阵
∣
∣
x
1
−
x
2
∣
∣
A
=
(
x
1
−
x
2
)
T
A
(
x
1
−
x
2
)
||x_1-x_2||_A=\sqrt(x_1-x_2)^TA(x_1-x_2)
∣∣x1−x2∣∣A=(x1−x2)TA(x1−x2)
深度度量学习:
先通过神经网络学习具有可判别性的特征
x
1
、
x
2
x_1、x_2
x1、x2,然后通过欧式距离等方式进行距离度量。其应用最广泛的损失函数为对比损失和三元组损失。
2. 深度人脸识别
目前在人脸识别任务上表现较好的CNN网络,主要都是建立在对比损失和三元组损失上,说明pen-set下的人脸识别可以通过判别性度量学习得到很好的解决。
L-Softmax loss | A-Softmax loss |
---|---|
隐含了角度的概念,但只能定性分析; | 可以定量控制角度margin |
适用于close-set | 适用于open-set(原因在于与超球面流形的联系) |