机器学习中的距离/散度/熵
一、信息量
- 定义:表示为对应信息所包含的信息量。
- 性质:表明码长与其发生概率呈反比关系(例如哈夫曼编码)。
- 公式(0/1编码):
在二进制符号系统中对单字符进行编码时,
其信息量I可表示为:
I = \log_2\left(\frac{1}{p(x)}\right) = -\log_2(p(x))
这一公式反映了信息量与概率之间的反比关系。
二、信息熵
- 定义 :一个分布的信息量。(编码的平均长度/信息量的均值)
- 公式
H(p)=\sum_x{p(x)log_2(\frac{1}{p(x)})}=-\sum_x{p(x)\log_2(p(x))}
三、交叉熵 cross-entropy
定义:采用猜测概率分布(p)所采用的一种编码策略对真实概率分布(q)进行编码操作,并通过计算得出其平均编码长度与信息量的均值。
\color{red}{值得注意的是,在参考博客的公式推导中存在一定的冲突意见。根据我的理解与假设,在当前讨论中我暂且将q视为真实分布进行计算分析。}
-
公式
H_p(q)=\sum_x{q(x)\log_2(\frac{1}{p(x)})} -
意义 :衡量不同分布间的差距。
-
应用 :在信息论中,交叉熵被用来衡量两个概率分布之间的差异程度。
具体说明,请参见 信息量,信息熵,交叉熵,KL散度和互信息(信息增益),\color{red}{\text{需进一步理解}}。
四、KL散度(相对熵)
别称 :Kullback-Leibler散度与相对熵。($D_{KL}(q||p)、D_q(p):q对p的Kullback-Leibler散度与相对熵)
公式 (其中Kullback-Leibler散度等于交叉熵减去信息 entropy)
D_{KL}(q||p) = H(q,p) - H(q) = \sum_x q(x)\log_2\left(\frac{q(x)}{p(x)}\right)
- 意义 :同一随机事件+不同分布 间的距离度量。
- 图示

- 性质(非负性):D_q(p)\geq0。
四、联合信息熵和条件信息熵
公式
a. 联合信息熵
H(X,Y)=\sum_{x,y}p(x,y)\log_2(\frac{1}{p(x,y)})
b. 条件信息熵
H(Y|X)=H(X,Y)-H(X)
=\sum_xp(x)\sum_yp(y|x)\log_2(\frac{1}{p(y|x)})
=\sum_{x,y}p(x,y)\log_2(\frac{1}{p(y|x)})
意义:联合分布是 同一个分布中 两变量相互影响的关系。
图示

五、互信息(信息增益)
该概念定义为,在一个联合分布中两组信息之间的交互影响程度所对应的共同信息量
- 性质(非负性):I(X,Y)\geq0。
- 图示

- 应用:决策树。
六、variation of information
-
定义:联合分布(即同一个分布)两个变量相互影响的关系 。
-
公式
V(X,Y)=H(X,Y)-I(X,Y) -
意义:衡量不同随机变量间的差异。
由数学公式V(X,Y)=0可知:这两个变量完全一致。
根据数学公式V(X,Y)值越大,则可推断出:两个变量越独立。
参考:
信息量,信息熵,交叉熵,KL散度和互信息(信息增益)
KL散度、JS散度、Wasserstein距离
一文搞懂散度(KL,MMD距离、Wasserstein距离)
