Entropy

来源:互联网 发布:全球程序员节直播视频 编辑:程序博客网 时间:2024/06/05 01:57

先出结论:

  • 信息熵:编码方案完美时,最短平均编码长度的是多少。
  • 交叉熵:编码方案不一定完美时(由于对概率分布的估计不一定正确),平均编码长度的是多少。
  • 相对熵:编码方案不一定完美时,平均编码长度相对于最小值的增加值。

                             平均编码长度 = 最短平均编码长度 + 一个增量                 

1: 熵

熵的本质是香农信息量log1/p的期望;也有解释是最短平均编码长度。
其数学定义,X为离算型随机变量:

H(X)=E[log(p)]=xp(x)log(p(x))

X为连续型随机变量:
H(X)=(xX)p(x)log(p(x))dx

当X为0-1分布时,熵与概率p的关系如下图:
Entropy

2:交叉熵

  编码方案不一定完美时(由于对概率分布的估计不一定正确),平均编码长度的是多少在信息理论中,交叉熵主要是用于衡量两个概率分布间的差异性信息。
  通常两个概率分布p、q,其中p表示真实分布,q表示非真实分布,在相同的事件中,用非真实分布q来表示某个事件发生所需要的平均比特数。
  其数学表达:

H(p,q)=Ep[log(q)]=xp(x)log(q(x))=H(p)+DKL[(p||q)]

   其中H(p)为p的信息熵,后者是相对熵。
  
  在ML中等效于相对熵,其作用:用来估计当前训练得到的概率分布于真实分布间有多大的差异,若p是固定分布,于训练无关,q是估计的分布应尽量等于p,两者一直时,交叉熵就等于p的信息熵。
  

3:相对熵

  本质含义:由于编码方案不一定完美,导致的平均编码长度的增大值。
  其数学表达,离算型:

DKL(p||q)=xp(x)log(p(x)/q(x))

  连续型:
DKL(p||q)=p(x)log(p(x)/q(x))dx

其作用:
  1. 用来衡量2个取值为正数的函数的相似性;
  2. 2个完全相同的函数,相对熵为0;
  3. 差异越大,相对熵越大;
  4. 概率分布函数,或 概率密度函数,若函数值均大于0,相对熵可以度量两个随机分布的差异性;
  5. 相对熵不对称,没有交换律。


欢迎大家一起交流学习,邮箱为:qx_zhang43@163.com


参考文章:

https://www.zhihu.com/question/41252833
http://blog.csdn.net/rtygbwwwerr/article/details/50778098

原创粉丝点击