第1柱 - 回归
第2柱- 降维
第3柱 - 密度估计
- 目的:以某种方式表示数据
- 直接的方式:用数据点本身代表数据,如点坐标
- 数据集庞大 or 要表现数据特征,数据点本身无法反映特征
- 使用参数族(高斯分布或者Beta分布)中的密度,紧凑表示数据
- 找出均值和方差(使用最大似然估计ML和最大后验估计),然后套用高斯分布
- 局限:我们提前假设了数据符合高斯分布,如果数据多峰、重尾、强偏态,则完全不准
密度估计:混合模型
- 高斯分布(以及其他类似分布)建模能力有限
- 混合模型 \(p(x)\):是更具表达力的分布族
- K 个简单(基础)分布的凸组合
- \(p(x) = \sum_{k=1}^{K} \pi_k p_k(x)\)
- 其中 \(\sum_{k=1}^{K} \pi_k = 1,\ \ 0 \leq \pi_k \leq 1\) (凸组合)
采用最大似然 ML 进行参数学习
- 给定数据集 \(X = {−3,−2.5,−1, 0, 2, 4, 5}\),包含7个数据点
- 目标:找到一个具有\(K = 3\) 个分量的 GMM 来建模数据的密度,模型参数 \(\theta_k = [\mu_k,\ \Sigma_k,\ \pi_k]\)
- 初始化 3 个 基础标准高斯分布
- $ p_1(x) = N(x | −4, 1)$
- $ p_2(x) = N(x | 0, 0.2)$
- $ p_3(x) = N(x | 8, 3)$
- 权重参数初始化 \(\theta = [1/3,\ 1/3,\ 1/3]\),迭代求解 \(\theta\)
Step 1:写出 \(\theta\) 的似然函数 \(\theta_{L}\) 并求取最大似然估计 \(\theta_{ML}\)
- \(p(X \ |\ \theta) = \prod_{n=1}^N \ p(x_n\ |\ \theta),\ \ \ \ p(x_n\ |\ \theta) = \sum_{k=1}^K\ \pi_k N(x_n\ |\ \mu_k,\ \Sigma_k)\)
- 写出对数似然 \(L(\theta)\)
- \(L=log\ p(X \ |\ \theta) = \sum_{n=1}^N\log\ p(x_n\ |\ \theta)=\sum_{n=1}^N\log\ \sum_{k=1}^K\ \pi_k N(x_n\ |\ \mu_k,\ \Sigma_k)\)
- 不能将对数符号 \(log\) 移入求和 \(\sum_{n=1}^N\) 中,因此无法直接求解最大似然的解析解
- 对于 GMM 模型的参数 \(\mu_k,\ \Sigma_k,\ \pi_k\) ,必然有 \(\frac{\partial L}{\partial \mu_k} = 0^T,\ \ \frac{\partial L}{\partial \Sigma_k} = 0^T,\ \ \frac{\partial L}{\partial \pi_k} = 0^T\)
- 即 \(\sum_{n=1}^N\ \frac{\partial log\ p(x_n\ |\ \theta)}{\partial \mu_k} = 0^T,\ \ \sum_{n=1}^N\ \frac{\partial log\ p(x_n\ |\ \theta)}{\partial \Sigma_k} = 0^T,\ \ \sum_{n=1}^N\ \frac{\partial log\ p(x_n\ |\ \theta)}{\partial \pi_k} = 0^T\)
- 对于上式 3 个局部最优条件,以单个数据样本点,有 \(\frac{1}{p(x_n\ |\ \theta)}\ \frac{\partial\ p(x_n\ |\ \theta)}{\partial \theta} = 0^T\)
- 其中 \(\theta_k = [\mu_k,\ \Sigma_k,\ \pi_k], \ \ k=1,2,...,K\),且 \(p(x_n\ |\ \theta) = \sum_{j=1}^{K}\ \pi_j\ N(x_n\ |\ \mu_j,\ \Sigma_j)\)
- 数据集的似然 = 责任 × 单个样本点的似然
STEP 2:定义 责任 \(r_{nk}\)
- \(r_{nk} = \frac{\pi_k\ N(x_n\ |\ \mu_k,\ \Sigma_k)}{\sum_{j=1}^{K}\ \pi_j\ N(x_n\ |\ \mu_j,\ \Sigma_j)}\)(第 k 个基础分布加权值与整个混合模型分布的比值,\(x_n\) 是数据集中的数据样本点,为已知)
- 第 k 个混分分量(基础分布)对第n个数据样本的责任
- 如果数据样本点是该混合分量的一个合理样本,那么混合分量对该数据点具有高责任
- 因为:\(p(x_n\ |\ \mu_k,\ \Sigma_k)= \pi_k\ N(x_n\ |\ \mu_k,\ \Sigma_k)\)
- 即:第 k 个混合分量对数据点 \(x_n\) 的责任 \(r_{nk}\) 与给定数据点 \(x_n\) 时该混合分量的似然 \(p(x_n\ |\ \mu_k,\ \Sigma_k)\)成正比
- 行向量 \(r_n\ :=\ [r_{n1},...,r_{nK}]^T \in R^K\) 是一个(归一化的)概率向量,即 \(\sum_{k=1}^{K}r_{nk}\ =\ 1\),且 \(r_{nk}\ \geq \ 0\)
- 责任 \(r_{nk}\) 表示 \(x_n\) 由第 \(k\) 个混合分量生成的概率,本例中是一个 \(7 \times 3\) 的矩阵(7 个数据样本点,3 个混合分量)
- 第 n 行表示所有的混合分量对第 n 个数据样本点 \(x_n\) 的责任
- 一个数据点的所有 K 个责任之和(每行的和)为1
- 第 k 列描述了 第 k 个混合分量的责任
- 我们可以看到第三个混合分量(第三列)对前四个数据点中的任何一个都没有责任,但对剩余的数据点承担了很大责任。
- 将一列所有责任的总和值记为 \(N_k\),即:第 k 个混合分量的总责任
STEP 3:更新 均值 \(\mu_k,\ k=1,2,...,K\)
posted on
2025-12-25 17:32
中年二班
阅读(
9)
评论()
收藏
举报