熵,联合熵,条件熵,互信息,相对熵(KL散度),交叉熵的理解

熵:可以表示一个事件A的自信息量,也就是A包含的所有信息量。

联合熵

两个随机变量X,Y的联合分布,可以形成联合熵Joint Entropy,用H(X,Y)表示。

边缘分布p(x)等于联合分布p(x,y)的和,可得:

熵,联合熵,条件熵,互信息,相对熵(KL散度),交叉熵的理解_第1张图片

条件熵

条件熵的定义,有:H(Y|X)=H(X,Y)-H(X)

互信息

用I(X,Y)表示:两个随机变量X,Y的互信息定义为X,Y的联合分布和各自独立分布乘积的相对熵。

计算下H(Y)-I(X,Y)的结果,如下:

熵,联合熵,条件熵,互信息,相对熵(KL散度),交叉熵的理解_第2张图片

相对熵(KL散度)

相对熵:可以用来表示从事件A的角度来看,事件B有多大不同。同一个随机变量 x 有两个单独的概率分布 P(x) 和 Q(x),KL散度可以衡量这两个分布的差异。如果用P来描述目标问题,而不是用Q来描述目标问题,得到的信息增量。:

熵,联合熵,条件熵,互信息,相对熵(KL散度),交叉熵的理解_第3张图片

KL散度不具备有对称性: 

交叉熵

交叉熵:可以用来表示从事件A的角度来看,如何描述事件B。

交叉熵也不具备对称性:

KL散度 = 交叉熵 - 熵

由于KL散度可以分解为熵和交叉熵,由P自己的熵与Q在P上的期望共同决定。

熵,联合熵,条件熵,互信息,相对熵(KL散度),交叉熵的理解_第4张图片

为了让学到的模型分布更贴近真实数据分布,需要最小化模型数据分布训练数据之间的KL散度,而因为训练数据的分布是固定的,因此最小化KL散度等价于最小化交叉熵。

A就是数据的真实分布:

B就是模型从训练数据上学到的分布:

参考资料:

https://www.zhihu.com/question/65288314/answer/244557337

你可能感兴趣的:(机器学习,深度学习)