当前位置: 首页 > article >正文

Sklearn K-均值算法

以下是一个使用Sklearn库实现K-均值聚类算法的简单代码示例。K-均值算法是一种迭代算法,用于将数据集分为K个簇,使得每个簇的内部平方误差最小。

# 导入必要的库
from sklearn.cluster import KMeans
from sklearn.metrics import silhouette_score
import numpy as np
# 创建样本数据
# X是一个包含特征的二维数组
# 这里我们随机生成数据
np.random.seed(0)
X = np.random.rand(100, 2)  # 100个样本,每个样本有2个特征
# 创建KMeans聚类模型实例
# 你可以根据需要调整n_clusters参数,即簇的数量
kmeans = KMeans(n_clusters=3, random_state=42)
# 训练模型
kmeans.fit(X)
# 预测聚类结果
labels = kmeans.predict(X)
# 计算并打印轮廓系数,评估聚类效果
silhouette = silhouette_score(X, labels)
print(f"轮廓系数为: {silhouette}")
# 打印聚类中心
print("聚类中心:", kmeans.cluster_centers_)
# 打印每个样本的预测标签
print("预测标签:", labels)

在上面的代码中,我们首先生成了一些随机数据作为样例,然后创建了一个KMeans聚类模型,并使用数据来拟合模型。在模型训练之后,我们使用轮廓系数来评估聚类的质量,轮廓系数取值范围在-1到1之间,值越大表示聚类效果越好。我们还打印出了聚类中心和每个样本的预测标签,以便于理解聚类结果。
请注意,K-均值算法对初始中心的选择敏感,可能会导致不同的运行结果。为了获得更稳定的结果,通常建议在多次运行中使用不同的初始中心,并选择具有最高轮廓系数的聚类结果。


http://www.kler.cn/a/272388.html

相关文章:

  • LeetCode 110.平衡二叉树
  • linux 安装PrometheusAlert配置钉钉告警
  • OpenHarmony-7.IDL工具
  • 51c嵌入式~单片机~合集6
  • 医院挂号就诊系统设计与实现(代码+数据库+LW)
  • Python制作简易PDF查看工具PDFViewerV1.0
  • python提取身份证中的生日和性别
  • 远程办公、企业内网服务器的Code-Server上如何配置使用CodeGeeX插件
  • 图解Kafka架构学习笔记(一)
  • C语言经典面试题目(十八)
  • unityprotobuf自动生成C#
  • fastapi 的css js文件地址修改
  • 第 126 场 LeetCode 双周赛题解
  • 设计原则、工厂、单例模式
  • 程序人生——Java异常使用建议
  • el-select使用filterable下拉无法关闭得问题
  • react03
  • Java推荐算法——特征加权推荐算法(以申请学校为例)
  • 合并两个有序链表
  • RabbitMQ命令行监控命令详解
  • Redis7学习记录(1)
  • 2024-3-17Go语言入门
  • macOS Ventura 13.6.5 (22G621) Boot ISO 原版可引导镜像下载
  • 通俗易懂的Python循环讲解
  • LeetCode Python - 59. 螺旋矩阵 II
  • 使用 GitHub Actions 通过 CI/CD 简化 Flutter 应用程序开发