PYTHON实现谱聚类算法和改变聚类簇数结果可视化比较

简介: PYTHON实现谱聚类算法和改变聚类簇数结果可视化比较

谱聚类是一种将数据的相似矩阵的谱应用于降维的技术。它是有用且易于实现的聚类方法。  

什么是谱聚类?


给你若干个博客,让你将它们分成K类,你会怎样做?想必有很多方法,本文要介绍的是其中的一种——谱聚类。

聚类的直观解释是根据样本间相似度,将它们分成不同组。谱聚类的思想是将样本看作顶点,样本间的相似度看作带权的边,从而将聚类问题转为图分割问题:找到一种图分割的方法使得连接不同组的边的权重尽可能低(这意味着组间相似度要尽可能低),组内的边的权重尽可能高(这意味着组内相似度要尽可能高)。


将上面的例子代入就是将每一个博客当作图上的一个顶点,然后根据相似度将这些顶点连起来,最后进行分割。分割后还连在一起的顶点就是同一类了。一共有6个顶点(博客),顶点之间的连线表示两个顶点的相似度,现在要将这图分成两半(两个类),要怎样分割(去掉哪边条)?根据谱聚类的思想,应该去掉的边是用虚线表示的那条。最后,剩下的两半就分别对应两个类了。

Python 中的谱聚类方法

API 提供了 谱聚类来实现 Python 中的谱聚类方法。谱聚类 将聚类应用于归一化拉普拉斯算子的投影。在本教程中,我们将简要了解如何在 Python 中使用 谱聚类 对数据进行聚类和可视化。教程涵盖:



  • 准备数据
  • 使用 谱聚类 和可视化进行聚类
  • 源代码

我们将首先导入所需的库和函数。

from numpy import random

准备数据

我们将通过函数生成一个简单的数据集并在图中将其可视化。

random.seed
make_blobs
plt
plt.show

这是一个易于理解的数据,因此我们将使用谱聚类方法对其进行聚类。

谱聚类和可视化

我们将使用 谱聚类定义模型,然后我们将它拟合到 x 数据上。谱聚类需要聚类的数量,因此将 4 设置为 n_cluster 参数。您可以检查类的参数并根据您的分析和目标数据更改它们。

SptlCltg.fit(x)
SelCg( n_clusters=4)

接下来,我们将在图中可视化聚类数据。为了按颜色区分聚类,我们将从拟合模型中提取标签数据。

labels = sc.labels_
plt.scatter(x\[:,0\], x\[:,1\], c=labels)
plt.show()

我们还可以通过改变簇数来检查聚类结果。

plt
f.add_subplot
for i in range:
 sc = Serurg.fit
 f.add_subplot
 plt.scatter
 plt.legen
plt.show

在本教程中,我们简要了解了如何使用 Python 中对数据进行聚类和可视化。


相关文章
|
4天前
|
存储 数据可视化 算法
最新Python-Matplotlib可视化(9)——精通更多实用图形的绘制,2024年最新小米面试题库
最新Python-Matplotlib可视化(9)——精通更多实用图形的绘制,2024年最新小米面试题库
最新Python-Matplotlib可视化(9)——精通更多实用图形的绘制,2024年最新小米面试题库
|
4天前
|
机器学习/深度学习 人工智能 算法
食物识别系统Python+深度学习人工智能+TensorFlow+卷积神经网络算法模型
食物识别系统采用TensorFlow的ResNet50模型,训练了包含11类食物的数据集,生成高精度H5模型。系统整合Django框架,提供网页平台,用户可上传图片进行食物识别。效果图片展示成功识别各类食物。[查看演示视频、代码及安装指南](https://www.yuque.com/ziwu/yygu3z/yhd6a7vai4o9iuys?singleDoc#)。项目利用深度学习的卷积神经网络(CNN),其局部感受野和权重共享机制适于图像识别,广泛应用于医疗图像分析等领域。示例代码展示了一个使用TensorFlow训练的简单CNN模型,用于MNIST手写数字识别。
22 3
|
5天前
|
数据可视化 数据挖掘 Python
【Python DataFrame专栏】DataFrame的可视化探索:使用matplotlib和seaborn
【5月更文挑战第20天】本文介绍了使用Python的pandas、matplotlib和seaborn库进行数据可视化的步骤,包括创建示例数据集、绘制折线图、柱状图、散点图、热力图、箱线图、小提琴图和饼图。这些图表有助于直观理解数据分布、关系和趋势,适用于数据分析中的探索性研究。
【Python DataFrame专栏】DataFrame的可视化探索:使用matplotlib和seaborn
|
5天前
|
算法 Python
Python中实现图论算法
Python中实现图论算法 “【5月更文挑战第20天】”
13 3
|
9天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】聚类算法中,如何判断数据是否被“充分”地聚类,以便算法产生有意义的结果?
【5月更文挑战第14天】【机器学习】聚类算法中,如何判断数据是否被“充分”地聚类,以便算法产生有意义的结果?
|
10天前
|
算法 搜索推荐 C语言
Python实现数据结构与算法
【5月更文挑战第13天】学习数据结构与算法能提升编程能力,解决复杂问题,助你面试成功。从选择资源(如《算法导论》、Coursera课程、LeetCode)到实践编码,逐步学习基本概念,通过Python实现栈、队列和快速排序。不断练习、理解原理,探索高级数据结构与算法,参与开源项目和算法竞赛,持续反思与实践,以提升技术能力。
6 0
|
10天前
|
机器学习/深度学习 传感器 算法
【机器学习】在聚类算法中,使用曼哈顿距离和使用欧式距离有什么区别?
【5月更文挑战第12天】【机器学习】在聚类算法中,使用曼哈顿距离和使用欧式距离有什么区别?
|
10天前
|
机器学习/深度学习 算法 数据可视化
【机器学习】比较分层聚类(Hierarchical Clustering)和K-means聚类算法
【5月更文挑战第12天】【机器学习】比较分层聚类(Hierarchical Clustering)和K-means聚类算法
|
10天前
|
机器学习/深度学习 算法 数据可视化
Python 数据结构和算法实用指南(四)(4)
Python 数据结构和算法实用指南(四)
16 1
|
10天前
|
机器学习/深度学习 存储 算法
Python 数据结构和算法实用指南(四)(3)
Python 数据结构和算法实用指南(四)
15 1