Earth Mover’s Distance
先说直方图,直方图可以用集合来表示,
s
=
{
s
1
,
s
2
,
.
.
.
,
s
n
}
s=\{s_1, s_2,...,s_n\}
s={s1,s2,...,sn},其中
s
j
=
(
m
j
,
w
j
)
s_j=(m_j, w_j)
sj=(mj,wj),
m
j
m_j
mj表示直方图第
j
j
j组,
w
j
w_j
wj表示第
j
j
j组的统计数量。那么已知两个直方图
P
=
{
p
1
,
p
2
,
.
.
.
,
p
n
}
=
{
(
m
p
1
,
w
p
1
)
,
(
m
p
2
,
w
p
2
)
,
.
.
.
,
(
m
p
n
,
w
p
n
)
}
Q
=
{
q
1
,
q
2
,
.
.
.
,
q
n
}
=
{
(
m
q
1
,
w
q
1
)
,
(
m
q
2
,
w
q
2
)
,
.
.
.
,
(
m
q
k
,
w
q
k
)
}
P=\{p_1, p_2,...,p_n\}=\{(m_{p_1}, w_{p_1}), (m_{p_2}, w_{p_2}),...,(m_{p_n}, w_{p_n})\} \\ Q=\{q_1, q_2,...,q_n\}=\{(m_{q_1}, w_{q_1}), (m_{q_2}, w_{q_2}),...,(m_{q_k}, w_{q_k})\}
P={p1,p2,...,pn}={(mp1,wp1),(mp2,wp2),...,(mpn,wpn)}Q={q1,q2,...,qn}={(mq1,wq1),(mq2,wq2),...,(mqk,wqk)}
现在要把直方图
P
P
P变为
Q
Q
Q,将直方图的每一组看作是一堆土,
m
j
m_j
mj表示分组,
w
j
w_j
wj表示第
m
j
m_j
mj组中土的质量,变换过程就是一个推土的过程。定义一个距离矩阵
D
=
[
d
i
j
]
D=[d_{ij}]
D=[dij]表示
m
p
i
m_{p_i}
mpi与
m
q
j
m_{q_j}
mqj之间的距离,定义
F
=
[
f
i
j
]
F=[f_{ij}]
F=[fij]表示每次从
m
p
i
m_{p_i}
mpi搬运
f
i
j
f_{ij}
fij的土到
m
q
j
m_{q_j}
mqj中。如图1,搬运过程可以看作将
P
P
P中的的每个分组都独立的分成多个分块
f
i
j
f_{ij}
fij,再从
p
i
p_{i}
pi中取出放到
q
j
q_{j}
qj中。那么最小化搬运距离
min
∑
i
=
1
n
∑
j
=
1
k
f
i
j
d
i
j
\min {\sum_{i=1}^n{\sum_{j=1}^k{f_{ij}d_{ij}}}}
mini=1∑nj=1∑kfijdij
并且使得
f
i
j
≥
0
,
1
≤
i
≤
n
,
1
≤
j
≤
k
∑
j
=
1
k
f
i
j
≤
w
p
i
,
1
≤
i
≤
n
∑
i
=
1
n
f
i
j
≤
w
q
j
,
1
≤
j
≤
k
∑
i
=
1
n
∑
j
=
1
k
f
i
j
=
min
{
∑
i
=
n
k
w
p
i
,
∑
j
=
1
k
w
q
j
}
f_{ij} \ge 0, 1 \le i \le n, 1 \le j \le k \\ \sum_{j=1}^k{f_{ij}} \le w_{p_i}, 1 \le i \le n \\ \sum_{i=1}^n{f_{ij}} \le w_{q_j}, 1 \le j \le k \\ \sum_{i=1}^n{\sum_{j=1}^k{f_{ij}}} = \min {\left \{\sum_{i=n}^k{w_{p_i}}, \sum_{j=1}^k{w_{q_j}} \right\} }
fij≥0,1≤i≤n,1≤j≤kj=1∑kfij≤wpi,1≤i≤ni=1∑nfij≤wqj,1≤j≤ki=1∑nj=1∑kfij=min{i=n∑kwpi,j=1∑kwqj}
解出最优的
F
F
F,就可以计算Earth Mover’s距离(EMD,别问我为啥不翻译这个,推土距离什么的太难听了)如下
E
M
D
=
∑
i
=
1
n
∑
j
=
1
k
f
i
j
d
i
j
∑
i
=
1
n
∑
j
=
1
k
f
i
j
\mathrm{EMD} = \frac {\sum_{i=1}^n{\sum_{j=1}^k{f_{ij}d_{ij}}}}{\sum_{i=1}^n{\sum_{j=1}^k{f_{ij}}}}
EMD=∑i=1n∑j=1kfij∑i=1n∑j=1kfijdij
EMD其实也就是上面最优搬运距离的期望。关于EMD可以参考图像检索:EMD距离(Earth Mover’s Distance)及纠错
Wasserstein Disstance
Wasserstein距离其实就是Earth Mover’s距离,不过呢,上面提到的Earth Mover’s距离是基于直方图的,离散的。如何用Earth Mover’s距离去衡量两个分布的距离呐?首先,可以看将概率密度函数看作是连续的直方图
那么对数据进行采样得到的样本可以被看作是直方图的统计,概率高的区间采样得到的样本数量也就越多,那么将EMD改写下,WGAN的论文里就提出了Wasserstein距离如下
W ( P r , P g ) = inf γ ∈ Π ( P r , P g ) E ( x , y ) ∼ γ [ ∣ ∣ x − y ∣ ∣ ] W(\mathbb{P}_r, \mathbb{P}_g)=\inf_{\gamma \in \Pi(\mathbb{P}_r, \mathbb{P}_g)}{\mathbb{E}_{(x,y)\sim\gamma}[||x-y||]} W(Pr,Pg)=γ∈Π(Pr,Pg)infE(x,y)∼γ[∣∣x−y∣∣]
其中, inf \inf inf是求解函数的下界, P r \mathbb{P}_r Pr和 P g \mathbb{P}_g Pg是联合分布 γ ( x , y ) \gamma(x,y) γ(x,y)的边缘分布, Π ( P r , P g ) \Pi(\mathbb{P}_r, \mathbb{P}_g) Π(Pr,Pg)是满足 γ \gamma γ分布的所有样本集合, ( x , y ) (x,y) (x,y)是从真实数据和生成数据中采样得到的样本对, γ ( x , y ) \gamma(x,y) γ(x,y)表明了每次由 x x x向 y y y搬运的量, ∣ ∣ x − y ∣ ∣ ||x-y|| ∣∣x−y∣∣表明了从 x x x到 y y y的距离。那么 W W W和 E M D \mathrm{EMD} EMD其实是等价的。作者在WGAN中提出使用Wasserstein距离其实也就是想让生成数据的分布逐渐向真实数据的分布靠拢。
以上是我对Wasserstein距离的理解,当然因为本身EMD涉及到测度学的知识以及一些其他我没学习过的知识,这里只是用我所知道去理解EMD以及Wasserstein距离,可能会有理解问题和不严谨的推导,欢迎指正