【机器学习】23. 聚类-GMM: Gaussian Mixture Model

1. 定义和假设

定义:probabilistic clustering(model-base)

假设:数据服从正态分布

2. 算法内容

我们假设数据是由k个高斯(正态)分布混合生成的。每个分布有2个参数:μ和σ。

一个分布对应一个集群

从u和o的随机初始值开始

在每次估计后,我们计算每个例子属于每个分布(簇)的概率

利用概率,我们重新计算参数,直到它们不变。

案例

假设有20000个数据点,两个高斯分布,两个标准差都是2,使用GMM聚类。

  1. 初始化均值方差。标准差限定了,初始均值即可。随机初始化均值分别为-2和3
  2. 根据贝叶斯计算概率

    0.5 是每个分布的权重
  3. 更新均值

    新的均值是基于数据点的加权平均值计算的. 权重由每个数据点属于特定分布的概率决定
  4. 迭代和收敛, 重复步骤2和步骤3, 直到μ不再产生变化或变化非常小, 数据点最终分配给概率更高的分布

3. 和K-Means对比

k-means: crisp(hard)-assignment

GMM -- probabilistic(soft assignment)

GMM可以看作是k均值的泛化

GMM更灵活。允许椭圆的cluster而不是圆形

相关推荐
Kevinhbr3 分钟前
CSP-J/S IS COMING
数据结构·c++·算法
Moutai码农9 分钟前
1.5、机器学习-回归算法
人工智能·机器学习·回归
蕓晨22 分钟前
set的插入和pair的用法
c++·算法
Daisy_JuJuJu27 分钟前
【科研成果速递-IJGIS】如何描述与分类移动对象的时空模式?一个新的分类框架与体系!
分类·数据挖掘·科研·运动模式·移动对象
非门由也43 分钟前
《sklearn机器学习——绘制分数以评估模型》验证曲线、学习曲线
人工智能·机器学习·sklearn
THMAIL44 分钟前
深度学习从入门到精通 - AutoML与神经网络搜索(NAS):自动化模型设计未来
人工智能·python·深度学习·神经网络·算法·机器学习·逻辑回归
wei_shuo1 小时前
使用 Auto-Keras 进行自动化机器学习
机器学习·自动化·keras
金古圣人1 小时前
hot100 滑动窗口
数据结构·c++·算法·leetcode·哈希算法
kebeiovo1 小时前
算法-二叉树的序列化与反序列化
算法
蒹葭玉树1 小时前
【C++上岸】C++常见面试题目--算法篇(第二十期)
c++·算法·面试