本系列已完结,全部文章地址为:
1 交叉熵
上一篇其实已经给出了交叉熵(Cross Entropy)的定义
在深度学习的训练中,KL散度可以表示真实分布与拟合分布之间的距离,而KL散度=交叉熵-熵,真实分布的熵是固定的,不管拟合出什么分布,真实分布的熵是不变的,因此经常会看到使用交叉熵作为损失函数。
使用交叉熵代替均方误差还可以缓解梯度消失问题,见此文的说明熵、交叉熵、KL散度、JS散度 - Mrfanl - 博客园
特别地,对于二分类问题,P+Q=1,因此交叉熵可表示为
其中y表示实际的标签,表示预测的标签。
2 JS散度
KL散度是非对称的,JS散度解决了此问题。
。在GAN博文中就用到了JS散度。GAN对抗生成网络(一)——基本原理及数学推导_生成对抗网络推导-CSDN博客
3 Wasserstein距离
3.1 概念
Wasserstein距离也叫堆土机距离(Earth Mover's Distance),假设概率分布A是土堆的分布状况,概率分布B是目标土堆的分布状况,用堆土机将A中的土堆削填变成B,堆土机路线最短距离称为堆土机距离。
以上是对“堆土”字面意义的理解,笔者再举一个例子,比如一个车企需要在全国各地设置制造厂,每个制造厂都要分配车床机器。分配机器的数量取决于当地政策、劳动力成本、上游零件运输成本、下游经销商运输成本、仓库空间等。当前车企在A省有3台机器,B省有4台机器,C省有1台机器,经过测算,最佳的分配是A省有1台,B省有5台,C省有2台。因此车企需要重新布局机器,在各省之间运输机器,达到最佳分配状态。考虑到A、B、C三省之间的距离,最短的运输距离就是堆土机距离。
3.2 数学表示
借用李宏毅老师的课件,符号表示如下:
| 符号 | 含义 |
| P | 分布之一 |
| Q | 分布之一 |
| P分布中的取值 | |
| Q分布中的取值 | |
| 从P到Q每一个位置挪动的大小 | |
| B | moving plan对应的距离 |
堆土方法称为moving plan,可将其表示为矩阵,矩阵中的每一个元素表示从
挪动到
的大小。则单个moving plan的距离为
表示遍历所有的P和Q位置,每一对位置都计算挪动的大小乘挪动的距离,求和后得到该moving plan的距离。可以看到,如果
,表示P分布当前位置维持现状的部分,没有发生挪动,产生的距离是0;如果二者相差较远,表示挪动距离较大,则产生的距离较大。
对于所有的moving plan,最小的距离即为堆土机距离
GAN的训练是减小两个分布的JS散度,而WGAN实际上就是使用了Wasserstein距离优化GAN模型。在GAN的系列中,笔者之后会详细讲解。
参考资料
熵、交叉熵、KL散度、JS散度 - Mrfanl - 博客园
交叉熵、相对熵(KL散度)、JS散度和Wasserstein距离(推土机距离)
李宏毅WGAN课程
983

被折叠的 条评论
为什么被折叠?



