Machine Learning
  • Introduction
  • man
  • Linear model
    • Linear Regression
    • Generalized Linear Models
    • Nonlinear regression
  • bayes
    • bayesian network
    • Variational Bayesian inference
    • Gaussian Process Regression
  • Logistic Regression
    • L1 regularization
    • L2 regularization
    • softmax
    • Overflow and Underflow
  • SVM
    • C-SVM
    • C-SVM求解
  • EM
    • GMM
  • Maximum Entropy
    • IIS
  • HMM
    • viterbi algorithm
  • CRF
  • Random Forest
    • bagging
    • random forest
  • boosting
    • catboost
    • gradient boosting
    • Newton Boosting
    • online boosting
    • gcForest
    • Mixture models
    • XGBoost
    • lightGBM
    • SecureBoost
  • LDA
  • rank
    • RankNet
    • LambdaRank
    • SimRank
  • Factorization Machine
    • Field-aware Factorization Machine
    • xdeepFM
  • Clustering
    • BIRCH
    • Deep Embedding Clustering
  • Kalman filtering
  • word2vec
  • 关联规则挖掘
  • MATH-Mathematical Analysis
    • measure
  • MATH-probability
    • Variational Inference
    • Dirichlet分布
    • Gibbs Sampling
    • Maximum entropy probability distribution
    • Conjugate prior
    • Gaussian Process
    • Markov process
    • Poisson process
    • measure
    • Gumbel
  • MATH-Linear Algebra
    • SVD
    • SVD-推荐
    • PCA
    • Linear Discriminant Analysis
    • Nonnegative Matrix Factorization
  • MATH-Convex optimization
    • 梯度下降
    • 随机梯度下降
    • 牛顿法
    • L-BFGS
    • 最速下降法
    • 坐标下降法
    • OWL-QN
    • 对偶问题
    • 障碍函数法
    • 原对偶内点法
    • ISTA
    • ADMM
    • SAG
  • MATH-碎碎念
    • cost function
    • Learning Theory
    • sampling
    • Entropy
    • variational inference
    • basis function
    • Diffie–Hellman key exchange
    • wavelet transform
    • 图
    • Portfolio
    • 凯利公式
  • ML碎碎念
    • 特征
    • test
    • TF-IDF
    • population stability index
    • Shapley Values
  • 课件
    • xgboost算法演进
  • Time Series
  • PID
  • graph
    • SimRank
    • community detection
    • FRAUDAR
    • Anti-Trust Rank
    • Struc2Vec
    • graph theory
    • GNN
  • Anomaly Detection
    • Isolation Forest
    • Time Series
  • Dimensionality Reduction
    • Deep Embedded Clustering
  • Federated Learning
  • automl
  • Look-alike
  • KNN
  • causal inference
Powered by GitBook
On this page
  • 一维单高斯模型SGM###
  • 多维单高斯模型SGM###
  • 混合高斯模型###
  • 求解
  • 半监督学习###
  • 并行学习###

Was this helpful?

  1. EM

GMM

PreviousEMNextMaximum Entropy

Last updated 5 years ago

Was this helpful?

一维单高斯模型SGM###

分布概率密度函数PDF定义如下:

N(x;μ,σ)=12πσexp(−(x−μ)22σ2)N(x;\mu,\sigma) = \frac {1}{\sqrt {2\pi} \sigma}exp(-\frac {(x-\mu)^2}{2\sigma^2})N(x;μ,σ)=2π​σ1​exp(−2σ2(x−μ)2​)

多维单高斯模型SGM###

分布概率密度函数PDF定义如下:

N(x;μ,Σ)=1(2π)D∣Σ∣exp(−12(x−μ)TΣ−1(x−μ))N(x;\mu,\Sigma) = \frac {1}{\sqrt {(2\pi)^D|\Sigma|}} exp(-\frac {1}{2}(x-\mu)^T \Sigma^{-1} (x-\mu))N(x;μ,Σ)=(2π)D∣Σ∣​1​exp(−21​(x−μ)TΣ−1(x−μ))

注:μk\mu_kμk​各类均值,Σk\Sigma_kΣk​各类协方差矩阵,D是维度

注意得满足下面3个条件,才等价于N维随机向量服从多维正太分布

  • 任何线性组合Y=α1x1+…+αnxnY = \alpha_1x_1+ \ldots +\alpha_n x_nY=α1​x1​+…+αn​xn​服从正太分布

  • 存在随机

    参考wiki

几何理解: 二维的SGM在平面上近似椭圆形,在三维空间中近似椭球体。

混合高斯模型###

由K个 Gaussian Model(多维)线性组合在一起就是GMM的概率密度函数:

求解

每个样本所属分类已知####

所有样本所属分类已知,则跟EM算法没有关系。但是部分样本已知分类,如何半监督的学习,或者初始化EM的参数?

样本分类数未知####

对整体数据求对数极大似然:

  • 初始化参数:初始化每个Gaussian Models 都是标准正太分布。

  • M步:对期望的下限最大化,计算新一轮迭代的模型参数。

半监督学习###

并行学习###

参考佳文####

p(x)=∑k=1Kp(Zk=1)p(x∣Zk=1)=∑k=1KπkN(x∣μk,Σk)∑k=1Kπk=1Z为K维向量,满足Zk∈0,1一个样本不能由多个类别混合组成吗?EM中没这样要求。p(x) = \sum_{k=1}^K p(Z_k=1)p(x|Z_k=1) = \sum_{k=1}^K \pi_k N(x|\mu_k,\Sigma_k) \\ \sum_{k=1}^K \pi_k = 1 \\ Z\text{为K维向量,满足} Z_k \in {0,1} \\ \text{一个样本不能由多个类别混合组成吗?EM中没这样要求。}p(x)=k=1∑K​p(Zk​=1)p(x∣Zk​=1)=k=1∑K​πk​N(x∣μk​,Σk​)k=1∑K​πk​=1Z为K维向量,满足Zk​∈0,1一个样本不能由多个类别混合组成吗?EM中没这样要求。

这样应该是有问题的。后来看到徐亦达老师的课件中是这么定义的:

设样本容量为N,属于第K个分类的样本数量为NkN_kNk​,则

πk=NkNμk=1Nk∑x∈L(k)xΣk=1Nk∑x∈L(k)(x−μk)T(x−μk)\pi_k = \frac {N_k}{N} \\ \mu_k = \frac {1}{N_k} \sum_{x \in L(k)}x \\ \Sigma_k = \frac {1}{N_k} \sum_{x \in L(k)}(x-\mu_k)^T(x-\mu_k)πk​=NNk​​μk​=Nk​1​x∈L(k)∑​xΣk​=Nk​1​x∈L(k)∑​(x−μk​)T(x−μk​)
f(x)=∑i=1Nlog⁡∑k=1KπkN(x∣μk,Σk)f(x) = \sum_{i=1}^N \log \sum_{k=1}^K \pi_k N(x|\mu_k,\Sigma_k)f(x)=i=1∑N​logk=1∑K​πk​N(x∣μk​,Σk​)

E步:依据当前模型的参数,计算分模型k对观测数据xix_ixi​的相应度。 或者说每个样本由第k个component生成的概率,即类别k在给定的x下的条件概率,利用bayesian公式得:

γ(i,k)=p(z=k∣xi;μ,Σ)=πkN(xi∣μk,Σk)∑k=1KπkN(xi∣μk,Σk)γ(i,k)是在当前模型参数下等i个观测数据来自第k个分模型的概率\gamma(i,k) = p(z=k|x_i;\mu,\Sigma) = \frac {\pi_k N(x_i|\mu_k,\Sigma_k)}{\sum_{k=1}^K \pi_k N(x_i|\mu_k,\Sigma_k)} \\ \gamma(i,k) \text{是在当前模型参数下等i个观测数据来自第k个分模型的概率}γ(i,k)=p(z=k∣xi​;μ,Σ)=∑k=1K​πk​N(xi​∣μk​,Σk​)πk​N(xi​∣μk​,Σk​)​γ(i,k)是在当前模型参数下等i个观测数据来自第k个分模型的概率

注意:在算γ(i,k)\gamma(i,k)γ(i,k)时,假定μk,Σk\mu_k,\Sigma_kμk​,Σk​均已知,是上一轮迭代出的参数。

注意:此时γ(i,k)\gamma(i,k)γ(i,k)已知,也就是知道了每个样本由那个component生成,此时求模型参数,使似然函数最大化。

μk,Σk\mu_k,\Sigma_kμk​,Σk​分别求偏导数,然后等于0就可以了

πk\pi_kπk​不能直接求偏导数,因为有∑k=1Kπk=1\sum_{k=1}^K \pi_k=1∑k=1K​πk​=1的约束,可以构造拉格朗日函数求解

求解过程: 对μk\mu_kμk​求导,固定πk,Σk\pi_k,\Sigma_kπk​,Σk​

f=∑i=1Nlog⁡∑k=1KπkN(x∣μk,Σk)∑k=1Kπk=∑i=1Nlog⁡∑k=1KπkN(x∣μk,Σk)∑k=1Kπk=∑i=1N∑k=1Kγ(i,k)log⁡N(x∣μk,Σk)∑k=1Kγ(i,k)∂f∂μk=−∑i=1N∑k=1Kγ(i,k)12(xi−μ)TΣk−1(xi−μ)=−12∑i=1Nγ(i,k)(2μkTΣk−1xi−μkTΣk−1μk)=∑i=1Nγ(i,k)(Σk−1xi−Σk−1μk)=0μk=1Nk∑i=1Nγ(i,k)xif = \sum_{i=1}^N \log \sum_{k=1}^K \pi_k \frac {N(x|\mu_k,\Sigma_k)}{\sum_{k=1}^K \pi_k} = \sum_{i=1}^N \log \sum_{k=1}^K \pi_k \frac {N(x|\mu_k,\Sigma_k)}{\sum_{k=1}^K \pi_k} = \sum_{i=1}^N \sum_{k=1}^K \gamma(i,k) \log \frac {N(x|\mu_k,\Sigma_k)}{ \sum_{k=1}^K \gamma(i,k)} \\ \frac {\partial f}{\partial \mu_k} = -\sum_{i=1}^N \sum_{k=1}^K \gamma(i,k) \frac {1}{2}(x_i-\mu)^T \Sigma_k^{-1} (x_i-\mu) = -\frac {1}{2} \sum_{i=1}^N \gamma(i,k)(2\mu_k^T\Sigma_k^{-1}x_i - \mu_k^T\Sigma_k^{-1}\mu_k ) = \sum_{i=1}^N \gamma(i,k)(\Sigma_k^{-1}x_i - \Sigma_k^{-1}\mu_k ) = 0 \\ \mu_k = \frac {1}{N_k} \sum_{i=1}^N \gamma(i,k)x_if=i=1∑N​logk=1∑K​πk​∑k=1K​πk​N(x∣μk​,Σk​)​=i=1∑N​logk=1∑K​πk​∑k=1K​πk​N(x∣μk​,Σk​)​=i=1∑N​k=1∑K​γ(i,k)log∑k=1K​γ(i,k)N(x∣μk​,Σk​)​∂μk​∂f​=−i=1∑N​k=1∑K​γ(i,k)21​(xi​−μ)TΣk−1​(xi​−μ)=−21​i=1∑N​γ(i,k)(2μkT​Σk−1​xi​−μkT​Σk−1​μk​)=i=1∑N​γ(i,k)(Σk−1​xi​−Σk−1​μk​)=0μk​=Nk​1​i=1∑N​γ(i,k)xi​

对Σk\Sigma_kΣk​求导,固定πk,μk\pi_k,\mu_kπk​,μk​

Σk=1Nk∑i=1Nγ(i,k)(xi−μk)(xi−μk)T\Sigma_k = \frac {1}{N_k} \sum_{i=1}^N \gamma(i,k)(x_i-\mu_k)(x_i-\mu_k)^TΣk​=Nk​1​i=1∑N​γ(i,k)(xi​−μk​)(xi​−μk​)T
Nk=∑i=1Nγ(i,k),πk=NkNN_k = \sum_{i=1}^N \gamma(i,k) , \\ \pi_k = \frac {N_k}{N}Nk​=i=1∑N​γ(i,k),πk​=NNk​​

(此文甚是清晰准确)

高斯混合模型和期望最大化算法
期望最大化算法