数学建模社区-数学中国

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

作者: 重光兰衣    时间: 2018-11-1 10:15
标题: 机器学习笔记十:各种熵总结(一)
机器学习笔记十:各种熵总结(一)) v: N! m: }9 c$ g; _; Y) @, F# O
一.什么是熵
, s' D1 [- B: G$ YⅠ.信息量
. Y0 k; w7 e* h首先考虑一个离散的随机变量x,当我们观察到这个变量的一个具体值的时候,我们接收到多少信息呢?
1 g# P- G! N4 a! k/ `/ a3 H我们暂时把信息看做在学习x的值时候的”惊讶程度”(这样非常便于理解且有意义).当我们知道一件必然会发生的事情发生了,比如往下掉的苹果.我们并不惊讶,因为反正这件事情会发生,因此可以认为我们没有接收到信息.但是要是一件平时觉得不可能发生的事情发生了,那么我们接收到的信息要大得多.因此,我们对于信息内容的度量就将依赖于概率分布p(x).
5 j* C, P" L3 S- ^2 b因此,我们想要寻找一个函数h(x)来表示信息的多少且是关于概率分布的单调函数.我们定义:
6 s' S4 m/ Y* N6 X9 B; q. J: `  I1 T' C( ]+ Z0 R4 A

# K) I' \; d, ]我们把这个公式叫做信息量的公式,前面的负号确保了信息一定是正数或者是0.(低概率事件带来高的信息量).
; {+ S$ S. S1 J8 y. S  u1 g函数如下图所示 . w3 G. L' Z7 D6 v8 B5 }! g4 b
% ~: |8 I9 w( E3 f5 L" x
有时候有人也叫做自信息(self-information),一个意思啦。可以推广一下下。 " ~+ q$ g2 c; _- L/ s& D
联合自信息量:
. s2 z2 L' e: e  h条件自信息量:
) K! z/ [: `* N; Q% ?通俗一点来说的话,就是概率论中很简单的推广就行了。有概率基础的话,这个很容易理解。这里因为实际上面使用二维的更多一点就以二维为例子,推广到多维的话也是可以的。3 M% m3 d! q& U; V$ Z
+ D1 C% X- _7 m2 O; r' l
Ⅱ.熵
0 A7 N8 j9 g2 L& K' D1 F6 r! _1 _熵(entropy):上面的Ⅰ(x)是指在某个概率分布之下,某个概率值对应的信息量的公式.那么我们要知道这整个概率分布对应的信息量的平均值.这个平均值就叫做随机变量x的熵 & E+ X6 j" {% s4 A+ U' j
如下面公式: + N$ e$ \! ]# ~! w6 Q$ p1 L! ~. B
) `4 Y# U0 @  D# ^* m$ O: G
这个公式的意思就是,随机变量x是服从p这个分布的,也就是在在p分布下面的平均自信息。也就得到了信息熵。信息熵的本质可以看做是某个分布的自信息的期望。
# I# O4 _) ?7 I8 |+ t这里举个例子感受一下:设X服从0-1分布,即 ; q8 `5 z* j1 k
则熵为:/ L$ @9 }  K4 m
上面的计算是对于一个离散型的随机变量(分布)来做的,无非就是把所有的概率都得到,分别求出自信息然后相加就行了。很简单,别想得太多。
' G5 ~8 S. R9 W8 M1 T代码:) @. e! y9 Z3 @2 D! _5 A
结果为:3 z  J9 x8 ~" l
+ }8 p8 C/ _* O2 Y, Y

从图中可以知道:

1.当p=0或者p=1的时候,随机变量可以认为是没有不确定性. " M: e4 g; E' u/ t' x
2.当p=0.5的时候,H(p)=1,随机变量的不确定性最大.( D$ v# n; [' n; D, `' q: Q0 F2 f1 E
那么“仿照”之前的信息量的公式,可以推广一下下啦。 ) O+ P* r' U; }1 v- |4 }
假设一个概率分布有两个随机变量决定。其中x有n种取值,y有m种取值。那么可以得到一个nxm的联合概率分布的表。那么有:
) M( V( T- J$ X$ r( ?% b复合熵(联合熵)
- J: S; G. g7 Z( s; N( W. g

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

条件熵:

) i8 b. p4 W7 ?
- @& I  N, o1 G1 C; s
上面这个公式可能有点难以理解,不知道这个公式是怎么来的。举一个例子来说明一下: * p* }0 H. A- D7 X( C  Z
如果以x表示学生体重,以y表示身高,以 p(x∣y)表示身高为某个特定的y时的体重为x的概率,把熵公式用到这个特殊情况得到是熵显然应当是
9 d  Z+ p2 A+ Q* E) `上面得到的计算公式是针对y为一个特殊值y时求得的熵。考虑到y会出现各种可能值,如果问已知学生身高时(不特指某一身高,而是泛指身高已经知道)的体重的熵(不确定程度),它应当是把前面的公式依各种y的出现概率做加权平均,那么就可以得到上面的条件熵的公式。
1 y' ?$ _, Z4 n4 `4 T; B6 |
+ d  F5 ~1 t% F8 iⅢ.变形总结
* y' m7 h5 J& _; u, J进过上面的之后,应该对于信息量和信息熵的几个公式有了了解。然后那几个公式还可以变形为一些常用的公式。这里总结一下
" x. J( {5 `3 t首先要先介绍一下条件分布的乘法定理:: u* ~3 O3 U0 ~' c) H* y
" I# q5 ]8 E9 ~

$ |' J% w4 H; |, |" [$ }9 y然后把之前条件熵式子使用上面这个公式改写一下,可以写为:6 Z+ t) H, c1 y0 s% h% d
+ [! u2 ^, h" u- b, ^. l+ l5 G* V
当熵和条件熵中的概率由数据估计(特别是极大似然估计)得到的时候,所对应的熵与条件熵分别称为经验熵(empirical entropy)和经验条件熵(empirical conditional entropy)
% f- R" T: u8 N% D) S. U. @8 q0 y1 N/ d  b
上面的式子表明,只要你能够得到联合分布和y的分布就能够求出条件熵了。事实上,还能够更加简化成为常见的形式: 8 i" b0 q$ u% o% M3 }
这里利用上面的公式(以离散型为例子)直接推导,有
' ]0 e. Y; H! @, n) s/ U& D$ ]
# r# K/ e, {. k* j
3 D  M4 w7 r/ u* @$ N证明: * E6 M) H( A* g# t0 H% h! w- ^
这个公式把复合熵、条件熵以及熵联系到一起了。它们也显示了熵的对称性。. A$ A& `8 Y5 @' W
( C& N* r9 ^4 F/ g0 O7 d8 t





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