聚类的算法实现 | 【亲证有效】

网友投稿 264 2022-11-07

聚类的算法实现 | 【亲证有效】

人在最好的时光,总会犯上一些痴,一些傻。哪一段青春不荒唐,哪一场爱情不受伤,错过了前面的人。

俗话说:“物以类聚,人以群分”,在自然科学和社会科学中,存在着大量的分类问题。所谓类,通俗地说,就是指相似元素的集合。

· 常见的聚类算法 ·

K-Means (K均值)聚类

算法步骤

(1) 首先我们选择一些类/组,并随机初始化它们各自的中心点。中心点是与每个数据点向量长度相同的位置。这需要我们提前预知类的数量(即中心点的数量)。

(2) 计算每个数据点到中心点的距离,数据点距离哪个中心点最近就划分到哪一类中。

(3) 计算每一类中中心点作为新的中心点。

(4) 重复以上步骤,直到每一类中心在每次迭代后变化不大为止。也可以多次随机初始化中心点,然后选择运行结果最好的一个。

下图演示了K-Means进行分类的过程:

优点:

速度快,计算简便

缺点:

我们必须提前知道数据有多少类/组。

K-Medians是K-Means的一种变体,是用数据集的中位数而不是均值来计算数据的中心点。

K-Medians的优势是使用中位数来计算中心点不受异常值的影响;缺点是计算中位数时需要对数据集中的数据进行排序,速度相对于K-Means较慢。

2. 均值漂移聚类

3. 基于密度的聚类方法(DBSCAN)

4. 用高斯混合模型(GMM)的最大期望(EM)聚类

5. 凝聚层次聚类

6. 图团体检测(Graph Community Detection)

K-mean聚类

代码实现

1、导入数据

2、计算每个数据点到中心点的距离

3、对数据点分组

4、迭代收敛和更新质心

结果图展示:

相似的代码和演示的数据都上传到了网盘,大家可以去下载、尝试和应用到自己的项目中。

| 【妈妈再也不用担心我的学习了?】

掌握正确的学习方法 | 【对不起,我要开始装逼了】

这些“我”全都要,

站在大佬的肩膀上,你可以看的更远

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java实现单位换算功能
下一篇:Spark结构化流中的加水位线方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~