2.4 指数分布簇

本章介绍的所有概率分布都属于一个庞大的家族,那就是指数分布簇,它的成员有很多共有的重要性质,因此讨论一下它很有必要。我们设 m x 为一个或一组随机变数,给定参数集 meta ,则指数分布簇中的分布具有如下形式:

p(m x|m eta) = h(m x)g(m eta)exp{meta^Tm u(m x)}

这里 meta 称为分布的自然参数, m u(m x) 是一个列向量,其每个分量都是 m x 的函数(因此h(x)在这个形式里没有存在的必要,因为它可以写在指数上),而 g(m eta) 则是与 m x 无关的为了确保分布归一化的常数项。

举例:伯努利分布属于指数分布簇

p(x|mu) = Bern(x|mu) = mu^x(1-mu)^{1-x} = (1-mu)exp{ln(frac{mu}{1-mu})x}


2.4.1 最大似然估计和充足统计量

对于指数分布簇的形式,给定观测后求其似然函数,两侧对 meta 取梯度并令其为零(这是求最大似然估计的通用步骤),我们得到

-
ablaln g(meta_{ML}) = frac{1}{N}sum_{n=1}^Nm u(m x_n)

这是一个求解参数最大似然估计的标准过程,而且我们也顺理成章地得到了适用于序列方法的充足统计量 Sigma_nm u(m x_n) 。因此,所有指数分布簇中的分布都是可以有良好形式序列方法的分布。


2.4.2 共轭先验

指数分布簇也有通用形式的共轭先验。我们受的启发是使得参数先验和后验的形式相同,因此它的形式是

p(meta|mchi,
u)=f(mchi,
u)g(meta)^
uexp{
umeta^Tmchi}

其中 f(mchi,
u) 的作用是归一化。验证得其后验分布是

p(meta|m X,mchi,
u)propto g(meta)^{
u+N}exp{meta^T(sum_{n=1}^Nm u(m x_n)+
umchi)}

因此我们可以将 
u 解读为「伪观测」数量,而 mchi 便是充足统计量了。


2.4.3 无信息先验

有些时候,我们对参数的先验分布具有一些知识,但是也有时候我们对参数的先验分布一无所知。此时我们希望寻找一种先验分布的形式,称为无信息先验,即「让数据为自己代言」。

如果参数是离散的只有K种可能,那么我们可以给每种可能赋予1/K的等概率。但是如果参数的取值是连续的,这样做就会遇到两种困难。

  1. 先验分布无法归一化。这种先验称为「不合适的」,但是我们强行使用这种先验得到的后验往往是可以被归一化的(因此这一点不难解决)。
  2. 随机变数被非线性变换后的密度能否被接受。通过概率论的知识我们知道,对于是常数的密度函数,在对变数做非线性变换后其密度很可能不是常数了

为了解决第二点,我们提出两种无信息的先验。以高斯分布为例子:

  1. 其均值应该在变数的平移尺度上具有不变性,即它的先验分布密度函数应该具有如下性质:

p(mu-c)=p(mu)

2. 其方差应该在变数的缩放尺度上具有不变性,即它的先验分布密度函数应该具有如下性质:

p(sigma) = p(frac{1}{c}sigma)frac{1}{c} quad 	herefore p(sigma)propto1/sigma


2.5 非参数方法

在本章中我们之前介绍的方法可以称作参数方法,因为他们受一小部分由数据集决定的参数控制。参数方法的一个重要问题在于所选的模型可能对于生成数据的模型是一个很差的近似,并最终导致预测效果很差。举例,如果生成数据的模型是多峰的,那么我们用单峰的模型不可能得到好的近似。

因此我们提出非参数方法,它们对数据集不需要作出什么假设。这里我们只讨论简单的频率主义非参数方法,但是贝叶斯主义的非参数方法其实也很值得研究。

最直观的非参数方法当属直方图了,将一个随机变数的取值区间分成很多个小块,比如在一个长度为 Delta_i 的小块中有 n_i 个观测,而整体有N个观测,很自然地将这一块的概率定义为 p_i=frac{n_i}{NDelta_i} 。这样的分法明显具有归一化的性质,即 int p(x)dx=1 。直方图法可以被很容易的序列化,概率一旦计算完成也可以将数据集丢弃,因此在实际应用中,它一般用作快速地在一两个维度上将数据可视化。它之所以不适合用作密度估计,是因为:

  1. 在区间的边界密度函数不连续
  2. 容易受维数灾难影响,高维环境下数据会稀疏

但是直方图法给我们两个启发:

  1. 为了估计某一点密度,我们应该著重考虑离该点距离较近的观测情况
  2. 分的区间不能太密(数据稀疏)也不能太松(表达能力受限)

2.5.1 核密度估计

设要估计的点x附近有K个观测,总体有N个观测,而这K个观测是在以x为球心的体积为V的球中,那么我们估计在点x的密度为:

p(m x) = frac{K}{NV}

如果我们固定K,就得到K临近演算法;如果我们固定V,就得到核方法。可以证明随著N的增大这一概率将逐渐趋近于真实概率。这里核函数可以是在定义域非负并且其在定义域上的积分为1的任何函数。一个常见的例子是高斯核函数:

p(m x) = frac{1}{N}sum_{n=1}^Nfrac{1}{(2pi h^2)^{D/2}}exp{-frac{||m x-m x_n||^2}{2h^2}}

用核密度估计的好处是在训练过程中不需要任何计算,只要把所有数据点存起来就可以了,但是这也是它的一个主要缺点,因为估计密度的时空复杂度和数据集线性相关。


2.5.2 K近邻方法

其实和核密度估计使用的公式一样,因此这里我们展示用K近邻方法分类。设观测集总共有K类分别是 C_1,...,C_k 它们的个数分别是 N_1,...,N_k ,满足 sum_k N_k=N 。当我们分类一个新的点 m x 时,我们作一个以它为球心的球,使其正好包含K个点,设这个球的体积为V,K个点中每类的点分别有 K_k 个。由之前介绍的公式我们有

p(m x) = frac{K}{NV}

相似的,考虑属于某一类的情况有

p(m x|C_k) = frac{K_k}{N_kV}

而各类的先验概率是

p(C_k) = frac{N_k}{N}

因此我们可以用贝叶斯定理计算出后验概率

p(C_k|m x) = frac{p(m x|C_k)p(C_k)}{p(m x)} = frac{K_k}{K}

如果要使错误率最小,我们选取使 K_k/K 最大的类即可。可以证明,当N趋于无穷的时候,K=1分类的错误率也不会超过最优分类器(即使用真实概率密度)错误率的两倍。

可以看到,非参数方法的主要问题是需要储存整个训练集。在后面的章节中,我们会介绍适应能力极强的密度模型,但其复杂度可以与训练集无关。


推荐阅读:
相关文章