第二章 Probability Distributions
PRML
章节细讲
这一章的主要目标是对给定训练集合X建立合适的分布p(x)。建模分为参数方法与非参数两种方法,参数方法假定分布的函数形式,只需要对假设的函数的参数做点估计(frequentist)或者后验概率(Bayesian)即可。因为有时我们假设的函数形式对于数据集来说并不合适,因此非参函数不假设分布的函数形式,而只依赖数据本身。
2.1. Binary Variables
2.1.1 The beta distribution
共轭先验是让后验分布的函数形式和先验分布的函数形式是保持一致的。
Distribution |
Conjugate Prior |
Bernoulli |
Beta distribution |
Multinomial |
Dirichlet distribution |
Gaussian , Given variance, mean unknown |
Gaussian distribution |
Gaussian, Given mean, variance unknown |
Gamma distribution |
Gaussian, both mean and variance unknown |
Gaussian-Gamma distribution |
共轭先验的意义是方便进行Bayesian inference,甚至是sequential Bayesian inference,得到一个样本后,可以算出后验概率;由于选取的是共轭先验,所以后验概率和原来的先验概率形式一样,可以把该后验概率当作下一轮新的先验概率,用于下一个样本,如此迭代下去。对于stream of data的情况,这种方式可以实现real-time learning。
2.3. The Gaussian Distribution
多元高斯分布存在缺陷:
- 参数太多,计算复杂(协方差矩阵是维度的平方级的参数个数)
- 单峰函数,建模能力有限
以上两者形成某种矛盾:一方面是参数多,模型应该是更flexible的;而另一方面,它却不能建模multimodal function。对于第一点可以限制协方差矩阵的形式达到降低参数个数目的。第二点可以对高斯分布拓展:
- introducing discrete latent variables:例如Gaussian Mixtures model
- introducing continuous latent variables:例如Linear Dynamic System
2.3.5 Sequential estimation
前几节已经介绍了贝叶斯的增量学习,即就是把上次迭代的后验概率p(w|D)作为这次迭代的先验概率p(w),从而完成增量学习,过程如下:
p(θ|D)∝[p(θ)∏n=1N−1p(xn|θ)]p(xN|θ)
对于频率派,我们可以使用Robbins-Monro procedure的完成增量学习,过程如下:
θ(N)=θ(N−1)+aN−1∂∂θ(N−1)ln p(xN|θ(N−1))
2.4. The Exponential Family
指数族分布的形式:
p(x|η)=h(x)g(η)exp{η u(x)}
其中
η是natural parameter,它跟一个分布通常说的参数可能不同,而是由通常的参数经过变换而来(以符合指数族分别的形式)。
假设用MLE方法进行参数估计,得到:
p(X|η)=(∏n=1Nh(xn))g(η)Nexp{ηT∑n=1Nu(xn)}
对参数
η求导,得到
ηML:
−∇ln g(ηML)=1N∑n=1Nu(xn)
最右端得到的
∑u(xn)是指数族的充分统计量。
2.4.3 Noninformative priors
Translation invariant和Scale invariant的两类分布的无信息先验
p(x|u)=f(x−u)
参数
u称为位置参数。这类分布表现出 translation invariance 性质,因为我们平移
x^=x+c后分布保持不变:
p(x^|u^)=f(x^−u^)
其中
u^=u+c。
p(x|θ)=1θf(xθ)
参数
θ称为尺度参数。这类分布表现出 scale invariance 性质,因为我们伸缩
x^=cx后分布保持不变:
p(x^|θ^)=1θ^f(x^θ^)
其中
θ^=cθ。
2.5. Nonparametric Methods
问题:给定D维空间中观察到的N个数据样本,估计密度函数p(x) (这是一个unsupervised learning)
方法:在足够小的区域R中考虑问题。任取一个点x,设落入R的概率是P。设观察到N个样本,则R中落入K个点的概率是分别Bin(K|N,P)。
1. 由于R足够小,所以p(x)在R中近似常数,所以:P=p(x)∗V,V是R的测度(体积);
2. 由于N足够大,二项分别Bin(K|N,P)的取值集中在均值N∗P附近,即:K=N∗P。
以上两式联立,可以得到区域R上的密度函数近似值:
p(x)=K/(N∗V)(1)
。
Kernel density estimator:固定V(一个超立方体),在数据集上计算V范围内的K,常采用高斯函数做smoothing kernel function。
k(u⃗ )=⎧⎩⎨10,|ui|⩽12,otherwise
因此
k(x−xnh)=1表示的是:数据点
xn落在了以
x为中心,边长为
h的超立方体中。那么在N个点中,落入该立方体的点数为:
K=∑n=1Nk(x−xnh)
带入(1)式求出概率密度
p(x):
p(x)=1N∑n=1N1hDk(x−xnh)
kNN:固定K,在数据集上计算为了含有K个点(这个是无监督,不分类,只要K个数据点)所需要的V(一个超球)。
全章概况
本章重点阐述两种对概率分布建模的方法,参数方法和无参方法。参数方法中讲了常见几个分布,例如Bernouli、Binomial、beta、Multinomal和Gaussian。然后从以上分布引出指数族分布和共轭先验等概念。因为参数方法假设了函数形式,因此可能这种函数形式并不适合数据集。因此,引出了非参方法p(x)=K/(N∗V),固定V就是Kernel density estimator,另一方面固定K就是常见的KNN。
参考资料
- PRML, chapter 1
- Notes on Pattern Recognition and Machine Learning (Jian Xiao)
- Pattern Recognition And Machine Learning 读书会, chapter 1