Kullback-Leibler divergence (KL散度)
KL散度也称为相对熵,是衡量两个概率分布间差异的非对称性度量,数值越大表示两个分布越相似。从Q到P的KL散度计算公式为
DKL(P∣∣Q)=∫P(x)logQ(x)P(x)dx
以P为真实分布,Q为拟合分布。最小化DKL(P∣∣Q)时,P大的地方Q也必须要大,P小的地方对Q的大小不太敏感;最小化DKL(Q∣∣P)时,P小的地方Q也必须要小,P大的地方对Q的大小不太敏感。
KL散度无上界,最小值为0。
交叉熵等与KL散度加信息熵
H(P,Q)=DKL(P,Q)+H(P)H(P,Q)=−∫P(x)logQ(x)dxH(P)=−∫P(x)logP(x)dx
Jensen-Shannon divergence (JS散度)
为了解决KL散度不对称的问题,JS散度的计算公式为
JSD(P∣∣Q)=21DKL(P∣∣M)+21DKL(Q∣∣M)M=2P+Q
Wasserstein distance (Earth Mover's distance)
相比于散度,Wasserstein距离是真正的距离,即使两个分布没有重合,Wasserstein距离也有意义。形象的理解是它把数据从分布P“移动成”分布Q时所需要移动的平均距离的最小值。
一般的计算公式为
Wp(P,Q)=(J∈J(P,Q)inf∫∥x−y∥pdJ(x,y))1/p
其中J(P,Q)是所有联合分布的集合,且满足边缘分布分别为P和Q。当该式取得下确界时,J表示了最优传输的方案。
特例
- p=1
W1(P,Q)=sup{∫f(x)dP(x)−∫f(x)dQ(x):f∈F}
其中F代表所有Rd→R,且满足一阶Lipschitz平滑的函数集
- d=1,有闭式解
Wp(P,Q)=(∫01∣∣F−1(z)−G−1(z)∣∣p)1/p
其中F,G分别为分布P,Q的累积分布函数
- d=1,从P采样X1,…,Xn,从Q采样Y1,…,Yn
Wp(P,Q)=(i=1∑n∥∥X(i)−Y(i)∥∥p)1/p
- P∼N(μ1,Σ1),Q∼N(μ2,Σ2)
W22(P,Q)=∥μ1−μ2∥2+B2(Σ1,Σ2)B2(Σ1,Σ2)=tr(Σ1)+tr(Σ2)−2tr[(Σ11/2Σ2Σ11/2)1/2]
Total Varation distance
δ(P,Q)=Asup∣P(A)−Q(A)∣=21∫∣p−q∣
Hellinger distance
H(P,Q)=∫(p−q)2
KL散度、Total Variation distanc、Helinger distance都是f-divergence的特例