数学建模社区-数学中国
标题:
机器学习笔记十:各种熵总结(一)
[打印本页]
作者:
重光兰衣
时间:
2018-11-1 10:15
标题:
机器学习笔记十:各种熵总结(一)
机器学习笔记十:各种熵总结(一)
9 y( t5 Z8 n t) z+ q
一.什么是熵
# u- \* D) K2 N7 A: ?! J& D4 \& d
Ⅰ.信息量
6 V: V* |2 r0 |% D
首先考虑一个离散的随机变量x,当我们观察到这个变量的一个具体值的时候,我们接收到多少信息呢?
: ?9 U$ k! Q: c1 a8 E5 d1 B
我们暂时把信息看做在学习x的值时候的”惊讶程度”(这样非常便于理解且有意义).当我们知道一件必然会发生的事情发生了,比如往下掉的苹果.我们并不惊讶,因为反正这件事情会发生,因此可以认为我们没有接收到信息.但是要是一件平时觉得不可能发生的事情发生了,那么我们接收到的信息要大得多.因此,我们对于信息内容的度量就将依赖于概率分布p(x).
- D { x3 d/ k i8 w; x2 N
因此,我们想要寻找一个函数h(x)来表示信息的多少且是关于概率分布的单调函数.我们定义:
/ U {, m, L- r5 C! s* @: l
4 H$ u% D7 R* J; w
z ^1 l3 J5 M) f% b. d
我们把这个公式叫做信息量的公式,前面的负号确保了信息一定是正数或者是0.(低概率事件带来高的信息量).
U R1 P* Z& M5 b, d6 v
函数如下图所示
0 b9 Z2 ^ _7 L" e! ?% q+ G& o
, e p8 E+ a1 H0 e# L
有时候有人也叫做自信息(self-information),一个意思啦。可以推广一下下。
& [$ W' r5 P$ q4 i' P y& \
联合自信息量:
( q$ J8 M- O6 I
条件自信息量:
( U& b) D+ X5 n6 n/ `
通俗一点来说的话,就是概率论中很简单的推广就行了。有概率基础的话,这个很容易理解。这里因为实际上面使用二维的更多一点就以二维为例子,推广到多维的话也是可以的。
+ s1 W! N+ V& L8 ?7 b3 N; B6 c
& b3 y+ s7 i9 v& t J: g! Y+ {9 m
Ⅱ.熵
) l" ^/ F$ |$ R" V) U- N
熵(entropy):上面的Ⅰ(x)是指在某个概率分布之下,某个概率值对应的信息量的公式.那么我们要知道这整个概率分布对应的信息量的平均值.这个平均值就叫做随机变量x的熵
0 K& b. T' l7 \) H! N2 _# D0 U
如下面公式:
1 [+ {" Q; E5 t* _4 k6 v/ \% b' H
2 U; ^7 Q( X! o+ j1 d7 w
这个公式的意思就是,随机变量x是服从p这个分布的,也就是在在p分布下面的平均自信息。也就得到了信息熵。信息熵的本质可以看做是某个分布的自信息的期望。
' M1 X6 ]" X7 V$ F" Y' f8 U
这里举个例子感受一下:设X服从0-1分布,即
" h1 K5 j- U( `/ l$ ?3 v7 F$ Z
则熵为:
: s+ x7 e |- F/ l6 y( u
上面的计算是对于一个离散型的随机变量(分布)来做的,无非就是把所有的概率都得到,分别求出自信息然后相加就行了。很简单,别想得太多。
3 R1 s8 ?. a* L& [5 y( ]; Q8 w
代码:
% B+ \8 X' }. @ q7 c
结果为:
5 [. b$ P9 u; o5 v( C0 n. G
) I9 Q q8 ~% X s6 K( l
从图中可以知道:
1.当p=0或者p=1的时候,随机变量可以认为是没有不确定性.
% L, I6 w2 B4 u: r3 }
2.当p=0.5的时候,H(p)=1,随机变量的不确定性最大.
* H$ f Q8 t) w
那么“仿照”之前的信息量的公式,可以推广一下下啦。
5 P) ~" b, E6 g# t% g& `
假设一个概率分布有两个随机变量决定。其中x有n种取值,y有m种取值。那么可以得到一个nxm的联合概率分布的表。那么有:
, e9 A5 a: D/ m/ h+ N: J, h
复合熵(联合熵)
:
! \1 \8 ]0 o9 e& @
同样,复合熵的公式还可以推广到连续变量和多个变量的情况。这里就不写了。
条件熵:
2 y+ ]6 O" }" j9 i7 j- k
4 x9 l: ]# l' ]6 o. y" g9 Q
上面这个公式可能有点难以理解,不知道这个公式是怎么来的。举一个例子来说明一下:
* M7 c$ |2 J7 D0 B1 E! f3 P2 j$ T
如果以x表示学生体重,以y表示身高,以 p(x∣y)表示身高为某个特定的y时的体重为x的概率,把熵公式用到这个特殊情况得到是熵显然应当是
: {( ^4 X/ {) w' k$ {( A3 c
上面得到的计算公式是针对y为一个特殊值y时求得的熵。考虑到y会出现各种可能值,如果问已知学生身高时(不特指某一身高,而是泛指身高已经知道)的体重的熵(不确定程度),它应当是把前面的公式依各种y的出现概率做加权平均,那么就可以得到上面的条件熵的公式。
0 ^ _; m9 @ Q/ Q! X
+ \$ w6 e& U3 Q: W7 V8 [: x
Ⅲ.变形总结
5 ^1 H F; D! g( X, X4 {+ @
进过上面的之后,应该对于信息量和信息熵的几个公式有了了解。然后那几个公式还可以变形为一些常用的公式。这里总结一下
2 j0 }- N3 o7 F3 B: B
首先要先介绍一下条件分布的乘法定理:
" L! `: L0 e1 m1 Y+ Q. u7 Y- W
9 m# A: [. ~% y o
( t$ J+ x" B0 A6 Y" h
然后把之前条件熵式子使用上面这个公式改写一下,可以写为:
: l$ z$ B3 \, ]1 S; d
5 O% v$ a7 Q2 M9 m
当熵和条件熵中的概率由数据估计(特别是极大似然估计)得到的时候,所对应的熵与条件熵分别称为经验熵(empirical entropy)和经验条件熵(empirical conditional entropy)
8 L; g8 u) z, M: m' J5 Z7 e, \
8 e: U% @+ m( I' Z) s+ B
上面的式子表明,只要你能够得到联合分布和y的分布就能够求出条件熵了。事实上,还能够更加简化成为常见的形式:
3 o% i: W; N! H( y
这里利用上面的公式(以离散型为例子)直接推导,有
4 @9 r6 x, R9 j' s
2 o/ l. a3 h, K& h1 E
( b M% H( u& b9 ?* X( I3 o T4 r
证明:
/ l2 B, g R9 }# e2 _- l I; u' N
这个公式把复合熵、条件熵以及熵联系到一起了。它们也显示了熵的对称性。
) v5 l) y. D, ~! k4 v& f
) o1 k1 E* q0 k; n7 h+ z7 Y3 K+ M
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5