@article{chopra2005learning,
title={Learning a similarity metric discriminatively, with application to face verification},
author={Chopra, Sumit and Hadsell, Raia and Lecun, Yann},
volume={1},
pages={539–546},
year={2005}}
@article{hadsell2006dimensionality,
title={Dimensionality Reduction by Learning an Invariant Mapping},
author={Hadsell, Raia and Chopra, Sumit and Lecun, Yann},
volume={2},
pages={1735–1742},
year={2006}}
概
这俩篇论文介绍了一种contrastive loss (最近很火, 但是感觉虽然核心思想是一致的, 现在的contrastive loss在此基础上更进了一步), 实际上就是最大化类间距离, 最小化类内距离.
主要内容
genuine 和 impostor
首先, 给定数据集
D
=
{
(
x
i
,
y
i
)
}
i
=
1
N
\mathcal{D}=\{(x_i,y_i)\}_{i=1}^N
D={(xi,yi)}i=1N, 其分别代表数据和标签, 根据此数据集进行配对,
X
i
j
=
(
x
i
,
x
j
)
,
X_{ij}=(x_i, x_j),
Xij=(xi,xj),
若对应的
y
i
=
y
j
y_i=y_j
yi=yj则称该对为genuine(真实的), 否则为impostor(虚假的), 记为
Y
i
j
Y_{ij}
Yij(1:genuine, 0:impostor).
一个很自然的想法就是真实的对之间的距离应该小(就是最小化类内距离), 虚假对的数据间的距离大(即最大化类间距离).
不过在做这个工作之前, 我们需要通过一个映射
G
W
G_W
GW将
x
x
x映射到一个低维的空间中去, 用现在的话讲, 这是一个提特征的过程, 并将上面的最大最小化的思想套用到这些特征
G
W
(
x
)
G_W(x)
GW(x)上去. 用
E
W
(
X
i
j
)
:
=
∥
G
W
(
x
i
)
−
G
W
(
x
j
)
∥
E_W(X_{ij}) := \|G_W(x_i)-G_W(x_j)\|
EW(Xij):=∥GW(xi)−GW(xj)∥
来表示一对数据之间的"能量" (实际上就是特征的距离).
如何最大最小呢? 最小化下面的式子:
L
(
W
)
=
∑
i
,
j
Y
i
j
L
G
(
E
W
(
X
i
j
)
)
+
(
1
−
Y
i
j
)
L
I
(
E
W
(
X
i
j
)
)
.
\mathcal{L}(W)=\sum_{i,j} Y_{ij}L_G(E_W(X_{ij}))+(1-Y_{ij})L_{I}(E_W(X_{ij})).
L(W)=i,j∑YijLG(EW(Xij))+(1−Yij)LI(EW(Xij)).
文1
L
G
(
E
W
)
:
=
2
Q
(
E
W
)
2
L
I
(
E
W
)
:
=
2
Q
exp
(
−
2.77
Q
E
W
)
,
L_G(E_W):= \frac{2}{Q}(E_W)^2 \\ L_I(E_W):= 2Q \exp(-\frac{2.77}{Q}E_W),
LG(EW):=Q2(EW)2LI(EW):=2Qexp(−Q2.77EW),
其中
Q
Q
Q为一常数, 表
E
W
E_W
EW的上界, 不是很理解为什么要这么构造.
文2
L
G
(
E
W
)
:
=
1
2
(
E
W
)
2
L
I
(
E
W
)
:
=
1
2
{
max
(
0
,
m
−
E
W
)
}
2
,
L_G(E_W):= \frac{1}{2}(E_W)^2 \\ L_I(E_W):=\frac{1}{2} \{\max (0, m-E_W)\}^2,
LG(EW):=21(EW)2LI(EW):=21{max(0,m−EW)}2,
其中
m
m
m是认为给定的一个margin.
注: 文1中并没有注明去何种范数, 但有这么一句话:
Second, we must emphasize that using the square norm instead of the L1 norm for the energy would not be appropriate.
照这个说法, 那就应该用 L 1 L_1 L1, 可第二篇是显示使用 L 2 L_2 L2的, 难道就因为第二篇是应用在数据降维中的缘故?
实际上,
G
W
G_W
GW就是一个压缩映射, 文二用此来进行数据降维, 而文一在此基础上进行分类. 按照现在的做法, 就应该是利用
G
W
G_W
GW作为一个特征提取器, 然后再其后加一个分类器用于分类, 文1是假设每一个个体(类)服从一个多维的正态分布, 这个正态分布用这个类中的数据(经过映射后的特征)来估计. 假设每个类的概率密度函数为
ϕ
i
\phi_i
ϕi, 便用
ϕ
i
(
x
)
ϕ
i
(
x
)
+
c
i
,
\frac{\phi_i(x)}{\phi_i(x)+c_i},
ϕi(x)+ciϕi(x),
来表示
x
x
x与第
i
i
i类的样本关系为genuine的可能性.
c
i
=
m
e
a
n
{
ϕ
i
(
x
)
:
x
∈
D
,
y
≠
i
}
.
c_i = \mathrm{mean} \{\phi_i(x):x\in\mathcal{D}, y\not = i\}.
ci=mean{ϕi(x):x∈D,y=i}.
没理解错应该是这个意思.