Loading

模型概率基本知识

 

概率论的很多内容都在之前的笔记中详细介绍了,这里我们只给出一些需要经常用到的知识点,以及需要特别注意加深认识的部分。

 

Sample Spaces

样本空间记为 \(\Omega\) ,其中包含了样本 \(\omega\) ,每一个事件就是样本点的集合。事件发生的概率 probability \(\Pr(A)\) 满足性质:

  • 非负性: \(P(A)\ge 0\)
  • 规范性: \(P(\Omega) = 1\)
  • 可列可加性:若 \(A_1,A_2,\cdots,A_n\) 两两互不相容,即 \(A_i\cap A_j=\empty\) ,则

\[P\left(\sum_{n=1}^{\infty}A_n\right) = \sum_{n=1}^{\infty}P\left(A_n\right) \]

样本空间当然可以是连续的,同时满足上面的性质。

 

随机变量 random variable \(X\) 是非常重要的概念,它是一个可测函数 \(X:\Lambda\to\Omega\) ,它将一个样本空间映到另一个样本空间。一般是映到 \(\Omega\sub\mathbb{R}\) ,为一个实数空间的子空间。我们不过多讨论可测函数的性质,如果有时间的话,会在实变函数或泛函分析的笔记中讨论。

 

古典概型中经常会见到用几何图形来说明概率关系的方法,同样的,样本空间既然是空间,自然也具有一定的几何特性。考虑两个随机变量构成的联合样本空间 joint sample space ,我们可以用平面点集来刻画事件。例如

\[A = \{(x,y)\in\Omega\mid 0.2\le c\le 0.5 \} \]

这样一来,就可以用集合的交、并等关系来计算概率。

 

Conditional Probability and Independence

考虑两个事件 \(A,B\) ,我们定义 \(B\) 给定时 \(A\) 的条件概率 conditional probability\(\Pr(A|B)\) ,之前已经介绍过

\[\Pr(A|B) = \dfrac{\Pr(A\cap B)}{\Pr(B)},\quad \Pr(B)\neq 0 \]

方便起见,像之前一样将 \(\Pr(A\cap B)\) 简写为 \(\Pr(AB)\)

 

称事件 \(A,B\) 独立 independent 当且仅当

\[\Pr(A|B) = \Pr(A) \]

等价的关于 \(B\) 的公式也是类似的,也可以写成

\[\Pr(AB) = \Pr(A)\Pr(B) \]

也就是说它们互相不影响。对于两个随机变量 \(X,Y\) ,如果任何两个它们的事件都有这样的关系,则称它们独立。

 

Density Functions

在离散的情况下,我们可以定义随机变量在某一点的概率为 \(\Pr(X=k)\) ,但是对于连续随机变量就会出现概率为 \(0\) 的问题。接下来就要讨论连续随机变量的概率密度函数 probability density functions (pdfs) 和累积密度函数 cumulative density functions (cdfs) ,它们是将求和关系变为积分后得到的。

 

考虑连续样本空间 \(\Omega\) 和随机变量 \(X\) ,概率密度函数记为 \(f_X\) ,它由事件 \(A\sub\Omega\) 来定义

\[\Pr(X\in A) = \int_{\omega\in A} f_X(\omega)d\omega \]

即它在 \(A\) 上的积分是 \(A\) 的概率。一般情况下 \(f_X(\omega)\neq \Pr(X=\omega)\) ,这是由连续变量在单点为 \(0\) 导致的。

我们将 \(f_X\) 解释为似然函数 likelihood function ,它的值没有单位,但是可以与其它 \(\omega\)\(f_X\) 的值比较可能性。

 

然后我们定义累积密度函数 \(F_X(t)\) ,它实际上就是分布函数,定义为

\[F_X(t) = \int_{\omega=-\infty}^t f_X(\omega)d\omega \]

可以看出,如果 \(F_X\) 可导,那么就可以定义 \(f_X\) 为它关于 \(\omega\) 的导数。

 

Expected Value

期望值我们已经非常熟悉,对于离散随机变量,它是每一样本概率和样本值乘积的和

\[E[X] = \sum_{\omega\in\Omega}\omega\Pr(X=\omega) \]

对于连续随机变量,就是积分形式

\[E[X] = \int_{\omega\in\Omega}\omega f_X(\omega)d\omega \]

期望值具有线性性质

\[E[X+Y] = E[X]+E[Y],\quad E[\alpha X]=\alpha E[X] \]

这意味着随机变量的线性组合总是可以拆开计算

 

Variance

方差刻画了随机变量离开期望值的程度,定义为

\[Var[X] = E[(X-E[X])^2] = E[X^2]-E[X]^2 \]

上面右式是根据定义直接得到的,根据期望的线性性质就有

\[Var[\alpha X]=\alpha^2 Var[X] \]

注意到方差的量纲与随机变量和期望不同,所以有时会讨论标准差 standard deviation \(\sigma_X=\sqrt{Var[X]}\)

 

Joint, Marginal, and Conditional Distributions

考虑两个随机变量 \(X,Y\) 它们的联合密度函数 joint pdf 有形式 \(f_{X,Y}:\Omega_X\times\Omega_Y\to[0,\infty]\) ,对于离散随机变量

\[f_{X,Y}(x,y) = \Pr(X=x,Y=y) \]

边际密度函数 marginal pdf 定义为

\[f_X(x) = \sum_{y\in\Omega_Y}f_{X,Y}(x,y) \]

就是固定一个随机变量,然后对另一个随机变量密度求和。

 

在连续情形下,一般会先定义分布函数

\[F_{X,Y}(x,y) = \Pr(X\le x, Y\le y) \]

边际分布为

\[F_X(x) = \lim_{y\to\infty} F_{X,Y}(x,y) \]

当分布函数可微,就可以定义密度函数

\[f_{X,Y} = \dfrac{d^2F_{X,Y}}{dxdy} \]

边际密度就是

\[f_X(x) = \int_{y=-\infty}^\infty f_{X,Y}(x,y)dy \]

\(X,Y\) 独立若 \(f_{X,Y}(x,y)=f_X(x)f_Y(y)\) 恒成立。

 

最后介绍给定 \(Y=y\)\(X\) 的条件分布 conditional distribution

\[f_{X|Y}(x|y) = \dfrac{f_{X,Y}(x,y)}{f_Y(y)},\quad f_Y(y)\neq 0 \]

它是密度函数的商,自身也是密度函数。

 

Bayes' Rule

贝叶斯法则是建立似然函数的关键,在这里起到至关重要的作用。给定事件 \(M,D\) ,贝叶斯法则说明

\[\Pr(M|D) = \dfrac{\Pr(D|M)\Pr(M)}{\Pr(D)} \]

这实际上是条件概率的直接推论,不再赘述。我们更关注其本身的含义: \(D\) 给定时 \(M\) 的概率和 \(M\) 给定时 \(D\) 的概率。

 

为了加深理解,我们举一个例子:假设你购买了一辆汽车,你发现雨刮器坏了,此事件记为 \(W\) ;你知道汽车可能来自 \(A,B,C\) 三个工厂之一,并且有如下数据:你得知附近的汽车中来自各个工厂的概率分别为 \(\Pr(A),\Pr(B),\Pr(C)\) 。那么应该如何判断汽车最有可能来自哪家工厂呢?

显然,我们不能仅仅根据 \(\Pr(A),\Pr(B),\Pr(C)\) 来判断,因为不同工厂出现问题 \(W\) 的可能性不同。你调查得知,这几家工厂出现 \(W\) 事件的概率为

\[\Pr(W|A),\Pr(W|B),\Pr(W|C) \]

我们需要知道的实际上是 “已知 \(W\) 时它来自哪家工厂” ,因此应该计算

\[\Pr(A|W) = \dfrac{\Pr(W|A)\Pr(A)}{\Pr(W)},\quad \Pr(B|W) = \dfrac{\Pr(W|B)\Pr(B)}{\Pr(W)},\quad \Pr(C|W) = \dfrac{\Pr(W|C)\Pr(C)}{\Pr(W)} \]

注意到 \(\Pr(W)\) 是公共因子,因此可以忽略,只要比较上面乘积的大小关系就可以了。

 

Model Given Data

在数据分析中,上面的 \(M\) 表示模型 model\(D\) 表示数据 data ,那么 \(\Pr(M|D)\) 为得到数据集 \(D\) 后,认为它符合模型 \(M\) 的概率。一个最大后验估计 maximum a posteriori (MAP) 是使得 \(\Pr(M|D)\) 最大的模型 \(M\in\Omega_M\) 。也就是说它实际上是在给定 \(D\) 后,最有可能符合 \(D\) 的模型。类似于之前的方法,计算

\[\max_{M\in\Omega_M}\Pr(M|D) = \max_{M\in\Omega_M}\dfrac{\Pr(D|M)\Pr(M)}{\Pr(D)} \]

由于 \(\Pr(D)\) 已经给定,并且一般认为不同的模型是等可能的,于是就只需要

\[L(M) = \Pr(D|M) \]

它称为模型 \(M\) 的似然 likelihood ,只需要使 \(L(M)\) 达到最大。

 

那么什么是模型和数据呢?一般来说,模型通常是生成数据的简单方法。有如下几种:

  • 模型 \(M\)\(\mathbb{R}^d\) 中的点,而数据是 \(\mathbb{R}^d\) 中的点集,并且分布在 \(M\) 附近
  • 线性回归 linear regression :模型 \(M\)\(\mathbb{R}^2\) 中的线,数据是围绕在线 \(M\) 附近的点集
  • 聚类 clustering :模型 \(M\)\(\mathbb{R}^d\) 中的小点集,数据是 \(\mathbb{R}^d\) 中的大点集,并且分布在 \(M\) 附近
  • 线性分类 linear classification :模型 \(M\)\(\mathbb{R}^d\) 中的半空间,数据是标签点(标签为 \(+\)\(-\) ),从而带有 \(+\) 的点大多在 \(M\) 中,而带有 \(-\) 的点大多不在 \(M\)

 

Log-likelihoods

计算似然的重要技巧是取后验的对数,因为对数单调递增,那么

\[\max_{M\in\Omega_M}\Pr(M|D)\quad\Leftrightarrow\quad \max_{M\in\Omega_M}\log(\Pr(M|D)) \]

并且能够将乘积关系转化为求和

\[\log(\prod_{i=1}^kP_i) = \sum_{i=1}^k\log(P_i) \]

这样就可以较为容易地操作。

同时,对数的底对于最大后验估计 MAP 没有影响,因为

\[\log_{b_1}(x) = \log_{b_2}(x)\cdot \log_{b_1}(b_2) \]

它们是常数倍数关系,这对最大似然估计 maximum likelihood estimate (MLE) 也是相同的。

 

Gaussian MLE

假设数据集 \(D=\{x_1,\cdots,x_n\},\ x_i\in\mathbb{R}\) ,模型空间为 \(\Omega_M\) ,每一个 \(\mathbb{R}\) 中的点 \(M\) 都是一个模型。如果假设每一个数据点都会受到相互独立的高斯噪声 Gaussian noise ,也就是说每个点会围绕模型 \(M\) 波动,则 pdf 为

\[g(x) = \dfrac{1}{\sqrt{2\pi}\sigma}\exp(-\frac{(x-M)^2}{2\sigma^2}) \]

它是一个以 \(M\) 为期望, \(\sigma\) 为标准差的正态分布。于是

\[\Pr(D|M) = \prod_{x\in D}g(x) = \prod_{x\in D}\left(\dfrac{1}{\sqrt{2\pi}\sigma}\exp(-\frac{(x-M)^2}{2\sigma^2})\right) \]

其中 \(\Pr(D|M)\) 就是每一数据点处概率的乘积,因为 \(D|M\) 表示 \(D\) 中元素分布在给定 \(M\) 附近,也就是要求每一元素都在 \(M\) 附近,它们的概率需要相乘,并且密度 \(g(x)\) 就是该点的概率(离散情形)

应用对数就得到

\[\begin{aligned} \ln(\Pr(D|M)) &= \ln\left(\prod_{x\in D}\dfrac{1}{\sqrt{2\pi}\sigma}\exp(-\frac{(x-M)^2}{2\sigma^2})\right)\\ &= -\sum_{x\in D}\frac{(x-M)^2}{2\sigma^2} + |D|\ln\left(\dfrac{1}{\sqrt{2\pi}\sigma}\right) \end{aligned} \]

我们要求极大似然,因此常数项可以忽略,就需要求和项最小。这是一个最小二乘问题,此时就有

\[M = E[D] = \dfrac{1}{|D|}\sum_{x\in D}x \]

也就是当 \(M\)\(D\) 的期望时,达到最大估计。

 

Bayesian Inference

贝叶斯推断依赖贝叶斯法则的简单形式:

\[\Pr(M|D) \varpropto \Pr(D|M)\cdot\Pr(M) \]

符号 \(\varpropto\) 表示成比例 proportional to ,也就是两端是常数倍数关系。

但是,为了推广至连续随机变量,就需要用 pdfs 替换

\[\begin{matrix} p(M|D) & \varpropto & f(D|M) &\cdot & \pi(M)\\ \mathrm{posterior} & & \mathrm{likelihood} & & \mathrm{prior} \end{matrix} \]

给定一个固定的 \(M\) ,有可能计算似然 \(f(D|M)\) ;为了计算 \(p(M|D)\) ,就还需要通过 \(D\) 估计可能的模型 \(M\) 的概率。

 

Average Height

假设估计大学生的身高 \(H\) ,构建随机身高数据集 \(D=\{x_1,\cdots,x_n\}\) 。测量可能有误差,并且这只是部分数据,因此这些数据不一定可靠。我们考虑先验 \(\pi(M)\) ,我们查阅资料,得知成年人的期望身高 \(E_h\) 和标准差 \(\sigma\) ,于是假设

\[\pi(M) = \dfrac{1}{\sqrt{2\pi}\sigma}\exp(-\frac{(\mu_M-E_h)^2}{2\sigma^2}) \]

其中用 \(\mu_M\) 表示模型点,估计概率满足在期望 \(E_h\) 附近的正态分布。

之前的例子中计算的结果有

\[f(D|M) = \prod_{x\in D}\left(\dfrac{1}{\sqrt{2\pi}\sigma_1}\exp(-\frac{(x-\mu_M)^2}{2\sigma_1^2})\right) \]

其中 \(\mu_M\) 仍然为模型点,而 \(\sigma_1\) 是假定的噪声。根据

\[p(M|D) \varpropto f(D|M)\cdot \pi(M) \]

两边取对数得到

\[\begin{aligned} \ln(p(M|D)) &\varpropto \ln(f(D|M)) + \ln(\pi(M))\\ &\varpropto -\sum_{x\in D}\frac{(\mu_M-x)^2}{2\sigma_1^2} -\frac{(\mu_M-E_h)^2}{2\sigma^2} + C \end{aligned} \]

其中 \(C\) 为常数,这样我们需要找到 \(\mu_M\) 来让右边两项最大。

这里两项分别代表数据集和先验数据。在不改变结果的情况下,同乘 \(2\sigma^2\) 得到

\[-\left(\frac{\sigma}{\sigma_1}\right)^2\sum_{x\in D}(\mu_M-x)^2 - (\mu_M-E_h)^2 \]

也就是说,数据集和先验数据哪个更加重要取决于 \(\sigma/\sigma_1\) ,在先验标准差 \(\sigma\) 不变时,测量噪声 \(\sigma_1\) 越小,测量数据越多,数据集越有参考价值;这也符合我们的一般认知。

 

Weigthed Average

给定 \(x_1,\cdots,x_n\) 以及对应的权 weights \(w_1,\cdots,w_n\) ,则加权平均 weighted average 定义为

\[\dfrac{\sum_{i=1}^nw_ix_i}{\sum_{i=1}^nw_i} \]

总的权 \(W = \sum_{i=1}^nw_i\) 一般会定为 \(1\) ,从而与平均值 \(\sum_{i=1}^n\frac{1}{n}=1\) 保持一致。

posted @ 2022-03-09 22:45  Bluemultipl  阅读(650)  评论(0)    收藏  举报