信息的度量——熵

问题的引出:

我们常说信息有用,那么它的作用是如何客观、定量的体现出来的呢?信息用途的背后是否有理论基础呢?

对于以上两个问题,几千年来都没有人给出很好的解答。直到1948年,香农在他著名的论文“通信与数学原理”中提出了“信息熵”的概念,才解决了信息的度量问题,并且量化出信息的作用。

如果没有信息,任何公式和数字的游戏都无法排除不确定性。这个朴素的结论非常重要。几乎所有的自然语言处理、信息与信号处理的应用都是一个消除不确定性的过程。

信息熵

什么是信息熵?

一条信息的信息量与其不确定性有着直接的关系。

比如说:我们要搞清楚一件非常非常不确定的事,就需要了解大量的信息。相反,如果已对某件事了解较多,则不需要太多的信息就能把它搞清楚。

所以,从这个角度上来看,信息量就等于不确定性的多少。

概率与信息熵:

例1:比如有人今天告诉你2019年的冬天,北京将不会再有雾霾。我们十分不确定这件事情,因为近五年以来,冬天的北京无雾霾的日子寥寥无几。此时为了弄清楚这件事,你需要查阅气象资料,专家预测等等,这就是一个用外界信息消除不确定性的过程,这件事不确定性越强,需要的外界信息就越多。此时信息熵很大。

例2:反之,比如有人今天告诉你2019年的冬天,北京将继续雾霾天气。根据以往的认知,这是一个不确定性极小的事件,也就是说几乎不需要外界信息。此时信息熵很小。

如果将2019年冬天的北京是否有雾霾看做随机变量x,那么由以上例子可知:信息熵的度量依赖于概率分布P(x)

信息熵的定义:

H=-\sum _{ x=1 }^{ n }{ P(x) } \cdot { log }^{ { p(x) } }  (式-1)

其中,P(x) 为概率,H的单位为bit

为什么是log?

假设现在有两个独立的随机变量x,y,两者同时发生的概率,也就是联合概率P(xy)=P(x)\cdot P(y)  (式-2)

若我们人为的想让信息的度量满足相加减运算。也就是说,信息A和信息B的和满足:A+B

I(xy)=I(x)+I(y)  (式-3)

很容易想到对式-1取对数运算!

{ log }^{ P(xy) }={ log }^{ P(x)\cdot P(y) }     ->  { log }^{ P(xy) }={ log }^{ P(x) }+{ log }^{ P(y) }  (式-4)

定义{ log }^{ P(x) }=I(x),对式-4稍作整理得到式-3。

信息熵的几何理解:

图1  概率与信息熵

由图1可知:

概率越接近于0(表示该事件极有可能不发生)和概率越接近于1(表示该事件极有可能发生)的时候信息熵的值越小。

举例:今天下雨的概率为P

第一种情况:P=0时表示今天下雨的可能性为0,该事件为确定事件,此时的信息熵为:

-0\times { log }^{ 0 }=0

第二种情况:P=1时表示今天下雨的可能性为1,该事件也为确定事件,此时的信息熵为:

-1\times { log }^{ 1 }=0

第三种情况:0<P<1表示今天可能下雨也可能不下雨,该事件就成了不确定事件,此时的信息熵可根据信息熵定义公式求出。


条件熵

定义:

假定XY是两个随机变量。X是我们要了解的,假定我们知道了X的随机分布P(X),那么也就是知道了X的熵:

H=-\sum _{ x=1 }^{ n }{ P(x) } \cdot { log }^{ { p(x) } }

现在假定我们还知道了Y的一部分情况,包括和X一起出现的概率P(xy),以及在不同的Y的前提下X的概率分布P(x|y)。定义在已知条件Y的条件下的条件熵为:

H(X|Y)=-\sum _{ x\epsilon X,y\epsilon Y }^{  }{ P(x,y){ log }^{ P(x|y) } }   (式-5)

情况1:XY独立时如图2:


图2  条件Y的情况下X的熵(X和Y独立)

情况2:XY不独立时如图3:

图3  条件Y的情况下X的熵(X和Y不独立)

由图2和图3可知:

H(X|Y)\ge H(X)  (式-6)

也就是说,多了信息Y之后,关于X的不确定性下降了!


互信息

什么是互信息?

条件熵告诉我们,当获取的信息和要研究的事物有关系时,这些信息能帮助我们消除不确定性。当然“有关系”这种说法太模糊,为了量化这种“关系”的大小,香农在信息论中提出了“互信息”的概念。

定义:

I(X;Y)=\sum _{ x\epsilon X,y\epsilon Y }^{  }{ P(xy){ log }^{ \frac { P(xy) }{ P(x)\cdot P(y) }  } }   (式-7)

其实互信息就是随机事件X的熵H(X)和条件熵H(X|Y)的差异:

I(X;Y)=H(X)-H(X|Y)  (式-8)

式-8可知:所谓的互信息,就是在了解一个Y的前提下,对消除另一个X的不确定所提供的信息量。


相对熵(交叉熵、KL散度)

什么是相对熵?

相对熵和互信息一样,用来衡量相关性,和互信息不同,相对熵用来衡量两个取值为整数的函数的相似性。

定义:

KL(f(x)||g(x))=\sum _{ x\epsilon X }^{  }{ f(x){ log }^{ \frac { f(x) }{ g(x) }  } }   (式-9)

- 对于两个完全相同的函数,相对熵为0

- 相对熵越大,函数的差异化越大

- 对于概率分布,如果取值均大于0,相对熵可以度量两个随机分布的差异性。

需要指出的是,相对熵是不对称的:

KL(f(x)||g(x))\neq KL(g(x)||f(x))  (式-10)

为了消除不对称性,詹森和香农提出了新的计算方法:

JS(f(x)||g(x))=\frac { 1 }{ 2 } (KL(f(x)||g(x))+KL(g(x)||f(x)))  (式-11)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容