深度学习——第三章:概率与信息论
前言
深度学习(deep learning)作为深度学习领域的殿堂级作品,囊括了数学领域包括线性代数、概率论、信息论等知识,以及机器学习中的相关内容,同时还介绍了工业界实践者用到的深度学习技术,是深度学习领域最为全面、权威的著作,笔者对于这本书早有耳闻,但是因为其内容充实、数学公式较多一直未敢涉足,借这个夏天的空闲时光,拜读这部作品,希望有所收获。本篇博客内容涉及花书第三章内容,主要介绍机器学习的另一个重要的数学武器——概率和信息论。
概率与信息论
概率论是用于表示不确定性声明的数学框架。它不仅提供了量化不确定性的方法,也提供了导出新的不确定性声明的公理。概率论在人工智能领域两大用法:
- 设计算法计算或者估算由概率论导出的表达式。
- 用概率统计从理论上分析提出的AI系统的行为。
概率论使得我们能够提出不确定的声明以及在不确定性存在的情况下进行推理,而信息论使我们能够量化概率论分布中的不确定性总量。
1. 为什么要使用概率
机器学习通常必须处理不确定量,有时也可能处理随机量。几乎所有的活动都需要一些在不确定性存在的情况下进行推理的能力。不确定性有3种可能的来源:
- 被建模系统内在的随机性。比如假想的纸牌游戏,在初始前,假设纸牌混洗成了随机顺序。
- 不完全观测。比如抽奖游戏,奖券和奖品是一一对应确定的,但是在抽奖者角度结果是不确定的。
- 不完全建模。当使用一些必须舍弃某些观测信息的模型时,舍弃的信息会导致模型的预测出现不确定性。
频率派概率: 概率直接与时间发生的频率相联系,比如掷硬币。
贝叶斯概率: 涉及确定性水平,用概率表示信任度,比如用概率表示患者患病的可能性。
关于不确定性的常识推理,如果列出了若干期望的性质,那么那么可以把贝叶斯概率和频率派概率视为等同。
概率论提供了一套形式化的规则,可以在给定一些命题的似然后,计算其他命题为真的似然。
2. 随机变量
随机变量是可以随机取不同值的变量。一个随机变量只是对可能的状态的描述,它必须伴随着一个概率分布来指定每个状态的可能性。随机变量可以是离散的或者连续的,离散随机变量拥有有限或者可能无限多的状态(状态可能没有数值只有命名)。连续随机变量伴随着实数值。
3. 概率分布
概率分布用来描述随机变量或一簇随机变量在每个可能取到的状态的可能性大小。描述概率分布的方式取决于随机变量是离散还是连续的。
3.1 离散型变量和概率质量函数
离散型变量的概率分布可以用概率质量函数来描述。通常用大写字母
P
P
P表示概率质量函数。概率质量函数的作用是将取得的每个状态映射到随机变量取得该状态的概率。对于某个特定的
x
x
x,其概率表示为:
P
(
x
=
x
)
P({\rm x}=x)
P(x=x)。随机变量的分布一般表示为:
x
∼
P
(
x
)
x\sim P(x)
x∼P(x)。
概率质量函数可以同时作用多个随机变量,这种多个变量的概率分布被称为联合概率分布,
P
(
x
=
x
,
y
=
y
)
P({\rm x}=x,{\rm y}=y)
P(x=x,y=y)表示
x
=
x
{\rm x}=x
x=x和
y
=
y
{\rm y}=y
y=y同时发生的概率,也可以简写为
P
(
x
,
y
)
P(x,y)
P(x,y)。
如果一个函数
P
P
P是随机变量
x
\rm x
x的概率质量函数,必须满足如下条件:
- P P P的定义域必须是 x \rm x x所有可能状态的集合。
- 任何随机变量的事件概率都在0和1之间。
- 所有 x x x的概率之和为1。
3.2 连续型变量和概率密度函数
当研究对象是连续型变量时,用概率密度函数 p p p来描述概率分布。它满足如下条件:
- p p p的定义域必须是 x x x的所有可能状态集合。
- 对于任意的 x x x, p ( x ) ⩾ 0 p(x)\geqslant 0 p(x)⩾0,注意,这里并不要求 p ( x ) ⩽ 0 p(x)\leqslant 0 p(x)⩽0。
- ∫ p ( x ) d x = 1 \int p(x)dx=1 ∫p(x)dx=1。
概率密度函数并没有对特定状态给出概率,以微分的形式给出无线小区域的概率。通常用 x ∼ U ( a , b ) x\sim U(a,b) x∼U(a,b)表示 x x x在 [ a , b ] [a,b] [a,b]上是均匀分布的。
4. 边缘概率
有时,知道了一组变量的联合概率分布,但想要了解其中一个子集的概率分布。这种定义在子集上的概率分布被称为边缘概率分布。
对于离散型随机变量
x
x
x和
y
y
y,我们知道了
P
(
x
,
y
)
P(x,y)
P(x,y),可以依据下面的求和法则计算
P
(
x
)
P(x)
P(x):
∀
x
∈
x
,
P
(
x
=
x
)
=
∑
y
P
(
x
=
x
,
y
=
y
)
\forall x \in {\rm x}, P({\rm x}=x)=\sum _yP({\rm x}=x,{\rm y}=y)
∀x∈x,P(x=x)=y∑P(x=x,y=y)
对于连续型变量,我们需要用积分替代求和:
p
(
x
)
=
∫
p
(
x
,
y
)
d
y
p(x)=\int p(x,y)dy
p(x)=∫p(x,y)dy
5. 条件概率
很多情况下,感兴趣的是某个事件在给定其他事件发生时出现的概率。这种概率叫作条件概率。将给定
x
=
x
{\rm x}=x
x=x,
y
=
y
{\rm y}=y
y=y发生的条件概率记为
P
(
y
=
y
∣
x
=
x
)
P({\rm y}=y|{\rm x}=x)
P(y=y∣x=x)。计算公式如下:
P
(
y
=
y
∣
x
=
x
)
=
P
(
x
=
x
,
y
=
y
)
P
(
x
=
x
)
P({\rm y}=y|{\rm x}=x)=\frac{P({\rm x}=x,{\rm y}=y)}{P({\rm x}=x)}
P(y=y∣x=x)=P(x=x)P(x=x,y=y)
注意,不能混淆条件概率和计算当采用某个动作后会发生什么。
6. 条件概率的链式法则
任何多维随机变量的联合概率分布,都可以分解成只有一个变量的条件概率相乘的形式:
P
(
x
(
1
)
,
.
.
.
,
x
(
n
)
)
=
P
(
x
(
1
)
)
∏
i
=
2
n
P
(
x
(
i
)
∣
x
(
1
)
,
.
.
.
,
x
(
i
−
1
)
)
P(x^{(1)},...,x^{(n)})=P(x^{(1)})\prod _{i=2} ^{n}P(x^{(i)}|x^{(1)},...,x^{(i-1)})
P(x(1),...,x(n))=P(x(1))i=2∏nP(x(i)∣x(1),...,x(i−1))
这个规律成为概率的链式法则(乘法法则),可以从条件概率的公式中推导得出。
7. 独立性和条件独立性
两个随机变量
x
x
x和
y
y
y,如果它们的概率分布可以表示成两个因子的乘积形式,并且一个因子只包含
x
x
x,另一个因子只包含
y
y
y,我们就称这两个随机变量是相互独立的。
∀
x
∈
x
,
y
∈
y
,
P
(
x
=
x
,
y
=
y
)
=
P
(
x
=
x
)
P
(
y
=
y
)
\forall x \in {\rm x}, y \in {\rm y},P({\rm x}=x,{\rm y}=y)=P({\rm x}=x)P({\rm y}=y)
∀x∈x,y∈y,P(x=x,y=y)=P(x=x)P(y=y)
如果
x
x
x和
y
y
y的条件概率分布对于
z
z
z的每一个值都可以写成乘积形式,那么这两个随机变量
x
x
x和
y
y
y在给定随机变量
z
z
z时是条件独立的:
∀
x
∈
x
,
y
∈
y
,
z
∈
z
,
P
(
x
=
x
,
y
=
y
∣
z
=
z
)
=
P
(
x
=
x
∣
z
=
z
)
P
(
y
=
y
∣
z
=
z
)
\forall x \in {\rm x}, y \in {\rm y},z \in {\rm z},P({\rm x}=x,{\rm y}=y|{\rm z}=z)=P({\rm x}=x|{\rm z}=z)P({\rm y}=y|{\rm z}=z)
∀x∈x,y∈y,z∈z,P(x=x,y=y∣z=z)=P(x=x∣z=z)P(y=y∣z=z)
用简化形式表示独立性和条件独立性:
x
⊥
y
x\perp y
x⊥y表示
x
x
x和
y
y
y相互独立。
x
⊥
y
∣
z
x\perp y|z
x⊥y∣z表示
x
x
x和
y
y
y在给定
z
z
z时条件独立。
8. 期望、方差和协方差
函数
f
(
x
)
f(x)
f(x)关某分布
P
(
x
)
P(x)
P(x)的期望或者期望值是指由
P
P
P产生的
x
x
x被函数
f
f
f作用时,
f
(
x
)
f(x)
f(x)的平均值,离散型随机变量求和如下:
E
x
∼
P
[
f
(
x
)
]
=
∑
x
P
(
x
)
f
(
x
)
\mathbb{E}_{{\rm x}\sim P}[f(x)]=\sum_xP(x)f(x)
Ex∼P[f(x)]=x∑P(x)f(x)
对于连续型随机变量,可以通过求积分的方式得到:
E
x
∼
P
[
f
(
x
)
]
=
∫
p
(
x
)
f
(
x
)
d
x
\mathbb{E}_{{\rm x}\sim P}[f(x)]=\int p(x)f(x)dx
Ex∼P[f(x)]=∫p(x)f(x)dx
默认的,我们假设
E
[
⋅
]
\mathbb{E}[·]
E[⋅]表示对方括号内的所有随机变量的值求平均。
期望是线性的,如:
E
x
[
α
f
(
x
)
+
β
g
(
x
)
]
=
α
E
x
[
f
(
x
)
]
+
β
E
x
[
g
(
x
)
]
\mathbb{E}_x[\alpha f(x) +\beta g(x)]=\alpha \mathbb{E}_x[f(x)]+\beta \mathbb{E}_x[g(x)]
Ex[αf(x)+βg(x)]=αEx[f(x)]+βEx[g(x)]
其中
α
\alpha
α和
β
\beta
β不依赖于
x
x
x。
方差衡量的是对
x
x
x依据其概率分布进行采样,随机变量
x
x
x的函数值会呈现多大的差异:
V
a
r
(
f
(
x
)
)
=
(
f
(
x
)
−
E
[
f
(
x
)
]
)
2
Var(f(x))=(f(x) - \mathbb{E}[f(x)])^2
Var(f(x))=(f(x)−E[f(x)])2
方差的平方根被称为标准差。
协方差在某种意义上给出了两个变量线性相关的强度以及这些变量的尺度:
C
o
v
(
f
(
x
)
,
g
(
y
)
)
=
E
[
(
f
(
x
)
−
E
[
f
(
x
)
]
)
(
g
(
y
)
−
E
[
g
(
y
)
]
)
]
Cov(f(x),g(y))=\mathbb{E}[(f(x) - \mathbb{E}[f(x)])(g(y) - \mathbb{E}[g(y)])]
Cov(f(x),g(y))=E[(f(x)−E[f(x)])(g(y)−E[g(y)])]
为了衡量变量的相关性而不受各个变量的尺度大小的影响,用相关系数将每个变量的贡献归一化。
协方差与相关性的联系: 两个变量相互独立,协方差为0,协方差不为0,那么两个变量一定相关,但是如果协方差为0,两个变量之间一定没有线性关系,但是不一定相互独立。
随机向量
x
∈
R
n
x\in \mathbb{R}^n
x∈Rn的协方差矩阵是个
n
×
n
n×n
n×n的矩阵,满足:
C
o
v
(
x
)
i
,
j
=
C
o
v
(
x
i
,
x
j
)
Cov(\rm x)_{i,j}=Cov(x_i,x_j)
Cov(x)i,j=Cov(xi,xj)
协方差矩阵的对角元是方差:
C
o
v
(
x
i
,
x
j
)
=
V
a
r
(
x
i
)
Cov(x_i,x_j)=Var(x_i)
Cov(xi,xj)=Var(xi)
9. 常用概率分布
9.1 Bernoulli分布
单个二值随机变量的分布。由单个参数 ϕ ∈ [ 0 , 1 ] \phi \in [0,1] ϕ∈[0,1]控制, ϕ \phi ϕ给出了随机变量等于1的概率。有如下的性质:
- P ( x = 1 ) = ϕ P(\rm x=1)=\phi P(x=1)=ϕ
- P ( x = 0 ) = 1 − ϕ P(\rm x=0)=1- \phi P(x=0)=1−ϕ
- P ( x = x ) = ϕ x ( 1 − ϕ ) 1 − x P({\rm x}=x)=\phi ^x(1- \phi)^{1-x} P(x=x)=ϕx(1−ϕ)1−x
- E x [ x ] = ϕ \mathbb{E}_{\rm x}[{\rm x}]=\phi Ex[x]=ϕ
- V a r x ( x ) = ϕ ( 1 − ϕ ) Var_{\rm x}({\rm x})=\phi (1- \phi) Varx(x)=ϕ(1−ϕ)
9.2 Multinoulli分布
又称范畴分布,指在具有 k k k个不同状态的单个离散型随机变量上的分布, k k k是个有限值。该分布由向量 p ∈ [ 0 , 1 ] k − 1 p \in [0,1]^{k-1} p∈[0,1]k−1参数化,每个分量 p i p_i pi表示第 i i i个状态的概率。Multinoulli分布一般用来表示对象分类的分布。
9.3 高斯分布
实数上最常用的分布就是正态分布,也称高斯分布:
N
(
x
;
μ
,
σ
2
)
=
1
2
π
σ
2
e
x
p
(
−
1
2
σ
2
(
x
−
μ
)
2
)
\mathcal N(x;\mu,\sigma^2)=\sqrt{\frac{1}{2 \pi \sigma^2}{\rm exp}(-\frac{1}{2 \sigma^2}(x-\mu)^2)}
N(x;μ,σ2)=2πσ21exp(−2σ21(x−μ)2)
正态分布的概率密度函数如下所示:
μ ∈ R \mu \in \mathbb{R} μ∈R, σ ∈ ( 0 , ∞ ) \sigma \in (0,\infty) σ∈(0,∞),前者给出了中心峰值的坐标,表示分布的均值,后者即为分布的标准差。
当对概率密度函数求值时,需要对
σ
\sigma
σ平方取倒数,即
β
−
1
=
σ
2
\beta^{-1} =\sigma^2
β−1=σ2:
N
(
x
;
μ
,
β
−
1
)
=
β
2
π
e
x
p
(
−
1
2
β
(
x
−
μ
)
2
)
\mathcal N(x;\mu,\beta^{-1})=\sqrt{\frac{\beta}{2 \pi}{\rm exp}(-\frac{1}{2}\beta(x-\mu)^2)}
N(x;μ,β−1)=2πβexp(−21β(x−μ)2)
当对于某个实数上分布先验知识不清楚的情况下,正态分布是默认的较好选择:
- 想要建模的很多分布的真实情况是比较接近正态分布的。中心极限定理说明很多独立随机变量的和近似服从正态分布。
- 在具有相同方差的所有可能的概率分布中,正态分布在实数上具有最大的不确定性。因此可以认为正态分布是对模型加入的先验知识量最少的分布。
ps:对于第二点个人理解为,对于先验知识不足的分布,不能带有太多主观因素进去,所选择的分布越万金油越好。
正态分布可以推广到 R n \mathbb{R}^n Rn空间,这种情况称为多维正态分布:
N ( x ; μ , Σ ) = 1 ( 2 π ) n d e t ( Σ ) e x p ( − 1 2 ( x − μ ⊤ ) Σ − 1 ( x − μ ) ) \mathcal N(x;\mu,\Sigma)=\sqrt{\frac{1}{(2 \pi)^n det(\Sigma)}{\rm exp}(-\frac{1}{2 }(x-\mu^{\top})\Sigma^{-1}(x-\mu))} N(x;μ,Σ)=(2π)ndet(Σ)1exp(−21(x−μ⊤)Σ−1(x−μ))
参数 μ \mu μ为向量形式的均值,参数 Σ \Sigma Σ给出了分布的协方差矩阵。常常把协方差矩阵固定位一个对角阵,一个更简单版本是各向同性高斯分布,它的协方差矩阵是一个标量乘以单位阵。
9.4 指数分布和Laplace分布
深度学习中,经常需要一个在
x
=
0
x=0
x=0处取得边界点的分布,用指数分布实现:
p
(
x
;
λ
)
=
λ
1
x
⩾
0
e
x
p
(
−
λ
x
)
p(x;\lambda)=\lambda \textbf{1}_{x\geqslant0}{\rm exp}(-\lambda x)
p(x;λ)=λ1x⩾0exp(−λx)
指示函数
1
x
⩾
0
\textbf{1}_{x\geqslant0}
1x⩾0来使得当
x
x
x取负值时概率为0。
Laplace分布,又称拉普拉斯分布,允许我们在任意一点
μ
\mu
μ处设置概率质量的峰值:
L
a
p
l
a
c
e
(
x
;
μ
,
γ
)
=
1
2
γ
e
x
p
(
−
∣
x
−
μ
∣
γ
)
Laplace(x;\mu,\gamma)=\frac{1}{2\gamma}{\rm exp}(-\frac{|x-\mu|}{\gamma})
Laplace(x;μ,γ)=2γ1exp(−γ∣x−μ∣)
9.5 Dirac分布和经验分布
在一些情况下,我们希望概率分布中所有的质量集中在一个点上。可以通过Dirac delta 函数
δ
(
x
)
\delta(x)
δ(x)定义概率密度实现:
p
(
x
)
=
δ
(
x
−
μ
)
p(x)=\delta(x-\mu)
p(x)=δ(x−μ)
该函数将除了0以外的所有点的值都为0,但是积分为1。它不像普通函数那样对
x
x
x的每一个值都有实数的输出,这是一种不同的数学对象,被称为广义函数。通过把
p
(
x
)
p(x)
p(x)定义成
δ
\delta
δ函数左移
−
μ
-\mu
−μ个单位,得到了在
x
=
μ
x=\mu
x=μ处具有无限窄也无限高的峰值的概率质量。
Dirac分布经常作为经验分布的一个组成部分出现:
p
^
(
x
)
=
1
m
∑
i
=
1
m
δ
(
x
−
x
(
i
)
)
\widehat{p}(x)= \frac{1}{m}\sum^{m}_{i=1}\delta(x-x^{(i)})
p
(x)=m1i=1∑mδ(x−x(i))
经验分布将概率密度
1
m
\frac{1}{m}
m1赋给
m
m
m个点
x
(
1
)
,
.
.
.
,
x
(
m
)
x^{(1)},...,x^{(m)}
x(1),...,x(m)中的每一个,这些点是给定数据集或者采样的集合。只有在定义连续型随机变量的经验分布时,Dirac Delta函数才是必要的。对于离散型随机变量定义成Multinoulli分布作为经验分布。
当在训练集上训练模型时,可以认为从这个训练集上得到的经验分布指明了采样来源的分布。另外, 经验分布是训练数据的似然最大的那个概率密度函数。
9.6 分布的混合
混合分布由一些组件分布构成。每次实验,样本是由哪个组件分布产生的取决于从一个Multinoulli分布中采样的结果:
P
(
x
)
=
∑
i
P
(
c
=
i
)
P
(
x
∣
c
=
i
)
P(x)=\sum_iP({\rm c}=i)P({\rm x}|{\rm c}=i)
P(x)=i∑P(c=i)P(x∣c=i)
这里的
P
(
c
)
P(c)
P(c)是对各组件的一个Multinoulli分布。实值变量的经验分布就是以Dirac分布为组件的混合分布。
潜变量: 不能够直接观测到的随机变量。如混合模型中组件标识变量 c \rm c c。潜变量的分布 P ( c ) P(\rm c) P(c)以及关联潜变量和观测变量的条件分布 P ( x ∣ c ) P(\rm x|c) P(x∣c)共同决定了分布 P ( x ) P(x) P(x)的形状。
一个非常强大且常见的混合模型是高斯混合模型,它的组件
p
(
x
∣
c
=
i
)
p({\rm x}|{\rm c}=i)
p(x∣c=i)是高斯分布。每个组件都有各自的参数,均值
μ
(
i
)
\mu^{(i)}
μ(i)和协方差矩阵
Σ
(
i
)
\Sigma^{(i)}
Σ(i)。和单个高斯分布一样,高斯混合模型有时候会限制每个组件的协方差矩阵为对角的或者各向同性的(标量乘以单位矩阵)。
高斯混合模型的参数指明了给每个组件
i
i
i的先验概率
α
i
=
P
(
c
=
i
)
\alpha_i=P({\rm c}=i)
αi=P(c=i),先验表明了在观测到
x
\rm x
x之前传递给模型关于
c
\rm c
c的信念。作为对比,
P
(
c
∣
x
)
P({\rm c}|x)
P(c∣x)是后验概率,因为它是观测到
x
\rm x
x之后进行计算的。
高斯混合模型是概率密度的万能近似器,在这种意义下,任何平滑的概率密度函数都可以用具有足够多组件的高斯混合模型以任意精度来逼近。
10. 常用函数的有用性质
logistic sigmoid函数:
σ
(
x
)
=
1
1
+
e
x
p
(
−
x
)
\sigma(x)=\frac{1}{1+{\rm exp}(-x)}
σ(x)=1+exp(−x)1
通常用来产生Bernoulli分布中的参数
ϕ
\phi
ϕ,因为其范围为(0,1),sigmoid函数特点是变量取绝对值非常大(正值或负值)会出现饱和现象,函数会对微小变化不明显。
softplus函数:
ς
(
x
)
=
l
o
g
(
1
+
e
x
p
(
x
)
)
\varsigma (x)={\rm log}(1+{\tiny } {\rm exp}(x))
ς(x)=log(1+exp(x))
softplus函数可以用来产生正态分布的 α \alpha α和 σ \sigma σ参数,因为范围是(0, ∞ \infty ∞)。它是正部函数 x + = m a x ( 0 , x ) x^+={\rm max}(0, x) x+=max(0,x)的平滑形式。
一些常用的性质:
11. 贝叶斯规则
通过贝叶斯规则,可以实现:
P
(
x
∣
y
)
=
P
(
x
)
P
(
y
∣
x
)
P
(
y
)
P(x|y)=\frac{P(x)P(y|x)}{P(y)}
P(x∣y)=P(y)P(x)P(y∣x)
贝叶斯规则可以从条件概率定义直接推导,其中
p
(
y
)
p(y)
p(y)可以通过
p
(
y
)
=
∑
x
P
(
y
∣
x
)
P
(
x
)
p(y)=\sum_xP(y|x)P(x)
p(y)=∑xP(y∣x)P(x)来计算。
ps:这里的公式也比较好理解,其实就是y占据整体中各个模块中的概率求和,即为y占据整体的概率。
12. 连续型变量的技术细节
连续型随机变量和概率密度函数的深入理解需要用到数学分支测度论的相关知识扩展。
例如对于集合
S
\mathbb{S}
S的一些选择会引起悖论,构造两个集合
S
1
\mathbb{S_1}
S1和
S
2
\mathbb{S_2}
S2,使得
p
(
x
∈
S
1
)
+
p
(
x
∈
S
2
)
>
1
p(x \in \mathbb{S_1})+p(x \in \mathbb{S_2})>1
p(x∈S1)+p(x∈S2)>1,并且
S
1
∩
S
2
=
∅
\mathbb{S_1}\cap \mathbb{S_2}= \varnothing
S1∩S2=∅是可能的。测度论的一种重要贡献是提供一些集合的特征,使得计算过程中不会出现悖论。
概率论中某些重要的结果对于离散值成立,但对于连续值只能是几乎处处成立。这里的几乎处处不包含的是空间中占有微小值的测度为零的集合。
PS:测度为零这里还是有必要解释一下,例如在
R
2
\mathbb{R}^2
R2空间,一条直线的测度为0,而多边形具有正的测度。
另一个技术细节涉及相互之间有确定性函数关系的连续型变量,假设两个随机变量 x x x和 y y y满足 y = g ( x ) y=g(x) y=g(x),其中 g g g是可逆的、连续可微的函数,但是 p y ( y ) = p x ( g − 1 ( y ) ) p_y(y)=p_x(g^{-1}(y)) py(y)=px(g−1(y))并不一定成立,这是因为引入函数 g g g后造成了空间的变形。
13. 信息论
信息论是应用数学的一个分支,主要研究对一个信号包含信息的多少进行量化。
信息论的基本想法是一个不太可能的事件居然发生了,要比一个非常可能的时间发生能提供更多的信息。
我们想要通过这种基本想法来量化信息,特别是:
- 非常可能发生的事情信息量少。
- 较不可能发生的实践具有更高的信息量。
- 独立事件应具有增量的信息。
因此,定义一个事件
x
=
x
{\rm x}=x
x=x的自信息为:
I
(
x
)
=
−
l
o
g
P
(
x
)
I(x)=-{\rm log}P(x)
I(x)=−logP(x)
定义的
I
(
x
)
I(x)
I(x)单位是奈特(nats),一奈特是以
1
e
\frac{1}{e}
e1的概率观测到一个事件时获取的信息量。
自信息只处理单个的输出,可以用香农熵来对整个概率分布中的不确定性总量进行量化:
H
(
x
)
=
E
x
∼
P
[
I
(
x
)
]
=
−
E
x
∼
P
[
l
o
g
P
(
x
)
]
H(x)=\mathbb{E}_{{\rm x}\sim P}[I(x)]=-\mathbb{E}_{{\rm x}\sim P}[{\rm log}P(x)]
H(x)=Ex∼P[I(x)]=−Ex∼P[logP(x)]
一个分布的香农熵是指遵循这个分布的事件所产生的期望信息总量。接近确定性的分布具有较低的熵,接近均匀分布的概率分布具有较高的熵。当
x
x
x是连续的,香农熵被称为微分熵。
上图是二值分布的香农熵,水平轴是
p
p
p,表示二值随机变量等于1的概率。可以看到
p
=
0.5
p=0.5
p=0.5时,熵是最大的,此时在两个结果上分布是均匀的,而0和1附近是最小的,因为随机变量几乎能够确定。
如果对于同一个随机变量x有两个单独的概率分布
P
(
x
)
P(x)
P(x)和
Q
(
x
)
Q(x)
Q(x),可以使用KL散度来衡量这两个分布的差异:
D
K
L
(
P
∣
∣
Q
)
=
E
x
∼
P
[
l
o
g
P
(
x
)
Q
(
x
)
]
=
E
x
∼
P
[
l
o
g
P
(
x
)
−
l
o
g
Q
(
x
)
]
D_{{\rm KL}}(P||Q)=\mathbb{E}_{{\rm x}\sim P}[{\rm log}\frac{P(x)}{Q(x)}]=\mathbb{E}_{{\rm x}\sim P}[{\rm log}{P(x)}-{\rm log}{Q(x)}]
DKL(P∣∣Q)=Ex∼P[logQ(x)P(x)]=Ex∼P[logP(x)−logQ(x)]
KL散度一个重要的性质是非负性,它用作衡量分布之间的某种距离。
一个与KL散度密切联系的量是交叉熵,即
H
(
P
,
Q
)
=
H
(
P
)
+
D
K
L
(
P
∣
∣
Q
)
H(P,Q)=H(P)+D_{KL}(P||Q)
H(P,Q)=H(P)+DKL(P∣∣Q)。
14. 结构化概率模型
联合概率分布使用单个函数进行描述是非常低效的,可以把概率分布分解为许多因子乘积形式。例如三个随机变量a,b,c,其中a影响b的取值,b影响c的取值,但是a和c在给定b时是条件独立的。
p
(
a
,
b
,
c
)
=
p
(
a
)
p
(
b
∣
a
)
p
(
c
∣
b
)
p(a,b,c)=p(a)p(b|a)p(c|b)
p(a,b,c)=p(a)p(b∣a)p(c∣b)
这种分解方式可以极大减少用来描述一个分布的参数数量。每个因子使用参数数目是其变量数目的指数倍。可以用图来描述这种分解,称为结构化概率模型,或者图模型。
结构化概率模型: 有向,无向。都使用图
G
\mathcal{G}
G,图中每个节点对应一个随机变量,连接两个随机变量的边意味概率分布可以表示成这两个随机变量之间的相互作用。
有向: 使用带有向边的图,用条件概率分布表示分解。有向模型对于分布中每个随机变量
x
i
x_i
xi都包含一个影响因子,这个组成
x
i
x_i
xi条件概率的影响因子被称为
x
i
x_i
xi的父节点,记为
P
a
G
(
x
i
)
Pa_\mathcal{G}(x_i)
PaG(xi)。
p
(
x
)
=
∏
i
p
(
x
i
∣
P
a
G
(
x
i
)
)
p(x)=\prod_ip(x_i|Pa_\mathcal{G}(x_i))
p(x)=i∏p(xi∣PaG(xi))
上图对应的概率分布可以分解为:
p
(
a
,
b
,
c
,
d
,
e
)
=
p
(
a
)
p
(
b
∣
a
)
p
(
c
∣
a
,
b
)
p
(
d
∣
b
)
p
(
e
∣
c
)
p(a,b,c,d,e)=p(a)p(b|a)p(c|a,b)p(d|b)p(e|c)
p(a,b,c,d,e)=p(a)p(b∣a)p(c∣a,b)p(d∣b)p(e∣c)
无向: 使用带有无向边的图,它们将分解成一组函数,这些函数通常不是任何类型的概率分布。
G
\mathcal{G}
G中任何满足两两之间有边连接的顶点的结合被称为团。无向模型中每个团
C
(
i
)
\mathcal{C}^{(i)}
C(i)都伴随一个因子
ϕ
(
i
)
(
C
(
i
)
)
\phi^{(i)}(\mathcal{C}^{(i)})
ϕ(i)(C(i)),这些因子仅仅是函数并不是概率分布。
随机变量的联合概率和这些因子的乘积成比例。因子越大,乘积越大,所以需要进行归一化操作(除以常数
Z
Z
Z)。
p
(
x
)
=
1
Z
∏
i
ϕ
(
i
)
(
C
(
i
)
)
p(x)=\frac{1}{Z}\prod_i \phi^{(i)}(\mathcal{C}^{(i)})
p(x)=Z1i∏ϕ(i)(C(i))
上图对应的概率分布可以分解为:
p
(
a
,
b
,
c
,
d
,
e
)
=
1
Z
ϕ
(
1
)
(
a
,
b
,
c
)
ϕ
(
2
)
(
b
,
d
)
ϕ
(
3
)
(
c
,
e
)
p(a,b,c,d,e)=\frac{1}{Z}\phi^{(1)}(a,b,c)\phi^{(2)}(b,d)\phi^{(3)}(c,e)
p(a,b,c,d,e)=Z1ϕ(1)(a,b,c)ϕ(2)(b,d)ϕ(3)(c,e)
图模型仅仅是描述概率分布的一种语言,而不是概率模型本身的特性(即图模型只是为了更好解释和表示某些概率分布),其中有向和无向也只是概率分布的一种特殊描述。
阅读总结
本章的内容相对硬核,介绍了常见的几种概率分布,以及贝叶斯规则,最后讲解了连续型变量的一些技术细节和信息论的相关知识。前面的概率论基础没有什么好说的,有一定概率论基础的同学可以直接跳过,从12节开始,就提到了一些概率论的细节,包括测度论知识的扩展,指出连续型变量概率求和会出现悖论,这是由于边界值的测度为零但是具有微小值,实际使用过程中是忽略的。此外还有空间压缩导致的反函数的概率密度函数积分不为1的情况,这也要注意。
信息论的相关知识也是很重要的,其中最关键的理论是越是不太可能发生的事件所包含的信息量越多,这也就是信息熵的由来,KL散度用来衡量两个分布之间的差异。结构化概率模型提供了一种思路,用图模型的方式表示联合概率分布,但要注意,结构化概率模型只是一种表示方式,方便理解,而不是分布本身的性质。