码迷,mamicode.com
首页 > 其他好文 > 详细

信息熵

时间:2018-10-27 23:32:28      阅读:236      评论:0      收藏:0      [点我收藏+]

标签:gen   line   一个   预测概率   期望   作用   变量   rop   log   

1. 信息熵

1.1 信息熵的数学本质

  • 一个随机变量或系统所包含信息量的数学期望

1.2 信息熵的物理意义(信息论解释)

  • 对随机变量的所有取值进行编码所需的最短编码长度
  • 消除随机变量的不确定性所需的最短编码长度即为信息熵

1.3 随机变量X的熵:

\(H(X) = -\sum_{i=1}^{n} P(x_i) logP(x_i)\)

1.4 信息熵的补充理解:

  • 信息熵衡量了系统的不确定性,两者成正比。信息熵不是针对单个事件而言的,而是针对随机变量的整个取值集合而言的;
  • 发生概率P越小的事件包含的信息量越大,两个独立事件的信息量等于它们各自信息量之和:$-log(P_1 P_2) = -log(P_1) - log(P_2)$
  • log函数的底数:
    • 底数常常选择为2,信息单位为比特bits;
    • 底数选择为自然常数e时,单位被称为奈特nats;

2.KL散度 (相对熵Relative Entropy)

2.1 KL散度的作用

  • KL散度(Kullback–Leibler divergence, KLD)用于衡量两个概率分布之间的差异,且此差异与KL散度成正比

2.2 KL散度的物理意义(信息论解释)

  • 若P表示真实分布,Q表示P的拟合分布,KL散度表示用概率分布Q来拟合真实分布P时产生的信息损耗;
  • 或者说KL散度衡量了基于概率分布Q进行编码所需的额外编码长度

2.3 KL散度的求解公式

\(D_{KL}(p||q) = \sum_{i=1}^{n} p(x_i) log \frac{p(x_i)}{q(x_i)} = -\sum_{i=1}^{n} p(x_i) * log q(x_i) - H(p) = CE(p, q) - H(p)\)

2.4 KL散度的重要性质

  • 非负性,即\(D_{KL}(p||q)\geq 0\)
  • 不对称性,即\(D_{KL}(p||q)\neq D_{KL}(q||p)\)

3.交叉熵(Cross Entropy)

3.1 交叉熵的作用

  • 衡量在给定的真实概率分布下,使用非真实分布所指定的策略消除系统的不确定性所需要付出的努力的大小

3.2 交叉熵公式

\(CE(p, q) = -\sum_{i=1}^{n} p(x_i) * log q(x_i) = D_{KL}(p||q) + H(p)\)

其中p为真实概率分布,q为预测概率分布

3.3 交叉熵作为损失函数

  • 最小化交叉熵等价于最小化KL散度: KL散度等于交叉熵减去数据真实分布的熵,而后者是确定的

  • 最小化交叉熵等价于最大化似然函数

\(A_i = q(x_i)^{y_i}; \ \ B_i = (1-q(x_i))^{(1-y_i)}\)
样本\(x_i\)取1的概率为\(q(x_i)\)

交叉熵:\(Loss(y, \hat{y}) = -\sum_{i=1}^{n} y_i * log(\hat{y_i}) = -\sum_{i=1}^{n} [y_i * log(q(x_i)) + (1-y_i) * log(1-q(x_i))] = -\sum_{i=1}^{n} [log(q(x_i)^{y_i}) + log(1-q(x_i))^{(1-y_i)}] = -\sum_{i=1}^{n} log(A_i*B_i) = -log [\Pi_{i=1}^{n}(A*B)]\)

似然函数:\(\Pi_{i=1}^{n}(A*B)\)

  • 交叉熵越低,则模型预测的概率分布越接近真实分布
  • 交叉熵为凸函数,具有全局最优解,而MSE为非凸函数,易陷入局部最优
  • 使用sigmoid函数在梯度下降时能避免均方误差损失函数学习速率降低的问题,因为学习速率可以被输出的误差所控制。

3.4 关于交叉熵的重要结论

  • **交叉熵等于KL散度与熵的和:\(CE(p, q) = D_{KL}(p||q) + H(p)\)

信息熵

标签:gen   line   一个   预测概率   期望   作用   变量   rop   log   

原文地址:https://www.cnblogs.com/albertsr/p/9863835.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!