DeepLearning 0.2 概率与信息论

DeepLearning 0.2 概率与信息论

概率论是用于表示不确定性声明的数学框架,在人工智能领域,概率论可以告诉我们AI系统如何推理,据此我们设计一下算法来计算或者估计概率论导出的表达式;同时可以用概率和统计从理论上分析我们提出的AI系统的行为

信息论使我们能够量化概率分布中的不确定性总量

随机变量

随机变量(random variable)是可以随机地取不同值的变量,它只是对可能的状态的描述

可以是离散的或者连续的

必然伴随着一个概率分布来指定每个状态的可能性

概率分布

概率分布(probability distribution)用来描述随机变量或者一簇随机变量在每一个可能取到的状态的可能行大小

离散型变量的概率分布可以用概率质量函数(probability mass function, PMF)来描述,记作P(x),概率为1表示变量为x是确定的,而为0表示是不可能的

概率质量函数可以同时作用于多个随机变量,记作P(x,y),表示两个变量分别为xxy的概率

函数P是随机变量的PMF需满足:

  • P的定义域必须是所有可能状态的集合
  • x,0P(x)1
  • xP(x)=1,我们把这条性质称为归一化的(normalized)

当研究的对象是连续型随机变量时,我们用概率分布密度(probability density function, PDF)来描述概率分布,它需要满足:

  • p定义域必须是所有可能状态的集合
  • x,p(x)0
  • p(x)dx=1

概率密度函数给出了落在面积为δx的无限小的区域内的概率为p(x)δx

边缘概率

有时,我们知道了一组变量的联合概率分布,但想要了解其中一个子集的概率分布,这种定义在子集上的概率分布称为边缘概率分布(marginal probability distrubution)

例如,假设由离散型随机变量X和Y, 并且我们知道P(X,Y),可以依据下面的求和法则计算P(X)

xX,P(X=x)=yP(X=x,Y=y)

对于连续型变量,要用积分替代求和

p(x)=p(x,y)dy

条件概率

很多情况下,我们需要知道某个事件在给定其他事件发生时出现的概率,这种概率叫条件概率。如给定X=x,Y=y发生的条件概率记为

P(Y=yX=x)=P(Y=y,X=x)P(X=x)P(Y=y\mid X=x)=\frac{P(Y=y,X=x)}{P(X=x)}

条件概率的链式法则

多维随机变量的联合概率分布可以分解成只有一个变量的条件概率相乘的形式

P(X(1),,X(n))=P(X(1))i=2nP(X(i)X(1),,X(i1))

独立性和条件独立性

两个随机变量X和Y,如果它们的概率分布可以表示成两个因子乘积的形式,并且一个因子只包含X,另一个因子只包含Y,那么称这两个随机变量时相互独立

xX,yY,p(X=x,Y=y)=P(X=x)P(Y=y)

如果关于X和Y的条件概率分布对于z的每一个值都可以写成乘积的形式,那么这两个随机变量X和Y在给定随机变量zz时是条件独立的(conditionally independent),记作X\botY

xX,yY,zZ,p(X=x,Y=yZ=z)=p(X=xZ=z)p(Y=yZ=z)

期望、方差和协方差

期望是指当xxP产生,f作用于xx时,f(x)的平均值。对于离散型随机变量

EXP[f(x)]=xP(x)f(x)

对于连续型随机变量,可以通过求积分得到

EXP[f(x)]=xP(x)f(x)

方差(variance)衡量的是当我们对xx依据它的概率分布进行采样时,随机变量X的函数值会呈现多大的差异

Var(f(x))=E[(f(x)E[f(x)])2]

方差的平方根被称为标准差(standard deviation)

协方差(covariance)在某种意义上给出了两个变量线性相关性的强度以及这些变量的尺度:

Cov(f(x),g(y))=E[(f(x)E[f(x)])(g(y)E[g(y)])]

协方差的绝对值如果很大,亦为之变量值变化很大并且他们同时距离各自的均值很远;如果协方差是正的,两个变量倾向于同时取得比均值大或者小的值;如果协方差是负的,那么其中一个变量倾向于取得相对较大的值的同时,另一个变量倾向于取得相对较小的值

如果两个变量相互独立,它的协方差为零,他们之间一定没有线性关系

随机向量xRn协方差矩阵(covaiance matrix)是一个n×n的矩阵,并且是一个对称矩阵,其定义为

Cov(X)i,j=Cov(Xi,Xj)

协方差矩阵的对角元是方差

Cov(Xi,Xi)=Var(Xi)

常用概率分布

  • Bernoulli分布

Bernoulli分布是单个二值随机变量的分布,它由单个参数ϕ[0,1]控制

P(X=x)=ϕx(1ϕ)1x

EX[X]=ϕ

VarX(X)=ϕ(1ϕ)

  • Multinoulli分布

Multinoulli分布(multinoulli distrubution)或者范畴分布(categorical distribution)是指具有k个不同状态的单个离散型随机变量上的分布,其中k是一个有限值。Multinoulli分布常用来表示对象分类的分布

  • 高斯分布

正态分布(normal distrubition)也成为高斯分布(Gaussian distribution)

N(x;μ,σ2)=12πσ2exp(12σ2(xμ)2)

正太分布由两个参数控制,μRσ(0,)

E[X]=μ,Var[X]=σ2

中心极限定理(central limit theorem)说明很多独立随机变量的和近似服从正态分布,这意味着很多复杂系统都可以被成功地建模成正态分布地噪声

在具有相同方差地所有可能的概率分布中,正态分布在实数上有最大的不确定性,可以看作对模型加入的先验知识量最少的分布

正态分布可以推广到Rn空间

N(x;μ,)=1(2π)ndet()exp(12(xμ)1(xμ))
参数给出分布的均值,参数给出分布的协方差矩阵。可以使用一个精度矩阵替代\mathbf{\sum}
N(x;μ,β1)=det(β)(2π)nexp(12(xμ)β(xμ))
协方差矩阵通常被控制为一个对角阵,对于各向同性的高斯分布,它的协方差矩阵是一个标量乘以单位阵
  • 指数分布和Laplace分布

我们经常回需要一个x=0点处边界点的分布,这时可以使用指数分布(exponential distribution)

p(x;λ)=λ1x0exp(λx)

其中1x0这一指示函数来使得当xx取负值时的概率为零

Laplace分布允许在任意一点μ处设置概率质量的峰值

Laplace(x;μ,γ)=12γexp(xμγ)

  • Dirac分布和经验分布

概率分布中的所有质量集中在一个点上,这可以通过Dirac delta函数定义函数概率密度来实现

p(x)=δ(xμ)

Dirac delta函数被定义为除了0意外所有点的取值都为0,但是积分为1

Dirac分布经常作为经验分布(empirical distribution)的一个组成部分出现

p^(x)=1mi=1mδ(xx(i))

经验密度将概率密度1/m赋给m个点,这些点是给定的数据集或者采样的集合。只有在定义连续型随机变量的经验分布式,Dirac delta函数才是必要的。对于离散型变量,经验分布可以被定义成一个Multinoulli分布

  • 分布的混合

一种通用的组合方法是构造混合分布(mixture distribution),混合分布由一些组件分布构成, 每次实验,样本是由哪个组件分布产生的取决于从一个Multinoulli分布中采样的结果

P(x)=iP(x=i)P(xc=i)

实值变量的经验分布对于每一个训练示例来说,就是以Dirac分布为组件的混合分布

潜变量(latent variable)是我们不能直接观测到的随机变量,混合模型中的标识变量c就是其中一个例子,潜变量在联合分布中可能和x有关,潜变量的分布和观测变量的条件分布共同决定了P(x)P(x)的形状

一个非常强大的混合模型是高斯混合模型(Gausian Mixture Model),它的组件是高斯分布,每个组建都有各自的参数,均值和协方差矩阵。

高斯混合模型是概率密度的万能近似器,任何平滑的概率密度都可以用具有足够多组件的高斯混合模型以任意精度来逼近

常用函数的有用性质

logistic sigmoid函数:

σ(x)=11+exp(x)

logistic sigmoid函数通常用来产生Bernoulli分布中的参数ϕ,因为它的范围是(0,1)

sigmoid函数在变量绝对值很大时会出现饱和现象,意味着函数会变得很平,并且对输入的微小改变不敏感

softplus函数:

ξ(x)=log(1+exp(x))

softplus函数可以用来产生正态分布的β\betaσ参数,因为它的范围是(0, ∞)

softplus函数是另一个函数的平滑形式,这个函数是

x+=max(0,x)

有用的性质:

σ(x)=exp(x)exp(x)+exp(0)

ddxσ(x)=σ(x)(1σ(x))

1σ(x)=sigma(x)

logσ(x)=ξ(x)

ddxξ(x)=σ(x)

x(0,1),σ1(x)=log(x1x)

x>0,ξ1(x)=log(exp(x)1)

ξ(x)=xσ(y)dy

ξ(x)ξ(x)=x

贝叶斯规则

贝叶斯规则可以在已知P(yx)P(x\mid y)$$:

P(xy)=P(x)P(yx)P(y)P(x\mid y)=\frac{P(x)P(y\mid x)}{P(y)}

其中P(y)=xP(yx)P(x),因此并不需要事先知道P(y)的信息

连续型变量的技术细节

y=g(x)

则要保持如下性质以保证归一化仍成立

|py(g(x))dy∣ = |px(x)dx

px(x)=py(g(x))g(x)x

信息论

信息论对一个信号包含信息的多少进行量化

信息论的基本想法是一个不太可能的事件发生要比一个非常可能的事情发生提供更多的信息,独立事件要有增量的信息,两次事件的信息量是一次的两倍

因此,定义一个事件X=x自信息(self-information)为

I(x)=logP(x),单位为奈特(nats)

一奈特是以1/e的概率观测到一个事件时获得的信息量,使用以2为底数,单位是比特(bit)或者香农(shannons)

自信息只处理单个的输出,我们可以用香农熵(Shannon entropy)来对整个概率分布中的不确定性总量进行量化

H(X)=EXP[I(x)]=EX\simP[logP(x)]

一个分布的香农熵是指遵循这个分布的事件所产生的期望信息总量,接近确定性的分布右脚低的熵,均匀分布的概率分布由较高的熵。当X是连续的,香农熵被称为微分熵(differential entropy)

如果对于同一个随机变量X有两个单独的概率分布P(X)P(X)Q(X),可以使用KL散度(Kullback-Leibler divergence)来衡量这两个分布的差异:

DKL(PQ)=EXP[logP(x)Q(x)]

在离散型变量的情况下,KL散度衡量的是,当我们使用一种被设计成能够使得概率分布Q产生的消息的长度最小的编码,发送包含由概率分布P产生的符号的消息时,所需要的额外信息量。

KL散度是非负的,当且仅当P和Q在离散型变量的情况下是相同的分布或者在连续型变量的情况下是“几乎处处”相同的时,KL散度为0。KL散度经常被用作分布之间的某种距离,但它不是对称的

一个和KL散度密切联系的量是交叉熵(cross-entropy),即

H(P,Q)=H(P)+DKL(PQ)

H(P,Q)=EXPlogQ(x)

针对Q最小化交叉熵等价于最小化KL散度,因为Q并不参与被忽略的那一项

结构化概率模型

使用单个函数描述整个联合概率分布是低效的,我们可以把概率分布分解成许多因子的乘积形式,这样可以减少用来描述一个分布的参数数量。

用图来描述这种分解时,称为结构化概率模型(structured probabilistic model),或者图模型(graphical model)。

有向模型使用带有有向边的图,它们用条件概率分布来表示分解。有向模型对于分布中的每一个随机变量Xi都包含一个影响因子,这个组成XiX_i条件概率的影响因子被称为XiX_i的父节点,记为Pag(Xi)

p(X)=ip(XiPag(Xi))

无向模型将分解表示成一组函数,这些函数通常不是任何类型的概率分布。图中任何满足两两之间有边连接的集合被称为团。无向模型中的每个团C(i)都伴随着一个因子ϕ(i)(C(i)),这个因子是一个函数,每个因子的输出都必须是非负的。

随机变量的联合概率与所有这些因子的乘积成比例,这意味着因子的值越大,可能性越大,乘积的求和要除以一个归一化常数Z来得到归一化的概率分布,Z定义为ϕ\phi函数乘积的所有状态的求和或积分,概率分布为:

p(X)=1Ziϕ(i)(C(i))

发表评论