高斯混合模型(GMM)的参数估计与EM算法求解过程
字数 2101 2025-11-04 11:59:17

高斯混合模型(GMM)的参数估计与EM算法求解过程

题目描述
高斯混合模型(GMM)是一种用多个高斯分布的线性组合来描述复杂数据分布的聚类算法。假设观测数据由K个高斯分布生成,但每个数据点具体来自哪个分布未知(隐变量)。目标是通过观测数据估计每个高斯分布的参数(均值、协方差、混合权重)。由于隐变量的存在,直接使用最大似然估计困难,需采用期望最大化(EM)算法迭代求解。

解题过程

  1. 问题建模
    • 设观测数据为 \(X = \{x_1, x_2, ..., x_N\}\),其中 \(x_i \in \mathbb{R}^d\)
    • 隐变量 \(Z = \{z_1, z_2, ..., z_N\}\)\(z_i\) 表示 \(x_i\) 所属的高斯分布编号,\(z_i \in \{1, 2, ..., K\}\)
    • 第k个高斯分布的参数为均值 \(\mu_k\)、协方差矩阵 \(\Sigma_k\)、混合权重 \(\pi_k\)(满足 \(\sum_{k=1}^K \pi_k = 1\))。
    • 数据似然函数为:

\[ p(X|\theta) = \prod_{i=1}^N \sum_{k=1}^K \pi_k \mathcal{N}(x_i|\mu_k, \Sigma_k) \]

 其中 $ \theta = \{\pi_k, \mu_k, \Sigma_k\}_{k=1}^K $。
  1. EM算法框架
    EM算法通过交替执行E步(求隐变量期望)和M步(最大化期望似然)迭代优化参数:
    • E步:基于当前参数 \(\theta^{\text{old}}\),计算隐变量的后验概率(责任值 \(\gamma(z_{ik})\)):

\[ \gamma(z_{ik}) = \frac{\pi_k \mathcal{N}(x_i|\mu_k, \Sigma_k)}{\sum_{j=1}^K \pi_j \mathcal{N}(x_i|\mu_j, \Sigma_j)} \]

 表示数据点 $ x_i $ 属于第k个分量的概率。
  • M步:利用E步得到的责任值更新参数,最大化期望似然函数:

\[ \begin{aligned} \pi_k^{\text{new}} &= \frac{1}{N} \sum_{i=1}^N \gamma(z_{ik}), \\ \mu_k^{\text{new}} &= \frac{\sum_{i=1}^N \gamma(z_{ik}) x_i}{\sum_{i=1}^N \gamma(z_{ik})}, \\ \Sigma_k^{\text{new}} &= \frac{\sum_{i=1}^N \gamma(z_{ik}) (x_i - \mu_k^{\text{new}})(x_i - \mu_k^{\text{new}})^T}{\sum_{i=1}^N \gamma(z_{ik})}. \end{aligned} \]

  1. 收敛性判断
    重复E步和M步直到对数似然函数的变化小于阈值或参数变化趋稳:

\[ \log p(X|\theta) = \sum_{i=1}^N \log \sum_{k=1}^K \pi_k \mathcal{N}(x_i|\mu_k, \Sigma_k). \]

  1. 示例说明
    假设有一维数据 \(X = \{1.2, 1.8, 3.1, 4.5\}\),设定K=2。初始化参数:
    • \(\pi_1 = \pi_2 = 0.5\), \(\mu_1 = 1.0, \mu_2 = 4.0\), \(\Sigma_1 = \Sigma_2 = 1.0\)
    • E步:计算每个数据点的责任值。例如对 \(x_1 = 1.2\)

\[ \gamma(z_{11}) = \frac{0.5 \times \mathcal{N}(1.2|1.0,1.0)}{0.5 \times \mathcal{N}(1.2|1.0,1.0) + 0.5 \times \mathcal{N}(1.2|4.0,1.0)} \approx 0.95. \]

  • M步:更新参数。例如更新 \(\mu_1\)

\[ \mu_1 = \frac{0.95 \times 1.2 + 0.90 \times 1.8 + 0.10 \times 3.1 + 0.02 \times 4.5}{0.95 + 0.90 + 0.10 + 0.02} \approx 1.6. \]

迭代至收敛后,两个高斯分布将分别拟合数据中的低值簇和高值簇。

  1. 关键点
    • EM算法保证每次迭代后似然函数不下降,但可能收敛到局部最优,因此需多次随机初始化。
    • 协方差矩阵可约束为对角矩阵以简化计算,避免过拟合。
    • GMM常用于聚类、密度估计,且是生成式模型,可采样新数据。
高斯混合模型(GMM)的参数估计与EM算法求解过程 题目描述 高斯混合模型(GMM)是一种用多个高斯分布的线性组合来描述复杂数据分布的聚类算法。假设观测数据由K个高斯分布生成,但每个数据点具体来自哪个分布未知(隐变量)。目标是通过观测数据估计每个高斯分布的参数(均值、协方差、混合权重)。由于隐变量的存在,直接使用最大似然估计困难,需采用期望最大化(EM)算法迭代求解。 解题过程 问题建模 设观测数据为 \( X = \{x_ 1, x_ 2, ..., x_ N\} \),其中 \( x_ i \in \mathbb{R}^d \)。 隐变量 \( Z = \{z_ 1, z_ 2, ..., z_ N\} \),\( z_ i \) 表示 \( x_ i \) 所属的高斯分布编号,\( z_ i \in \{1, 2, ..., K\} \)。 第k个高斯分布的参数为均值 \( \mu_ k \)、协方差矩阵 \( \Sigma_ k \)、混合权重 \( \pi_ k \)(满足 \( \sum_ {k=1}^K \pi_ k = 1 \))。 数据似然函数为: \[ p(X|\theta) = \prod_ {i=1}^N \sum_ {k=1}^K \pi_ k \mathcal{N}(x_ i|\mu_ k, \Sigma_ k) \] 其中 \( \theta = \{\pi_ k, \mu_ k, \Sigma_ k\}_ {k=1}^K \)。 EM算法框架 EM算法通过交替执行E步(求隐变量期望)和M步(最大化期望似然)迭代优化参数: E步 :基于当前参数 \( \theta^{\text{old}} \),计算隐变量的后验概率(责任值 \( \gamma(z_ {ik}) \)): \[ \gamma(z_ {ik}) = \frac{\pi_ k \mathcal{N}(x_ i|\mu_ k, \Sigma_ k)}{\sum_ {j=1}^K \pi_ j \mathcal{N}(x_ i|\mu_ j, \Sigma_ j)} \] 表示数据点 \( x_ i \) 属于第k个分量的概率。 M步 :利用E步得到的责任值更新参数,最大化期望似然函数: \[ \begin{aligned} \pi_ k^{\text{new}} &= \frac{1}{N} \sum_ {i=1}^N \gamma(z_ {ik}), \\ \mu_ k^{\text{new}} &= \frac{\sum_ {i=1}^N \gamma(z_ {ik}) x_ i}{\sum_ {i=1}^N \gamma(z_ {ik})}, \\ \Sigma_ k^{\text{new}} &= \frac{\sum_ {i=1}^N \gamma(z_ {ik}) (x_ i - \mu_ k^{\text{new}})(x_ i - \mu_ k^{\text{new}})^T}{\sum_ {i=1}^N \gamma(z_ {ik})}. \end{aligned} \] 收敛性判断 重复E步和M步直到对数似然函数的变化小于阈值或参数变化趋稳: \[ \log p(X|\theta) = \sum_ {i=1}^N \log \sum_ {k=1}^K \pi_ k \mathcal{N}(x_ i|\mu_ k, \Sigma_ k). \] 示例说明 假设有一维数据 \( X = \{1.2, 1.8, 3.1, 4.5\} \),设定K=2。初始化参数: \( \pi_ 1 = \pi_ 2 = 0.5 \), \( \mu_ 1 = 1.0, \mu_ 2 = 4.0 \), \( \Sigma_ 1 = \Sigma_ 2 = 1.0 \)。 E步 :计算每个数据点的责任值。例如对 \( x_ 1 = 1.2 \): \[ \gamma(z_ {11}) = \frac{0.5 \times \mathcal{N}(1.2|1.0,1.0)}{0.5 \times \mathcal{N}(1.2|1.0,1.0) + 0.5 \times \mathcal{N}(1.2|4.0,1.0)} \approx 0.95. \] M步 :更新参数。例如更新 \( \mu_ 1 \): \[ \mu_ 1 = \frac{0.95 \times 1.2 + 0.90 \times 1.8 + 0.10 \times 3.1 + 0.02 \times 4.5}{0.95 + 0.90 + 0.10 + 0.02} \approx 1.6. \] 迭代至收敛后,两个高斯分布将分别拟合数据中的低值簇和高值簇。 关键点 EM算法保证每次迭代后似然函数不下降,但可能收敛到局部最优,因此需多次随机初始化。 协方差矩阵可约束为对角矩阵以简化计算,避免过拟合。 GMM常用于聚类、密度估计,且是生成式模型,可采样新数据。