主要参考博文:
https://www.jianshu.com/p/43318a3dc715?isappinstalled=0
https://blog.csdn.net/chdhust/article/details/8506260

K-L散度

K-L散度,量化两种概率分布P和Q之间差异的方式,又叫相对熵。
如果数据的分布模型非常复杂,可以使用另外一种简单的、近似的分布来替代原模型,用K-L散度来很度量替代过程损失的信息量。

1、K-L散度的定义

K-L散度 初了解

2、熵

最重要的信息度量单位:Entropy
K-L散度 初了解
对数的底数取2的时候,可以把该等式的数值看作是编码信息所需要的最少二进制位个数bits。
如果有一个信息给我们,我们可以求解熵的数值获取这个信息数据最优编码方案的理论下界,也可以用于度量该信息的信息量。

3、信息损失

设p为观察得到的概率分布,q为另一分布来近似p,则p、q的K-L散度如下:
K-L散度 初了解
当对数的底数取2,则K-L散度表示信息损失的二进制位数。
前半部分形式和熵计算公式基本一致,后半部分则有不同,故K-L散度不是简单的熵值相减
K-L散度的计算公式不符合对称性(距离度量应该满足对称性),故也不能理解为不同分布之间的距离
也就是说,用p近似q和用q近似p,二者所损失的信息并不是一样的。
另外:用一个新分布去度量原始分布,信息必定有损失,故K-L散度必定大于0,这里可以用Jensen不等式证明上面等式始终大于0。
DKL(Q||P) = -∑Q(x)log[P(x)/Q(x)] = E[-logP(x)/Q(x)] ≥ -logE[P(x)/Q(x)] = -log∑Q(x)P(x)/Q(x) = 0

4、优化模型

一般通过最小化K-L散度,优化等效模型
给出新的分布模型,该模型的参数向量作为输入量
可以通过计算给出一个最小化K-L散度的参数向量,就是新的分布模型参量

5、交叉熵

在神经网络中往往使用交叉熵损失函数,而不是相对熵?
后续学习补充……

6、应用于推荐系统

在使用LDA(Latent Dirichlet Allocation)计算物品的内容相似度时
先计算出物品在话题上的分布,然后利用两个物品的话题分布计算物品的相似度。
比如,如果两个物品的话题分布相似,则认为两个物品具有较高的相似度,反之则认为两个物品的相似度较低。计算分布的相似度可以利用KL散度来计算:KL散度越大说明分布的相似度越低。

相关文章:

  • 2022-12-23
  • 2021-11-27
  • 2021-08-29
  • 2022-12-23
  • 2021-10-03
  • 2021-11-23
  • 2021-10-17
  • 2022-02-26
猜你喜欢
  • 2021-04-29
  • 2022-12-23
  • 2022-12-23
  • 2021-05-30
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案