基于狄利克雷过程混合模型(Dirichlet Process Mixture Model, DPMM)的无参数聚类原理与推断过程
题目描述
狄利克雷过程混合模型(DPMM)是一种非参数贝叶斯模型,用于聚类任务。与传统混合模型(如高斯混合模型)不同,DPMM不需要预先指定聚类数量K,而是通过狄利克雷过程(DP)先验,让数据自动决定聚类的个数。本题将详细讲解DPMM的基本原理、数学模型、以及常用的吉布斯采样推断过程。
解题过程
1. 问题背景与核心思想
- 在传统聚类中(如K-means、GMM),需要预先设定聚类数K,但实际中K往往未知。
- DPMM利用狄利克雷过程作为先验,允许潜在聚类数无限多个,但实际数据只会展现出有限个聚类(由数据决定)。
- 核心思想:每个数据点从某个混合分量生成,但分量参数来自狄利克雷过程,分量数量可随数据增加而增长。
2. 狄利克雷过程(DP)简介
- 狄利克雷过程 \(DP(\alpha, H)\) 是一个随机概率分布,其中:
- \(\alpha > 0\):集中参数,控制新聚类的产生概率。
- \(H\):基分布,是参数\(\theta\)的先验分布(例如高斯分布的均值和协方差)。
- DP的性质:从DP中采样得到的分布是离散的(即使\(H\)是连续的),这使得不同数据点可能共享相同的参数。
- 构造方法:常用“折棍构造”(Stick-breaking Construction)表示:
\[ G = \sum_{k=1}^{\infty} \pi_k \delta_{\theta_k}, \quad \pi_k = \beta_k \prod_{l=1}^{k-1}(1-\beta_l) \]
其中 \(\beta_k \sim \text{Beta}(1, \alpha)\),\(\theta_k \sim H\),\(\delta\)为狄拉克函数,\(\pi_k\)是混合权重。
3. DPMM的生成过程
假设有\(N\)个数据点\(x_1, \dots, x_N\),生成过程如下:
- 从\(DP(\alpha, H)\)采样一个混合分布\(G\)(参数为\(\theta_k\)和权重\(\pi_k\))。
- 对每个数据点\(i\):
a. 从\(G\)采样参数\(\theta_i\)(由于\(G\)离散,不同点可能分配到相同\(\theta_k\))。
b. 从观测模型\(F(x_i | \theta_i)\)生成数据(例如高斯分布\(F = \mathcal{N}(\mu_k, \Sigma_k)\),其中\(\theta_k = (\mu_k, \Sigma_k)\))。
- 等价地,可引入潜变量\(z_i\)表示点\(i\)所属的聚类(\(\theta_{z_i}\)为该聚类的参数)。
4. 吉布斯采样推断
由于DPMM后验难以直接计算,常用吉布斯采样进行近似推断。以高斯混合为例(基分布\(H\)为高斯-逆Wishart分布),步骤包括:
a. 初始化:随机分配每个点到一个聚类,参数从先验\(H\)采样。
b. 迭代采样:每一步更新一个数据点\(i\)的聚类分配\(z_i\),条件于其他点的分配\(z_{-i}\)和观测\(x\)。
- 移除点\(i\),计算现有聚类\(k\)的后验预测概率:
\[ P(z_i = k | z_{-i}, x_i) \propto n_k^{-i} \cdot p(x_i | \{x_j : z_j = k, j \neq i\}) \]
其中\(n_k^{-i}\)是聚类\(k\)中除点\(i\)外的点数,\(p(x_i | \cdots)\)是基于聚类\(k\)已有数据计算的预测分布(在高斯下为t分布)。
- 分配到新聚类\(k_{\text{new}}\)的概率:
\[ P(z_i = k_{\text{new}} | z_{-i}, x_i) \propto \alpha \cdot p(x_i | H) \]
其中\(p(x_i | H)\)是基分布\(H\)的边际似然。
- 标准化所有概率,采样新的\(z_i\)。若分配到新聚类,则从\(H\)的后验采样新参数\(\theta_{k_{\text{new}}}\)。
c. 参数更新:采样完所有\(z_i\)后,更新每个聚类\(k\)的参数\(\theta_k\),基于聚类内数据和先验\(H\)计算后验分布并采样。
5. 超参数设置
- 集中参数\(\alpha\):控制新聚类生成概率,可用伽马先验并采样更新。
- 基分布\(H\):例如高斯-逆Wishart分布,超参数需预先设定(如均值、方差尺度)。
6. 聚类数确定
- 吉布斯采样后,每个迭代步的聚类数可能变化,最终取后验中出现频率最高的聚类数,或基于所有采样平均。
7. 总结
- DPMM通过非参数贝叶斯方法自动推断聚类数,适合未知聚类数的场景。
- 吉布斯采样是一种经典推断方法,但计算开销较大;也可用变分推断加速。
- 关键优势:模型灵活性高,避免了手动选择K的偏差。