问题的引出:
我们常说信息有用,那么它的作用是如何客观、定量的体现出来的呢?信息用途的背后是否有理论基础呢?
对于以上两个问题,几千年来都没有人给出很好的解答。直到1948年,香农在他著名的论文“通信与数学原理”中提出了“信息熵”的概念,才解决了信息的度量问题,并且量化出信息的作用。
如果没有信息,任何公式和数字的游戏都无法排除不确定性。这个朴素的结论非常重要。几乎所有的自然语言处理、信息与信号处理的应用都是一个消除不确定性的过程。
信息熵
什么是信息熵?
一条信息的信息量与其不确定性有着直接的关系。
比如说:我们要搞清楚一件非常非常不确定的事,就需要了解大量的信息。相反,如果已对某件事了解较多,则不需要太多的信息就能把它搞清楚。
所以,从这个角度上来看,信息量就等于不确定性的多少。
概率与信息熵:
例1:比如有人今天告诉你2019年的冬天,北京将不会再有雾霾。我们十分不确定这件事情,因为近五年以来,冬天的北京无雾霾的日子寥寥无几。此时为了弄清楚这件事,你需要查阅气象资料,专家预测等等,这就是一个用外界信息消除不确定性的过程,这件事不确定性越强,需要的外界信息就越多。此时信息熵很大。
例2:反之,比如有人今天告诉你2019年的冬天,北京将继续雾霾天气。根据以往的认知,这是一个不确定性极小的事件,也就是说几乎不需要外界信息。此时信息熵很小。
如果将2019年冬天的北京是否有雾霾看做随机变量,那么由以上例子可知:信息熵的度量依赖于概率分布
信息熵的定义:
(式-1)
其中,为概率,
的单位为
为什么是?
假设现在有两个独立的随机变量,两者同时发生的概率,也就是联合概率
(式-2)
若我们人为的想让信息的度量满足相加减运算。也就是说,信息A和信息B的和满足:A+B
(式-3)
很容易想到对式-1取对数运算!
->
(式-4)
定义,对式-4稍作整理得到式-3。
信息熵的几何理解:
由图1可知:
概率越接近于0(表示该事件极有可能不发生)和概率越接近于1(表示该事件极有可能发生)的时候信息熵的值越小。
举例:今天下雨的概率为P
第一种情况:P=0时表示今天下雨的可能性为0,该事件为确定事件,此时的信息熵为:
第二种情况:P=1时表示今天下雨的可能性为1,该事件也为确定事件,此时的信息熵为:
第三种情况:0<P<1表示今天可能下雨也可能不下雨,该事件就成了不确定事件,此时的信息熵可根据信息熵定义公式求出。
条件熵
定义:
假定和
是两个随机变量。
是我们要了解的,假定我们知道了
的随机分布
,那么也就是知道了
的熵:
现在假定我们还知道了的一部分情况,包括和
一起出现的概率
,以及在不同的
的前提下
的概率分布
。定义在已知条件
的条件下的条件熵为:
(式-5)
情况1:和
独立时如图2:
情况2:和
不独立时如图3:
由图2和图3可知:
(式-6)
也就是说,多了信息之后,关于
的不确定性下降了!
互信息
什么是互信息?
条件熵告诉我们,当获取的信息和要研究的事物有关系时,这些信息能帮助我们消除不确定性。当然“有关系”这种说法太模糊,为了量化这种“关系”的大小,香农在信息论中提出了“互信息”的概念。
定义:
(式-7)
其实互信息就是随机事件的熵
和条件熵
的差异:
(式-8)
由式-8可知:所谓的互信息,就是在了解一个的前提下,对消除另一个
的不确定所提供的信息量。
相对熵(交叉熵、KL散度)
什么是相对熵?
相对熵和互信息一样,用来衡量相关性,和互信息不同,相对熵用来衡量两个取值为整数的函数的相似性。
定义:
(式-9)
- 对于两个完全相同的函数,相对熵为0
- 相对熵越大,函数的差异化越大
- 对于概率分布,如果取值均大于0,相对熵可以度量两个随机分布的差异性。
需要指出的是,相对熵是不对称的:
(式-10)
为了消除不对称性,詹森和香农提出了新的计算方法:
(式-11)