原文链接:http://tecdat.cn/?p=6105

原文出处:拓端数据部落公众号

介绍

四种最常见的聚类方法模型是层次聚类,k均值聚类,基于模型的聚类和基于密度的聚类

可以基于两个主要目标评估良好的聚类算法:

  • 高组内相似性
  • 低组间相似性

 

基于模型的聚类是迭代方法,通过优化聚类中数据集的分布,将一组数据集拟合到聚类中。高斯分布只不过是正态分布。此方法分三步进行:

  1. 首先随机选择高斯参数并将其拟合到数据集。
  2. 迭代地优化分布参数以拟合尽可能多的点。
  3. 一旦收敛到局部最小值,您就可以将数据点分配到更接近该群集的分布。

高斯混合模型

基于概率模型的聚类技术已被广泛使用,并且已经在许多应用中显示出有希望的结果,从图像分割,手写识别,文档聚类,主题建模到信息检索。基于模型的聚类方法尝试使用概率方法优化观察数据与某些数学模型之间的拟合。

生成模型通常使用EM方法求解,EM方法是用于估计有限混合概率密度的参数的最广泛使用的方法。基于模型的聚类框架提供了处理此方法中的几个问题的主要方法,例如密度(或聚类)的数量,参数的初始值(EM算法需要初始参数值才能开始),以及分量密度的分布(例如,高斯分布)。EM以随机或启发式初始化开始,然后迭代地使用两个步骤来解决计算中的循环:

  • E-Step。使用当前模型参数确定将数据点分配给集群的预期概率。
  • M-Step。通过使用分配概率作为权重来确定每个集群的最佳模型参数。

R中的建模

mb = Mclust(iris[,-5])#或指定集群数
mb3 = Mclust(iris[,-5], 3)# 或指定集群数
mb$modelName# 或指定集群数
mb$G# 在给定聚类中观察的概率
head(mb$z)# 获取概率,均值,方差
summary(mb, parameters = TRUE)
table(iris$Species, mb$classification)
# 比较
table(iris$Species, mb3$classification)

比较每个群集中的数据量

在将数据拟合到模型中之后,我们基于聚类结果绘制模型。

让我们绘制估计的密度。

plot(mb, "density")

您还可以使用该summary()函数来获取最可能的模型和最可能数量的集群。对于此示例,最可能的簇数为5,BIC值等于-556.1142。

比较聚类方法

在使用不同的聚类方法将数据拟合到聚类中之后,您可能希望测量聚类的准确性。在大多数情况下,您可以使用集群内集群度量标准作为度量。集群间距离越高越好,集群内距离越低、越好。

接下来,检索聚类方法的集群验证统计信息:

通常,我们使用within.cluster.ssavg.silwidth验证聚类方法。该within.cluster.ss测量表示所述簇内总和的平方,和avg.silwidth表示平均轮廓宽度

  • within.cluster.ss测量显示了相关对象在群集中的紧密程度; 值越小,集群中的对象越紧密。
  • avg.silwidth是一种度量,它考虑了群集中相关对象的紧密程度以及群集之间的区别程度。轮廓值通常为0到1; 接近1的值表明数据更好地聚类。

k-means和GMM之间的关系

K均值可以表示为高斯混合模型的特例。通常,高斯混合有更好的表现力,因为数据的群集分配还取决于该群集的形状,而不仅仅取决于其接近度。

与k-means一样,用EM训练高斯混合模型可能对冷启动条件非常敏感。如果我们将GMM与k-means进行比较和对比,我们会发现前者的初始条件比后者更多。

结果

每个聚类被建模为多元高斯分布,并通过给出以下内容来指定模型:

  1. 集群数量。
  2. 每个群集中所有数据点的分数。
  3. 每个聚类的均值和它的协方差矩阵。

参考文献

1.R语言k-Shape算法股票价格时间序列聚类

2.R语言中不同类型的聚类方法比较

3.R语言对用电负荷时间序列数据进行K-medoids聚类建模和GAM回归

4.r语言鸢尾花iris数据集的层次聚类

5.Python Monte Carlo K-Means聚类实战

6.用R进行网站评论文本挖掘聚类

7.用于NLP的Python:使用Keras的多标签文本LSTM神经网络

8.R语言对MNIST数据集分析 探索手写数字分类数据

9.R语言基于Keras的小数据集深度学习图像分类

拓端tecdat|基于模型的聚类和R语言中的高斯混合模型相关推荐

  1. 基于模型的聚类和R语言中的高斯混合模型

    介绍 四种最常见的聚类方法模型是层次聚类,k均值聚类,基于模型的聚类和基于密度的聚类 . 最近我们被客户要求撰写关于聚类的研究报告,包括一些图形和统计输出. 可以基于两个主要目标评估良好的聚类算法: ...

  2. 【视频】KMEANS均值聚类和层次聚类:R语言分析生活幸福指数可视化|数据分享...

    原文链接:http://tecdat.cn/?p=24198 聚类是将总体或数据点划分为多个组的任务,以使同一组中的数据点与同一组中的其他数据点更相似,而与其他组中的数据点不相似.它基本上是基于它们之 ...

  3. 拓端tecdat|bilibili视频流量数据潜望镜

    最近我们被客户要求撰写关于bilibili视频流量的研究报告,包括一些图形和统计输出. 最新研究表明,中国有超过7亿人在观看在线视频内容.Bilibili,被称为哔哩哔哩或简称为B站,是中国大陆第二个 ...

  4. 拓端tecdat荣获掘金社区入驻新人奖

    2021年7月,由掘金发起了"入驻成长礼"颁奖活动.本次活动邀请到知名开发者.服务机构代表等业界人士. 据了解,掘金社区"新入驻创作者礼"主要对已经积累了一定历 ...

  5. 拓端tecdat荣获2022年度51CTO博主之星

    相信技术,传递价值,这是51CTO每一个技术创作者的动力与信念,2022 年度,拓端tecdat 作为新锐的数据分析咨询公司,在51CTO平台上,不断的输出优质的技术文章,分享前沿创新技术,输出最佳生 ...

  6. 【数据挖掘】高斯混合模型 ( 模型简介 | 软聚类 | 概率作用 | 高斯分布 | 概率密度函数 | 高斯混合模型参数 | 概率密度函数 )

    文章目录 I . 高斯混合模型方法 ( GMM ) II . 硬聚类 与 软聚类 III . GMM 聚类结果概率的作用 IV . 高斯混合分布 V . 概率密度函数 VI . 高斯分布 曲线 ( 仅 ...

  7. 基于wiki中文语料库的gensim模型使用方法以及R语言的调用方式

    基于wiki中文语料库的gensim模型使用方法以及R语言的调用方式 近期想要整理下硬盘里的东西,看到本科毕设做情感倾向分析相关的数据,想起当时使用gensim训练词向量模型训练了超级久,决定将训练好 ...

  8. R语言中的多项式回归、局部回归、核平滑和平滑样条回归模型

    全文下载链接:http://tecdat.cn/?p=20531 当线性假设无法满足时,可以考虑使用其他方法(点击文末"阅读原文"获取完整代码数据). 相关视频 多项式回归 扩展可 ...

  9. R语言中的广义线性模型(GLM)和广义相加模型(GAM):多元(平滑)回归分析保险资金投资组合信用风险敞口

    最近我们被客户要求撰写关于信用风险敞口的研究报告,包括一些图形和统计输出. 在之前的课堂上,我们已经看到了如何可视化多元回归模型(带有两个连续的解释变量).在此,目标是使用一些协变量(例如,驾驶员的年 ...

  10. 在r语言中使用GAM(广义相加模型)进行电力负荷时间序列分析

    广义相加模型(GAM:Generalized Additive Model),它模型公式如下:有p个自变量,其中X1与y是线性关系,其他变量与y是非线性关系,我们可以对每个变量与y拟合不同关系,对X2 ...

最新文章

  1. 利用OpenCV+ConvNets检测几何图形
  2. shell 脚本 自动发送邮件
  3. rsync同步操作 inotify实时同步 cobbler装机平台 DNS主从结构
  4. 设置SAP登录后的背景图片(很有意思)
  5. Python中装饰器的理解和实现
  6. 使用report BSP_UPDATE_MIMEREPOS 批量上传mime object
  7. Linux虚拟机重启后无法获取IP的问题(断网、没网)
  8. 使用redis数据库的目的?
  9. CSUOJ修墙壁C语言,棋牌挂怎么编写 -棋牌挂怎么编写V6.1.16
  10. iOS UIWebView 之 UIProgressView
  11. 内燃机附件和部件行业调研报告 - 市场现状分析与发展前景预测
  12. icmp协议_ICMP协议全解析
  13. 聚类算法分析及其性能比较
  14. CSS-背景 超链接
  15. 《红色警戒3》简体中文完美整合版下载
  16. python辅助脚本教程_Python简单实现阴阳师挂机脚本
  17. linux c计算时间差值,获取时间和计算时间差的几种方法总结,时间差几种方法...
  18. 基于C语言设计符号表
  19. 期望/概率dp 学习报告
  20. Python框架Flask系列教程(1)——基础-黄勇-专题视频课程

热门文章

  1. [LintCode] 翻转二叉树
  2. 如何在C#中生成与PHP一样的MD5 Hash Code
  3. Oracle EBS-SQL (BOM-4):检查期间新增编码总数.sql
  4. HDOJ---2571 命运[DP]
  5. 汽车在哪扇门后面(博弈论的诡计)
  6. 【ResNet翻译】Deep Residual Learning for Image Recognition
  7. 数据--第47课 - 查找的概念
  8. 配置元件--HTTP授权管理器
  9. springcloud-config-client的那些坑
  10. P4782 【模板】2-SAT 问题