1.问题的提出

假设 {x_1,x_2,cdots,x_n} 为样本数据, x_isim sum^K_{i=1}pi_iN(mu_i,sigma^2_i) , sum^K_{i=1}pi_i=1,pi_igeq0,i=1,2,cdots,K,K 已知。即数据的分布为混合正态分布。我们可以利用EM演算法对 (pi,mu,sigma) 进行估计,见Bishop的《PRML:模式识别与机器学习》其中 pi=(pi_1,pi_2,cdots,pi_K)^T, mu=(mu_1,mu_2,cdots,mu_K)^T, sigma^2=(sigma^2_1,sigma^2_2,cdots,sigma^2_K)^T 。EM演算法假定 K 是已知的,那么很自然地问,若 K 未知,如何对参数 (K,pi,mu,sigma) 进行估计?这就必须引入新的概率模型对问题进行描述,该模型就是 Dirichlet 过程.

2.Dirichlet 分布的定义

Dirichlet 过程是Dirichlet的分布的无穷维的推广。我们首先介绍Dirichelet分布。Dirichlet分布是Beta分布的推广。令 S_N={xin R^N:0leq x_i leq 1,sum^N_{i=1}x_i=1} ,Dirichelet分布 Dir(alpha) 的密度函数为 p(x|alpha)=frac{1}{B(alpha)}prod^N_{i=1}x^{alpha_i-1}_iI(xin S) ,其中 alpha=(alpha_1,alpha_2,cdots,alpha_N)^T,alpha_i>0,i=1,2,cdots,N, B(alpha)=frac{prod^N_{i=1}Gamma(alpha_i)}{Gamma(alpha_0)} ,其中 alpha_0=sum^N_{i=1}alpha_i

性质1:如果 Xsim Dir(alpha), 那么 E(X_i)=frac{alpha_k}{alpha_0},Var(X_i)=frac{alpha_k(alpha_0-alpha_k)}{alpha^2_0(alpha_0+1)}.

3.有限的贝叶斯混合分布生成过程

(1) pi|alphasim Dir(frac{alpha}{K},frac{alpha}{K},cdots,frac{alpha}{K})

(2) 	heta^*_k|Hsim H

(3) z_i|pisim Mult(pi)

(4) x_i|z_i,{	heta^*_k}sim F(	heta^*_{z_i})

4. Dirichlet 过程的定义及其性质

Dirichlet过程为概率测度的随机过程。Dirichlet 过程是Dirichlet 分布的无穷维的推广。

(Omega,mathcal{F},P) 为一概率空间, (Theta,mathcal{H}) 为一测度空间,H(Theta,mathcal{H})上的概率测度, alpha>0 .称 (Theta,mathcal{H})上的随机概率测度 G为参数 (alpha,H) 的Dirichlet 过程如果对任意 Theta 的有限划分 A_1,A_2,cdots,A_nin mathcal{H}

(G(A_1),G(A_2),cdots,G(A_n))sim Dir(alpha(H(A_1)),alpha(H(A_2)),cdots,alpha(H(A_n)))

Gsim DP(alpha,H) .

性质(1). 令 	heta_1,	heta_2,cdots,	heta_nsim G 为样本, Gsim DP(alpha,H) ,那么 G|	heta_1,	heta_2,cdots,	heta_nsim DP(alpha+n,frac{alpha}{alpha+n}H+frac{n}{alpha+n}frac{sum^n_{i=1}delta_{	heta_i}}{n}) .

性质(2). 令 	heta_1,	heta_2,cdots,	heta_nsim G 为样本, Gsim DP(alpha,H) ,那么

	heta_{n+1}|	heta_1,	heta_2,cdots,	heta_nsim frac{alpha}{alpha+n}H+frac{sum^n_{i=1}delta_{	heta_i}}{alpha+n} .

5. Dirichlet 过程的存在性及构造

下面我们利用折棍子方法给出Dirichlet 过程的构造(Stick-breaking Construction)。折棍子演算法如下

(1) eta_ksim Beta(1,alpha),k=1,2,cdots

(2) pi_k=eta_kprod^k_{i=1}(1-eta_i),k=1,2,cdots

(3) 	heta^*_ksim H,k=1,2,cdots

(4) G=sum^{infty}_{i=1}pi_kdelta_{	heta^*_k}

定理 Gsim DP(alpha,H) .

5. 应用

DP过程主要应用三个领域:模型的贝叶斯验证, 密度估计以及混合模型的聚类。

(1)模型的贝叶斯验证

如何对检验一个模型对给定样本数据拟合的效果呢?通常做法是利用贝叶斯公式计算感兴趣分布下的样本数据边际概率,然后计算其它分布下的样本数据边际概率。与其它分布相比,如果感兴趣的模型下的数据边际概率最高,那么就说明该分布对样本数据拟合较好。该方式核心的问题就是对比较分布的选择。一般地我们希望比较分布的集合尽可能的大,并且具有先验分布。DP过程是一个很好的选择,通常的做法是选该兴趣的分布为基础分布 H ,DP过程 G 为比较分布的集合,如果 H 分布比 G 分布对数据拟合的更好,则我们就认为选择 H 分布是合理的。

(2)密度估计

{x_1,x_2,cdots,x_n} 为数据样本,Gsim DP(alpha,H), f(x|	heta) 为密度函数。因为 G 是离散的,我们采用密度函数 p(x)=int f(x|	heta)G(	heta)d	heta 作为样本的密度函数.

(3)混合模型的聚类

Dirichlet过程最重要的应用就是利用混合模型对数据进行聚类。令 {x_1,x_2,cdots,x_n} 为数据样本, {	heta_1,	heta_2,cdots,	heta_n} 为相应的隐参数。假设	heta_isim G,i=1,2,cdots,n 独立同分布,且 x_isim F(	heta_i) ,具体生成模型如下: x_i|	heta_isim F(	heta_i),	heta_i|Gsim G,G|alpha, Hsim DP(alpha,H) .由于 G 是离散的,因此有多个 	heta_i 取同一个值,这样具有相同参数	heta_ix_j 为同一个类。

6. 展望

Dirichlet过程和贝叶斯非参在机器学习和统计中是一个非常活跃的领域。目前主要有以下四个方向:

(1)DP模型的有效统计推断问题。常见方法有MCMC抽样,变分方法。

(2)DP模型的扩展。

(3)收敛和相合性等理论问题。

(4)模型的应用:聚类,认知,回归和分类等


推荐阅读:
相关文章