自然语言处理学习笔记-lecture2-数学基础4-信息论
信息论
信息量
什么是信息量?假设我们听到了两件事,分别如下:
- 事件A:巴西队获得了2022年FIFA世界杯冠军。
- 事件B:中国队获得了2022年FIFA世界杯冠军。
仅凭直觉来说,显而易见事件B的信息量比事件A的信息量要大(也就是“大新闻”)。究其原因,是因为事件A发生的概率很大,事件B发生的概率很小。所以当越不可能的事件发生了,我们获得的信息量就越大,而越可能发生的事件发生了,我们获得的信息量就越小。
因此,信息量应该和事件发生的概率有关。
熵
如果
X
X
X是一个离散型随机变量,其概率分布为
P
(
X
=
x
)
=
p
(
x
)
,
x
∈
X
P(X = x) = p(x),x ∈ \mathscr{X}
P(X=x)=p(x),x∈X。 其中,
X
\mathscr{X}
X表示随机变量所有取值的集合,则该随机变量的熵为:
H
(
X
)
=
−
∑
x
∈
X
p
(
x
)
l
o
g
2
p
(
x
)
H(X) = -\sum_{x \in \mathscr{X}}p(x)log_2p(x)
H(X)=−x∈X∑p(x)log2p(x)
我们约定
0
l
o
g
2
0
=
0
0 log_2 0 = 0
0log20=0。
熵表示信源每发出一个符号所提供的平均信息量。一个随机变量的熵越 大,其不确定性越大,相应地正确估计其值的可能性就越小。越不确定 的随机变量需要越大的信息量来确定其值。
相对熵
两个概率分布
p
(
x
)
p(x)
p(x)和
q
(
x
)
q(x)
q(x)的相对熵也称为KL散度(英文全称:Kullback- Leibler divergence),定义如下:
K
L
(
p
∣
∣
q
)
=
∑
x
∈
X
p
(
x
)
l
o
g
p
(
x
)
q
(
x
)
KL(p||q) = \sum_{x \in \mathscr{X}}p(x)log\frac{p(x)}{q(x)}
KL(p∣∣q)=x∈X∑p(x)logq(x)p(x)
约定
0
l
o
g
(
0
/
q
)
=
0
,
p
l
o
g
(
p
/
0
)
=
∞
0 log(0/q) = 0,p log(p/0) = \infty
0log(0/q)=0,plog(p/0)=∞。
相对熵通常用于衡量两个概率分布的差距。当两个随机分布相同时,其相对熵为0。当两个随机分布的差别增加时,其相对熵也增加。
交叉熵
相对熵的公式可以表述为
K
L
(
p
∣
∣
q
)
=
∑
x
p
(
x
)
log
p
(
x
)
−
∑
x
p
(
x
)
log
q
(
x
)
=
−
H
(
p
(
x
)
)
−
∑
x
p
(
x
)
log
q
(
x
)
KL(p∣∣q)=x∑p(x)logp(x)−x∑p(x)logq(x)=−H(p(x))−x∑p(x)logq(x)
等式的前一部分是
p
p
p的熵,而后一部分则是交叉熵:
H
(
p
,
q
)
=
−
∑
x
p
(
x
)
log
q
(
x
)
H(p,q) = -\sum_xp(x) \log q(x)
H(p,q)=−x∑p(x)logq(x)
在人工智能中,往往需要评估模型分布和真实分布之间的差距,使用
K
L
KL
KL 散度非常合适。但由于
K
L
KL
KL散度的前一部分跟真实分布相关,在优化过程中不变化,因此一般使用交叉熵作为损失函数并评估模型。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异