数学建模社区-数学中国

标题: 机器学习笔记十:各种熵总结(一) [打印本页]

作者: 重光兰衣    时间: 2018-11-1 10:15
标题: 机器学习笔记十:各种熵总结(一)
机器学习笔记十:各种熵总结(一)- I$ z: @* c$ D
一.什么是熵" i+ s/ i, s  N: `! i/ W
Ⅰ.信息量& p* v& ^, ?4 x+ F% \9 }; p8 [
首先考虑一个离散的随机变量x,当我们观察到这个变量的一个具体值的时候,我们接收到多少信息呢?
, `8 @& E2 c8 Q我们暂时把信息看做在学习x的值时候的”惊讶程度”(这样非常便于理解且有意义).当我们知道一件必然会发生的事情发生了,比如往下掉的苹果.我们并不惊讶,因为反正这件事情会发生,因此可以认为我们没有接收到信息.但是要是一件平时觉得不可能发生的事情发生了,那么我们接收到的信息要大得多.因此,我们对于信息内容的度量就将依赖于概率分布p(x). + v3 T7 j, q. O) Z
因此,我们想要寻找一个函数h(x)来表示信息的多少且是关于概率分布的单调函数.我们定义:
. z9 g0 k* q* g* s( z: ?" k2 {) D/ d/ e- O% _

4 s  L, Q! D  f) S6 [/ C我们把这个公式叫做信息量的公式,前面的负号确保了信息一定是正数或者是0.(低概率事件带来高的信息量).
/ d, R) ?4 o# j( p4 \" }5 O函数如下图所示 - Z1 [! m. o) X$ u" `
9 n2 F1 K  {' F
有时候有人也叫做自信息(self-information),一个意思啦。可以推广一下下。 . O) E2 {5 s' f8 g9 L  R1 |
联合自信息量: : W4 Y8 c8 W, G/ k
条件自信息量:. u2 r2 p5 x0 L% d; g6 s
通俗一点来说的话,就是概率论中很简单的推广就行了。有概率基础的话,这个很容易理解。这里因为实际上面使用二维的更多一点就以二维为例子,推广到多维的话也是可以的。
: U8 H" [0 @, m5 T2 N  `7 X& k
$ |6 v, s) S% i& ~. k5 I! WⅡ.熵9 b( D+ H. e1 n" v3 C8 J+ R0 D+ }) p
熵(entropy):上面的Ⅰ(x)是指在某个概率分布之下,某个概率值对应的信息量的公式.那么我们要知道这整个概率分布对应的信息量的平均值.这个平均值就叫做随机变量x的熵 % `" r; Z4 d9 P3 _& z. g
如下面公式:
* T% E5 G4 k5 A4 t! H
8 G' R" u- N3 t% w2 O' s这个公式的意思就是,随机变量x是服从p这个分布的,也就是在在p分布下面的平均自信息。也就得到了信息熵。信息熵的本质可以看做是某个分布的自信息的期望。( q: a) K) I0 G7 C5 X& k1 i" N6 m
这里举个例子感受一下:设X服从0-1分布,即 ' _) L8 e8 j4 ~" F% O( z* r2 R
则熵为:* e3 G2 q! r/ F" Z
上面的计算是对于一个离散型的随机变量(分布)来做的,无非就是把所有的概率都得到,分别求出自信息然后相加就行了。很简单,别想得太多。
( f1 V$ N* `" Y# ^* c9 _5 X代码:! r, d9 i& B" {, o$ `$ v! s
结果为:% c" {/ g! k. k' Q1 t

- B; ^' @3 f& \: |" i

从图中可以知道:

1.当p=0或者p=1的时候,随机变量可以认为是没有不确定性. % {# Z- D8 ^: o# q0 V: o- Y  g
2.当p=0.5的时候,H(p)=1,随机变量的不确定性最大./ k4 a+ ^+ L& o* ]
那么“仿照”之前的信息量的公式,可以推广一下下啦。 * v$ {- _/ N3 a( _
假设一个概率分布有两个随机变量决定。其中x有n种取值,y有m种取值。那么可以得到一个nxm的联合概率分布的表。那么有: 8 z1 U2 X' a8 q( F/ Z$ Q+ M4 l. S
复合熵(联合熵)
* }9 [' B0 w9 J* l: l

同样,复合熵的公式还可以推广到连续变量和多个变量的情况。这里就不写了。

条件熵:

0 O8 A1 v/ t/ S3 ~: n

5 l' P8 G0 E5 b- d* v! H5 C& s上面这个公式可能有点难以理解,不知道这个公式是怎么来的。举一个例子来说明一下:
6 m6 F* s* Q: n$ n: ^, h! q3 k如果以x表示学生体重,以y表示身高,以 p(x∣y)表示身高为某个特定的y时的体重为x的概率,把熵公式用到这个特殊情况得到是熵显然应当是 # L' c% S! @# y
上面得到的计算公式是针对y为一个特殊值y时求得的熵。考虑到y会出现各种可能值,如果问已知学生身高时(不特指某一身高,而是泛指身高已经知道)的体重的熵(不确定程度),它应当是把前面的公式依各种y的出现概率做加权平均,那么就可以得到上面的条件熵的公式。
" ~$ d$ ^8 @  U) E' K/ ~3 [) s. ~) I0 f1 b3 F
Ⅲ.变形总结
8 P1 S4 E! F: H进过上面的之后,应该对于信息量和信息熵的几个公式有了了解。然后那几个公式还可以变形为一些常用的公式。这里总结一下 / q0 u! R) @$ Q5 v$ D; ~
首先要先介绍一下条件分布的乘法定理:) m, V) ?% ]1 y, r

2 Y6 Z2 T4 }! v+ [
3 i& N8 s  K& n然后把之前条件熵式子使用上面这个公式改写一下,可以写为:
9 D6 U' ]& I" q7 S% g" C* \" Z" G, q6 B3 P% g2 e+ v4 V
当熵和条件熵中的概率由数据估计(特别是极大似然估计)得到的时候,所对应的熵与条件熵分别称为经验熵(empirical entropy)和经验条件熵(empirical conditional entropy)
- M) }  O1 h) D( ^% e
9 j2 W% o! N5 K上面的式子表明,只要你能够得到联合分布和y的分布就能够求出条件熵了。事实上,还能够更加简化成为常见的形式: 8 n; N$ \' I1 r# W  e9 P+ K
这里利用上面的公式(以离散型为例子)直接推导,有
1 ^$ J" u+ _% k0 H7 F  z: D; |# v& B9 P( I7 n% U! a

1 u' g. H7 y! m. v9 l: I证明:
( E$ C4 k& H1 o# v$ Z这个公式把复合熵、条件熵以及熵联系到一起了。它们也显示了熵的对称性。; h0 {" [( L; F" r4 \4 t6 w

! I4 D  }5 q! z2 x, \6 b




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5