数学建模社区-数学中国
标题:
机器学习笔记十:各种熵总结(一)
[打印本页]
作者:
重光兰衣
时间:
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