混合模型
在上一讲当中,我们给大家介绍了一种比较特殊的聚类算法,DBSCAN。这种算法主要针对一些样本点分布比较特殊的情形,并且我们通过例子发现,传统K-means算法对这种数据无效。在这一讲当中,我们再次看一种比较比较常见,适用情形非常固定的聚类算法,叫做混合模型,这种聚类算法是假设样本分布来自一个潜在的概率分布。或者若干个概率分布的混合。那么样本点的出现也就可以理解为从这个混合分布中抽取的。这样的话有两个好处,第一个好处是,既然每个样本点是来自若干个概率分布的混合,那么每个点相对每个概率分布就会有个权重,这个权重是我们聚类的关键。光是这么说估计大家感到抽象,我们拿例子说明,我们先画一个散点图。代码与图片如下:
# 载入包
library("MASS")
# 载入画图的包
library("ggpubr")
library(ggplot2)
#引入到R空间数据
data("geyser")
#画个散点图
ggplot(geyser,aes(x=duration,y=waiting))+geom_point()
图是这个样子的: