AI机动队
首发于AI机动队
概率论——深度学习花书第三章

概率论——深度学习花书第三章

概率论是研究随机性和不确定性的科学,在人工智能领域主要有两大应用:1. 概率论可以指导人工智能模型所需模拟或近似的概率分布。2.概率与统计可以帮助我们分析模型的预测的准确性。可以说,线性代数和概率论是人工智能系统的两大数学基石,这一章对于理解很多机器学习模型的背后驱动力是关键的,总结如下:

上帝也掷骰子

许多人,尤其是受了很多理工科教育的人都对世界持机械决定论的观点:只要给定初始条件,宇宙万物走势都可以确定性的运行,不存在任何随机性。例如爱因斯坦曾经说过:上帝不会掷骰子。但是实际上很多因素造成了我们的系统往往是不确定的,例如在数学模型中,主要因素有三:

  1. 我们需要模拟的系统本身是不确定的。比如量子力学认为宇宙中的基本粒子本质上是概率波,我们想用抛去任何随机性的模型来模拟这个系统,常常会产生很大的偏差。
  2. 观测的不确定性。即使我们需要模拟的对象是确定的,但是由于我们观测方法的限制,我们常常无法观测对系统造成影响的所有的变量。
  3. 模型的不确定性。通常我们的模型不可能涵盖所有的信息,常常要舍弃某些信息,例如我们想用机器人预测周边所有物体的运动轨迹,通常我们需要将空间离散成一些更小的空间单元来预测这些物体会出现在哪些单元,但是这些单元也无法划分成无限小的,物体可能出现在单元中的任意位置,这一限制就造成了模型本身的不确定性。

概率论就是用来研究这种随机性的过程。传统上,概率论更多的是用来分析事件发生的频率,这就要求事件是可重复的,比如我们可以多次掷骰子,这是频率统计(frequentist statistics)观点。但是现实中,很多事情是无法重复的,比如医生要分析病人是否患感冒的概率,我们无法将病人克隆许多次,并且保证他们具有完全相同的症状。这种情况下,我们常常用概率表示某种置信度(degree of belief),比如1是表示我们100%确定病人得了感冒,而0是我们100%确定病人没有得感冒,这种用概率来表示置信度的观点被称作贝叶斯统计(Bayesian statistics)。

概率分布

首先需要理解的概念是随机变量(random variable),顾名思义,它就是某一变量可能随机的取不同数值。随机变量可以是离散的也可以是连续的。

概率分布就是对随机变量取不同数值的可能性的一种描述。对于离散型随机变量,我们用概率质量函数(probability mass function,简称PMF)来描述,它是对随机变量的状态到随机变量取这种状态的概率的一种映射。变量x取变量值为x的PMF常用P(x=x)表示,PMF也可以用来描述多个变量,又叫做联合概率分布(joint probability distribution),比如P(x=x,y=y)代表了变量x取值x同时变量y取值y的概率。函数P作为变量x的PMF必须满足以下条件:

  1. P的域包含了x的所有可能状态。
  2. \forall x \in X, 0\leq P(x) \leq 1 。表示取域中任意x的概率不能超过1,也不小于零。
  3. \sum_{x\in X}{P(x)} = 1 ,即满足归一化条件。

例如对于x可以取k个不同值的均匀分布 为P(x=x_{i}) = \frac{1}{k}

同样的对于连续变量,我们用概率密度函数(probablity density function,简称PDF)来描述,常用p(x)来表示。对于连续变量,p(x)不再直接代表x取某一值的概率,而是指在这一值的极微小区间 \delta x 内的概率是 p(x)\delta x ,其归一化条件也由求和转变为积分。

  1. P的域包含了x的所有可能状态。
  2. \forall x \in X, p(x) \geq 0 。注意这里只要求p(x)不小于零,而p(x)是可以大于1的。
  3. \int p(x)dx = 1

条件概率与贝叶斯定理

条件概率(conditional probability)研究的是在某一事件发生的前提下,另一个事件发生的概率。我们用 P(y=y|x=x) 来表示在x=x的前提下事件y=y发生的概率,可用如下公式计算

P(y=y|x=x)=\frac{P(y=y,x=x)}{P(x=x)}

由该公式我们也可以导出贝叶斯定理(Bayes' Rule):

P(x|y)=\frac{P(x)P(y|x)}{P(y)}

如果x和y是互相独立的,则 \forall x\in x, y\in y, p(x=x,y=y)=p(x=x)p(y=y)

期望与方差

对于某一个关于x的函数f(x),假设x的分布为P(x),对于离散的x,f(x)的平均值即其期望(expectation)可以表示为

E_{x\sim P}[f(x)]=\sum_{x}{P(x)f(x)}

对于连续的x,期望为

E_{x\sim P}[f(x)]=\int{p(x)f(x)}dx

方差(variance)是用来描述变量的变化波动程度的,定义为

Var(f(x)) = E\left[ (f(x)-E[f(x)])^2 \right]

当方差较低时,f(x)的值更集中在其均值附近。方差开根号通常称为标准差(standard deviation)。

常见概率分布

常见的概率分布如下:

  • 伯努利分布(Bernoulli Distribution): 当随机变量只能取0和1两种结果,则其分布为伯努利分布, 其性质可总结为:
  • 多项式分布(Multinoulli Distribution):当随机变量可以取k个不同值时的分布称为多项式分布,伯努利分布可以看做k=2时的多项式分布。
  • 高斯分布(Gaussian Distribution):又称为正太分布(normal distribution),是经常用来描述随机变量的分布。用公式表示为:

其中, \mu 是x的期望, \sigma 是x的标准差。

高斯分布可以描述很多的随机系统,根据中心极限定理(central limit theorem):许多独立的随机变量的和符合高斯分布,所以很多复杂的系统都可以用高斯分布模拟。

信息论

用0和1比特表现的香农的画像

信息论(information theory)是将信息的传递作为一种统计现象来研究,如通过某种编码方式要传递某种信息所需要的信道带宽或比特数。我们想要定量的描述随机事件的信息量需要满足如下性质:

  • 发生概率大的事件含有较低的信息量,极端情况下,如果一个事件100%确定发生,那么它所包含的信息量为零。
  • 发生概率小的事件含有较高的信息量。
  • 独立事件的信息量可叠加。

据此,香农定义了x=x时所蕴含的自信息 I(x)=-logP(x) ,而对于整个概率分布所含的信息量用香农熵(Shannon entropy)来描述:

H(x) = E_{x\sim P}[I(x)] = -E_{x\sim P}[logP(x)]

香农熵越大,则描述该系统所需的比特数越大,而对于确定性的非随机的系统,其香农熵很小。

对于同一个随机变量的两种不同的分布P(x)和Q(x), 我们可以用KL divergence来描述两个分布的差异

D_{KL}(P||Q) = E_{x\sim P}\left[ log\frac{P(x)}{Q(x)} \right] = E_{x\sim P}\left[ log{P(x)}-log{{Q(x)}} \right]

它表示了假如我们采取某种编码方式使编码Q分布所需的比特数最少,那么编码P分布所需的额外的比特数。假如P和Q分布完全相同,则其KL divergence 为零。

和KL divergence的相关定义有交叉熵(cross entropy) H(P,Q)=H(P)+D_{KL} (P||Q)=-E_{x\sim P}log{{Q(x)}} ,由于第一项H(P)并不包含Q,相对于Q求交叉熵最小与求KL divergence最小化的问题是等价的。


至此,与深度学习相关的概率论的基本知识总结完毕,下一章将介绍数值计算。

编辑于 2018-07-05

文章被以下专栏收录