2.3 高斯分布

高斯分布,也叫正态分布,是广泛应用在连续性变数中的分布。它的形式是 N(x|mu,sigma^2) = frac{1}{(2pisigma^2)^{1/2}}exp{-frac{1}{2sigma^2}(x-mu)^2}

而高维(多变数)正态分布的形式是

N(m{x}|m{mu},m{Sigma})=frac{1}{(2pi)^{D/2}}frac{1}{|mSigma|^{1/2}}exp{-frac{1}{2}(m x-mmu)^TmSigma^{-1}(m x-mmu)}

其中Σ表示协方差矩阵

  • 不论是单变数还是多变数的情况,正态分布均为使熵最大的分布
  • 满足一定条件时,一系列随机变数的和的分布将随著随机变数数目的增多趋近于正态分布(中心极限定理)(实际情况中这种趋势非常迅速)
  • 想学好正态分布(尤其是多元)得对矩阵操作非常熟悉(说明线性代数是多么重要),不过在笔记中为了理解性的考虑尽量只保留结论而略去复杂的推导过程

如何理解多变数正态分布中的μ和Σ?

E[m x]=mmu

E[m{xx}^T] = m{mumu}^T + mSigma

cov[m x] = mSigma

高斯分布的局限:

  1. 维数灾难 设Σ是对称矩阵,D维高斯分布中也有D(D+1)/2 + D = D(D+3)/2个相互独立的参数,对于大的D它是二次增长的。为了尝试解决这个问题,如果我们只用对角化的协方差矩阵,即 mSigma = diag(sigma_i^2) ,那么便只有2D个参数。尽管它通过限制自由度简化了求逆的运算,但也限制了概率密度的形式并使高斯分布捕获数据中有趣的相关性的能力受到限制。
  2. 单峰性 即它的密度函数只有一个最大值。所以如果实际分散式多峰的,那么高斯分布就不能提供一个良好的近似。

2.3.1-2.3.2 条件高斯分布和边缘高斯分布

给定联合高斯分布 N(m x|mmu,mSigma) 并设 mLambda equiv mSigma^{-1} ,以及

m{x} = egin{pmatrix} m{x}_a \ m{x}_b end{pmatrix} quad mmu = egin{pmatrix} mmu_a \ mmu_b end{pmatrix} quad mSigma = egin{pmatrix} mSigma_{aa} & mSigma_{ab} \ mSigma_{ba} & mSigma_{bb} end{pmatrix} quad mLambda = egin{pmatrix} mLambda_{aa} & mLambda_{ab} \ mLambda_{ba} & mLambda_{bb} end{pmatrix}

其中xa和xb是两组变数,我们分别打算研究

条件高斯分布:给定xb的值的时候xa服从的分布

边缘高斯分布:对xb积分后,xa服从的分布(即仅考虑xa时的分布)

经过复杂的计算,我们得到结论:

条件高斯分布:

p(m x_a|m x_b) = N(m x_a|mmu_{a|b},mLambda_{aa}^{-1})

m mu_{a|b} = m mu_a - mLambda_{aa}^{-1}mLambda_{ab}(m{x}_b-m{mu}_b)

即条件高斯分布仍为高斯分布,且其方差与xb的取值无关,均值是xb的线性函数。

边缘高斯分布:

p(m x_a) = N(m x_a|mmu_a, mSigma_{aa})


2.3.3 高斯变数的贝叶斯定理

我们受到条件高斯分布和边缘高斯分布结果形式的启发,如果给定高斯边缘分布p(x)和一个高斯条件分布p(y|x),其中p(y|x)的均值是x的线性形式,方差与x无关,那么我们能否使用贝叶斯定理求出p(y)和p(x|y)呢?这个问题在后面的章节中很常见,它是一个典型的线性高斯模型的例子。

经过复杂的计算,我们得到结论。设:

p(m x)=N(m x|mmu,mLambda^{-1})

p(m y|m x) = N(m y|m{Ax} + m b,m L^{-1})

那么y的边缘分布和p(y|x)的形式为

p(m y) = N(m y|m{Amu}+m b,m L^{-1}+m{ALambda}^{-1}m A^T)

p(m x|m y) = N(m x|mSigma{m A^Tm L(m y-m b)+mLambdammu},mSigma)

其中

mSigma = (mLambda+m A^Tm{LA})^{-1}


2.3.4 高斯分布中的最大似然

通过对对数似然函数求偏微分并使其为零的方法,我们可以求出高斯分布两个参数的最大似然估计。设观测集 m X = (m x_1,...,m x_N)^T

mmu_{ML} = frac{1}{N}sum_{n=1}^Nm x_n quad mSigma_{ML} = frac{1}{N}sum_{n=1}^N(m x_n-mmu_{ML})(m x_n-mmu_{ML})^T

μ是无偏统计量,Σ是有偏统计量

E[m mu_{ML}] = mmu quad E[mSigma_{ML}] = frac{N-1}{N}mSigma


2.3.5 序列化估计

其实在第一章已经介绍过,序列化方法要求我们在接受序列化的观测集时,能够即时做出预测并在处理完之前的数据后便可以将其丢弃。事实上,对于高斯分布,我们使用充足统计量便可完成序列化估计,而对于一般的概率分布,可以使用Robbins-Monro演算法来实现序列化估计。


2.3.6 高斯分布的贝叶斯推理

最大似然估计是点估计,如果我们给高斯分布的参数以先验分布(共轭先验),便可以使用贝叶斯推理得到其后验分布。

情况1:单变数高斯分布,已知 sigma 为定值,μ服从某种分布

此时为了使μ的先验与后验具有相同的形式,可知μ应服从正态分布。我们设:

p(mu) = N(mu|mu_0,sigma_0^2)

则后验分布的形式为

p(mu|m X) = N(mu|mu_N,sigma_N^2)

其中

mu_N = frac{sigma^2}{Nsigma_0^2+sigma^2}mu_0 + frac{Nsigma_0^2}{Nsigma_0^2+sigma^2}mu_{ML} quadquad frac{1}{sigma_N^2} = frac{1}{sigma_0^2} + frac{N}{sigma^2}

mu_{ML} = frac{1}{N}sum_{n=1}^Nx_n

观察后验分布的形式可以得到一些有趣结论:

  1. μ的后验均值μN可以看做μ0对μML的一种妥协。对于N=0,它退化成μ0,对于N ->∞,则退化为μML。这与之前我们得到的结论当观测样本无穷大时贝叶斯等于最大似然保持一致。
  2. 对于N ->∞,方差将变得很小,因此后验分布在最大似然估计解的附近持高峰状态。
  3. 如果我们取 sigma_0 ->∞,及先验分布不能提供很多信息的情况下,后验均值与最大似然估计均值保持一致。

这种形式很容易推广到多变数高斯分布中。

情况2:单变数高斯分布,已知μ为定值,sigma服从某种分布

为方便起见,我们使用准确度 lambda equiv 1/sigma^2 来代替sigma,此时λ的共轭先验是Gamma分布

Gam(lambda|a,b) = frac{1}{Gamma(a)}b^alambda^{a-1}exp(-blambda)

这里 Gamma(a) 是伽马函数,Gamma分布的均值和方差是

E[lambda] = frac{a}{b} quadquad var[lambda]=frac{a}{b^2}

对于先验分布 p(lambda|m X) =  Gam(lambda|a_0,b_0) 后验分布的形式是

p(lambda|m X) =  Gam(lambda|a_N,b_N)

其中

a_N = a_0 + frac{N}{2} quad quad b_N = b_0 + frac{1}{2}sum_{n=1}^N(x_n-mu)^2 = b_0 + frac{N}{2}sigma_{ML}^2

因此,我们可以把先验分布中的a0理解成有2*a0个「有效的观测」,b0看做这些观测中方差的和

情况3:单变数高斯分布,μ和sigma服从联合分布

此时它们的共轭先验称为高斯-gamma分布(此后的分布由于过于复杂和不具必要性,不再介绍其形式)

情况4:多变数高斯分布,已知μ为定值,sigma服从某种分布

此时它的共轭先验称为Wishart分布

情况5:多变数高斯分布,μ和sigma服从联合分布

此时它们的共轭先验称为高斯-Wishart分布


2.3.7 Student t分布

如果我们考虑已知均值,但不知准确度(方差的倒数)的高斯分布,其准确度由作为共轭先验的Gamma分布给出,此时对准确度积分,即考虑了无穷个具有相同均值和不同方差的高斯分布的和,便得到了t分布。

St(x|mu,lambda,
u) = frac{Gamma(
u/2+1/2)}{Gamma(
u/2)}(frac{lambda}{pi
u})^{1/2}[1+frac{lambda(x-mu)^2}{
u}]^{-
u/2-1/2}

其中λ被称为t分布的准确度, 
u 被称为自由度,当
u =1时,它退化成柯西分布,而当
u ->∞时,它成为正态分布。它的密度函数与正态分布相似,但是在离均值较远的地方也有密度(而正态分布离均值较远的地方密度极小),因此我们说t分布具有长长的「尾巴」。因此我们称t分布具有健壮性,即t分布对于数据集中少量的很偏远的点不会像高斯分布那样敏感。t分布的最大似然估计解可以使用EM(expectation maximization)演算法得到。


2.3.8 周期性变数

正态分布往往不适用于周期性变数。比如统计病人24小时内发病的概率,会发现很难选择一个合理的时间作为起点来统计这一随机变数,因此我们考虑基于极坐标来描述这一类周期性变数。对于一个二维随机变数 m x = (x_1,x_2) ,写出协方差矩阵为单位矩阵倍数的情况:

p(x_1,x_2) = frac{1}{2pisigma^2}exp{-frac{(x_1-mu_1)^2(x_2-mu_2)^2}{2sigma^2}}

进行坐标变换和变数代换:

x_1=rcos	heta quad x_2 = rsin	heta

mu_1 = r_0cos	heta_0 quad mu_2 = r_0sin	heta_0 quad r = 1

得到概率分布:

p(	heta|	heta_0,m) = frac{1}{2pi I_0(m)}exp{mcos(	heta-	heta_0)}

该分布称为von Mises分布,其中 	heta_0 代表了这个分布的均值,而m是一个类似高斯分布中准确度(方差倒数)的变数。其中

I_0(m) = frac{1}{2pi}int_0^{2pi}exp{mcos	heta}d	heta

给定一组观测集,它的最大似然估计解是

	heta_0^{ML} = 	an^{-1}{frac{Sigma_nsin	heta_n}{Sigma_ncos	heta_n}} quad A(m_{ML}) = frac{1}{N}sum_{n=1}^Ncos(	heta_n-	heta_0^{ML})

其中 A(m) = frac{I_1(m)}{I_0(m)}

和高斯分布的局限类似,von Mises分布因其是单峰的所以表达能力受限。


2.3.9 混合高斯模型

为了处理多峰的数据,我们需要一个多峰的模型,其实就是把多个高斯分布取均值。

p(m x) = sum_{k=1}^Kpi_kN(m x|m mu_k,m Sigma_k)

其中 sum_{k=1}^Kpi_k=1

这样的密度形式也可以看成

p(m x) = sum_{k=1}^Kp(k)p(m x|k)

pi_k 是样本属于编号为k的模型的先验概率。

混合高斯模型的最大似然估计形式复杂,没有解析解。可以使用迭代数值优化或者EM演算法求得其近似解。

推荐阅读:

相关文章