在机器学习中通常会使用各种熵来描述分布与分布之间的关系,如条件熵和交叉熵等,也有直接优化熵的模型,如最大熵模型。
这篇文章简单总结一下之前见到过的一些熵相关的概念。
信息量
定义
假设有离散随机变量 X X X 满足分布 P ( X = x i ) = p i P(X = x_{i}) = p_{i} P(X=xi)=pi , 定义事件 X = x i X = x_{i} X=xi的信息量为
I ( x i ) = − l o g ( p i ) I(x_{i}) = -log(p_{i}) I(xi)=−log(pi)
性质
取值范围在 [0, +∞)
区间内
顾名思义,一个事件的信息量可以直观的理解为事件发生给人带来的信息多少。由定义可以看出当事件发生概率越小时,信息量越大。
信息熵
定义
信息熵用于描述随机变量 X X X ,定义信息熵为信息量的期望值
H ( X ) = E x ∼ P [ I ( x ) ] = − ∑ i = 1 n p i l o g ( p i ) H(X) = E_{x \sim P}[I(x)] = -\sum_{i = 1}^{n}{p_{i} log(p_{i})} H(X)=Ex∼P[I(x)]=−i=1∑npilog(pi)
性质
取值范围在 [0, log(n)]
区间内
信息熵描述了随机变量的不确定性,当所有事件等可能地发生时,信息熵取得最大值
同样的可以定义联合分布 P ( X , Y ) P(X, Y) P(X,Y) 和条件分布 P ( X ∣ Y = y i ) P(X | Y = y_{i}) P(X∣Y=yi) 的信息熵
条件熵
定义
假设有离散随机变量 X X X 和 Y Y Y 满足联合分布 P ( X = x i , Y = y i ) = p i j P(X = x_{i}, Y = y_{i}) = p_{ij} P(X=xi,Y=yi)=