深度学习中的信息论

Posted by RAIS on 2020-03-28
  • 本文首发自公众号:RAIS,期待你的关注。

前言

本系列文章为 《Deep Learning》 读书笔记,可以参看原书一起阅读,效果更佳。

​信息论

信息论是数学上一个分支,非常重要,包括你能看到这篇文章信息的传输信息论在其中都发挥了极其重要的作用,我就不赘述了,我们还是讨论更学术更专业性的知识。

量化信息

  • 非常可能的事情包含较少的信息;
  • 较不可能的事情包含更高的信息;
  • 独立的事件具有增量的信息。

自信息

$$
I(x)=-\ln P(x)
$$

香农熵

本是热力学中的概念,被香农引入到信息论中,因此也被称为信息熵或香农熵。不准确点说,熵是用来衡量混乱程度的。越混乱,熵越大,要弄清楚情况所需要的信息越多。

$$
\eta(X)=E[I(X)]=E[-\ln(P(X))]=\sum_iP(x_i)I(x_i)=-\sum_iP(x_i)\log_bP(x_i)
$$

其中 P 为 X 的概率质量函数,上一篇文章中介绍过。其中的 b 不同时对应的结果单位不同(机器学习中,用自然对数 e 为底,单位为 奈特)。对于连续变量则被称为 微分熵

相对熵

也叫 KL 散度,具有非负的特性。可以用来衡量两个分布之间的差异,用 p 分布近似 q 的分布,相对熵可以计算这个中间的损失,但是不对称(p 对 q 和 q 对 p 不相等),因此不能表示两个分布之间的距离。

$$
离散:D_{KL}(P||Q)=-\sum_iP(i)\ln\frac{Q(i)}{P(i)}=\sum_iP(i)\ln\frac{P(i)}{Q(i)}\\
连续:D_{KL}(P||Q)=\int_{-\infty}^{\infty}p(x)\ln\frac{p(x)}{q(x)}dx
$$

交叉熵

用来度量两个概率分布之间的差异。从下面的公式可以看出,因为 H§ 不变,因此交叉熵的变化可以反映出相对熵的变化,在机器学习或神经网络中,就可以用交叉熵来作为损失函数(不必用相对熵)。

$$
\eta(p,q)=E_p[\log q]=\eta ({p}) + D_{KL}(p||q)
$$

结构化概率模型

因为深度学习或机器学习的算法经常会涉及非常多的随机变量的概率分布,而且这些概率分布中相互关联的的变量并不是特别多,所以把所有的变量都相互关联起来是没有必要也是非常低效的,因此我们可以把概率分布分解成许多部分概率的乘积的形式,这样就可以把没什么关系的变量之间相互分割开,可以用有向图表示。这种模型称作 图模型结构化概率模型。举个例子如:

$$
p(a,b,c)=p(a)p(b|a)p(c|b)
$$

存在有向图就有无向图,对于无向图类型的,表示的是之间有函数关系,但不是一种概率关系,无法用很好的概率分布去描述,相互之间有关系的我们称作为一团,于是就有另外一种情况了。举个例子如,其中 Z 为归一化常数:

$$
p(a,b,c,d,e)=\frac{1}{Z}\phi^{(1)}(a,b,c)\phi^{(2)}(b,d)\phi^{(3)}(c,e)
$$

总结

信息论是一种基础,越靠近底层,算法等,需要的越多,做上层应用的可能根本不关心,但这更像一块基石,牢固的地基是在上面筑高台的基础。

  • 本文首发自公众号:RAIS,期待你的关注。