机器学习模型自我代码复现:GMM

本文介绍了GMM(高斯混合模型)的原理和实现,包括初始化、E步和M步的步骤,并通过实例展示了如何使用自制数据集进行训练和预测。结果显示了模型对复杂数据分布的有效拟合能力。

根据模型的数学原理进行简单的代码自我复现以及使用测试,仅作自我学习用。模型原理此处不作过多赘述,仅罗列自己将要使用到的部分公式。

如文中或代码有错误或是不足之处,还望能不吝指正。

本文的思路借鉴了GMM算法的实现_MagicGeek的博客-优快云博客_gmm算法实现

有时某些数据不是简单地服从单个正态分布,而是服从由多个正态分布线性组合的复合分布。此时我们便使用GMM模型分析其内部的正态分布模型,将数据分为多个服从正态分布的类。

p(x)=\Sigma_{k=1}^K\pi_kN(x|\mu_k,\Sigma_k)

其中,\pi_k为第k个正态分布的权重系数。

我们使用EM算法估算各个正态分布的期望\mu_k方差矩阵\Sigma_k。E步通过\mu_k\Sigma_k估算后验概率\gamma_k(x),M步通过\gamma_k(x)的最大化对数似然函数来倒推出新的\mu_k\Sigma_k

对数似然函数为:

lnp(D|\pi,\mu,\Sigma)=\Sigma_{n=1}^Nln\{\Sigma_{k=1}^K \pi_kN(x_n|\mu_k,\Sigma_k)\}

对其\mu_k\Sigma_k分别求偏导,得

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值