乐读窝

深度学习

乐读窝 > 文学理论 > 深度学习

3.9 常用概率分布

书籍名:《深度学习》    作者:伊恩.古德费洛



许多简单的概率分布在机器学习的众多领域中都是有用的。



3.9.1 Bernoulli分布


Bernoulli分布(Bernoulli  distribution)是单个二值随机变量的分布。它由单个参数φ∈[0,1]控制,φ给出了随机变量等于1的概率。它具有如下的一些性质。



3.9.2 Multinoulli分布


Multinoulli分布(multinoulli  distribution)或者范畴分布(categorical  distribution)是指在具有k个不同状态的单个离散型随机变量上的分布,其中k是一个有限值。(2)Multinoulli分布由向量p∈[0,1]k−1参数化,其中每一个分量pi表示第i个状态的概率。最后的第k个状态的概率可以通过给出。注意我们必须限制。Multinoulli分布经常用来表示对象分类的分布,所以我们很少假设状态1具有数值1之类的。因此,我们通常不需要去计算Multinoulli分布的随机变量的期望和方差。

Bernoulli分布和Multinoulli分布足够用来描述在它们领域内的任意分布。它们能够描述这些分布,不是因为它们特别强大,而是因为它们的领域很简单。它们可以对那些能够将所有的状态进行枚举的离散型随机变量进行建模。当处理的是连续型随机变量时,会有不可数无限多的状态,所以任何通过少量参数描述的概率分布都必须在分布上加以严格的限制。



3.9.3 高斯分布


实数上最常用的分布就是正态分布(normal  distribution),也称为高斯分布(Gaussian  dis-tribution):

图3.1画出了正态分布的概率密度函数。

图3.1 正态分布。正态分布呈现经典的“钟形曲线”的形状,其中中心峰的x坐标由µ给出,峰的宽度受σ控制。在这个示例中,我们展示的是标准正态分布(standard  normal  distribution),其中µ=0,σ=1

正态分布由两个参数控制,。参数µ给出了中心峰值的坐标,这也是分布的均值:。分布的标准差用σ表示,方差用σ2表示。

当我们要对概率密度函数求值时,需要对σ平方并且取倒数。当我们需要经常对不同参数下的概率密度函数求值时,一种更高效的参数化分布的方式是使用参数β∈(0,∞)来控制分布的精度(precision)(或方差的倒数):

采用正态分布在很多应用中都是一个明智的选择。当我们由于缺乏关于某个实数上分布的先验知识而不知道该选择怎样的形式时,正态分布是默认的比较好的选择,其中有两个原因。

第一,我们想要建模的很多分布的真实情况是比较接近正态分布的。中心极限定理(central  limit  theorem)说明很多独立随机变量的和近似服从正态分布。这意味着在实际中,很多复杂系统都可以被成功地建模成正态分布的噪声,即使系统可以被分解成一些更结构化的部分。

第二,在具有相同方差的所有可能的概率分布中,正态分布在实数上具有最大的不确定性。因此,我们可以认为正态分布是对模型加入的先验知识量最少的分布。充分利用和证明这个想法需要更多的数学工具,我们推迟到第19.4.2节进行讲解。

正态分布可以推广到空间,这种情况下被称为多维正态分布(multivariate  normal  dis-tribution)。它的参数是一个正定对称矩阵Σ:

参数µ仍然表示分布的均值,只不过现在是向量值。参数Σ给出了分布的协方差矩阵。和单变量的情况类似,当我们希望对很多不同参数下的概率密度函数多次求值时,协方差矩阵并不是一个很高效的参数化分布的方式,因为对概率密度函数求值时需要对Σ求逆。我们可以使用一个精度矩阵(precision  matrix)β进行替代:

我们常常把协方差矩阵固定成一个对角阵。一个更简单的版本是各向同性(isotropic)高斯分布,它的协方差矩阵是一个标量乘以单位阵。



3.9.4 指数分布和Laplace分布


在深度学习中,我们经常会需要一个在x=0点处取得边界点(sharp  point)的分布。为了实现这一目的,我们可以使用指数分布(exponential  distribution):

指数分布用指示函数(indicator  function)来使得当x取负值时的概率为零。

一个联系紧密的概率分布是Laplace分布(Laplace  distribution),它允许我们在任意一点µ处设置概率质量的峰值:



3.9.5 Dirac分布和经验分布


在一些情况下,我们希望概率分布中的所有质量都集中在一个点上。这可以通过Dirac  delta函数(Dirac  delta  function)δ(x)定义概率密度函数来实现:

Dirac  delta函数被定义成在除了0以外的所有点的值都为0,但是积分为1。Dirac  delta函数不像普通函数一样对x的每一个值都有一个实数值的输出,它是一种不同类型的数学对象,被称为广义函数(generalized  function),广义函数是依据积分性质定义的数学对象。我们可以把Dirac  delta函数想成一系列函数的极限点,这一系列函数把除0以外的所有点的概率密度越变越小。

通过把P(x)定义成δ函数左移−µ个单位,我们得到了一个在x=µ处具有无限窄也无限高的峰值的概率质量。

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

经验分布将概率密度赋给m个点中的每一个,这些点是给定的数据集或者采样的集合。只有在定义连续型随机变量的经验分布时,Dirac  delta函数才是必要的。对于离散型随机变量,情况更加简单:经验分布可以被定义成一个Multinoulli分布,对于每一个可能的输入,其概率可以简单地设为在训练集上那个输入值的经验频率(empirical  frequency)。

当我们在训练集上训练模型时,可以认为从这个训练集上得到的经验分布指明了采样来源的分布。关于经验分布另外一种重要的观点是,它是训练数据的似然最大的那个概率密度函数(见第5.5节)。



3.9.6 分布的混合


通过组合一些简单的概率分布来定义新的概率分布也是很常见的。一种通用的组合方法是构造混合分布(mixture  distribution)。混合分布由一些组件(component)分布构成。每次实验,样本是由哪个组件分布产生的取决于从一个Multinoulli分布中采样的结果:

这里P(c)是对各组件的一个Multinoulli分布。

我们已经看过一个混合分布的例子了:实值变量的经验分布对于每一个训练实例来说,就是以Dirac分布为组件的混合分布。

混合模型是组合简单概率分布来生成更丰富的分布的一种简单策略。在第16章中,我们更加详细地探讨从简单概率分布构建复杂模型的技术。

混合模型使我们能够一瞥以后会用到的一个非常重要的概念——潜变量(latent  variable)。潜变量是我们不能直接观测到的随机变量。混合模型的组件标识变量c就是其中一个例子。潜变量在联合分布中可能和x有关,在这种情况下,P(x,c)=P(x|c)P(c)。潜变量的分布P(c)以及关联潜变量和观测变量的条件分布P(x|c),共同决定了分布P(x)的形状,尽管描述P(x)时可能并不需要潜变量。潜变量将在第16.5节中深入讨论。

一个非常强大且常见的混合模型是高斯混合模型(Gaussian  Mixture  Model),它的组件p(x|c=i)是高斯分布。每个组件都有各自的参数,均值µ(i)和协方差矩阵Σ(i)。有一些混合可以有更多的限制。例如,协方差矩阵可以通过的形式在组件之间共享参数。和单个高斯分布一样,高斯混合模型有时会限制每个组件的协方差矩阵为对角的或者各向同性的(标量乘以单位矩阵)。

除了均值和协方差以外,高斯混合模型的参数指明了给每个组件i的先验概率(prior  probability)αi=P(c=i)。“先验”一词表明了在观测到x之前传递给模型关于c的信念。作为对比,P(c|x)是后验概率(posterior  probability),因为它是在观测到x之后进行计算的。高斯混合模型是概率密度的万能近似器(universal  approximator),在这种意义下,任何平滑的概率密度都可以用具有足够多组件的高斯混合模型以任意精度来逼近。

图3.2展示了某个高斯混合模型生成的样本。

图3.2 来自高斯混合模型的样本。在这个示例中,有3个组件。从左到右,第1个组件具有各向同性的协方差矩阵,这意味着它在每个方向上具有相同的方差。第2个组件具有对角的协方差矩阵,这意味着它可以沿着每个轴的对齐方向单独控制方差。该示例中,沿着x2轴的方差要比沿着x1轴的方差大。第3个组件具有满秩的协方差矩阵,使它能够沿着任意基的方向单独地控制方差