聚类算法api初步使用

聚类算法api初步使用

1 api介绍

mode = sklearn.cluster. KMeans(n_clusters=8)

  • 参数:
    "k-means++" 是一种智能初始化方法,它选择初始质心的方式可以避免一些不良聚类结果,从而提高聚类效果.
  • 方法:
    • estimator.fit(x) # x 特征列 ,无监督学习中没有目标值
    • estimator.predict(x)
  • estimator.fit_predict(x)
    计算聚类中心并预测每个样本属于哪个类别,相当于先调用fit(x),然后再调用predict(x)
    mode.inertia_ # 返回SSE值

2 案例

随机创建不同二维数据集作为训练集,并结合k-means算法将其聚类,你可以尝试分别聚类不同数量的簇,并观察聚类效果:

聚类参数n_cluster传值不同,得到的聚类结果不同

2.1流程分析

2.2 代码实现

1.创建数据集

python 复制代码
import matplotlib.pyplot as plt
from sklearn.datasets.samples_generator import make_blobs
from sklearn.cluster import KMeans
from sklearn.metrics import calinski_harabaz_score

# 创建数据集
# X为样本特征,Y为样本簇类别, 共1000个样本,每个样本2个特征,共4个簇,
# 簇中心在[-1,-1], [0,0],[1,1], [2,2], 簇方差分别为[0.4, 0.2, 0.2, 0.2]
X, y = make_blobs(n_samples=1000, 
         n_features=2, 
         centers=[[-1, -1], [0, 0], [1, 1], [2, 2]],
         cluster_std=[0.4, 0.2, 0.2, 0.2],
         random_state=9)

# 数据集可视化
plt.scatter(X[:, 0], X[:, 1], marker='o')
plt.show()

2.使用k-means进行聚类,并使用CH方法评估

python 复制代码
y_pred = KMeans(n_clusters=2, random_state=9).fit_predict(X)
# 分别尝试n_cluses=2\3\4,然后查看聚类效果
# 第一列为横轴,第二列为纵轴,c 表示颜色,颜色用预测值来标识
plt.scatter(X[:, 0], X[:, 1], c=y_pred) 
plt.show()

# 用Calinski-Harabasz Index评估的聚类分数
print(calinski_harabasz_score(X, y_pred))

3 小结

  • api:sklearn.cluster.KMeans(n_clusters=8)【知道】
    • 参数:
      • n_clusters:开始的聚类中心数量
    • 方法:
      • estimator.fit_predict(x)
        • 计算聚类中心并预测每个样本属于哪个类别,相当于先调用fit(x),然后再调用predict(x)
相关推荐
学好statistics和DS1 小时前
【CV】神经网络中哪些参数需要被学习?
人工智能·神经网络·学习
大千AI助手1 小时前
机器学习特征筛选中的IV值详解:原理、应用与实现
人工智能·机器学习·kl散度·roc·iv·信息值·woe
姜—姜1 小时前
通过构建神经网络实现项目预测
人工智能·pytorch·深度学习·神经网络
Ro Jace1 小时前
模式识别与机器学习课程笔记(4):线性判决函数
人工智能·笔记·机器学习
科研小白_2 小时前
基于遗传算法优化BP神经网络(GA-BP)的数据时序预测
人工智能·算法·回归
互联网江湖3 小时前
蓝桥杯出局,少儿编程的价值祛魅时刻?
人工智能·生活
Elastic 中国社区官方博客3 小时前
根据用户行为数据中的判断列表在 Elasticsearch 中训练 LTR 模型
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
paid槮4 小时前
OpenCV图像形态学详解
人工智能·opencv·计算机视觉
点控云4 小时前
点控云智能短信:重构企业与用户的连接,让品牌沟通更高效
大数据·人工智能·科技·重构·外呼系统·呼叫中心
救救孩子把7 小时前
14-机器学习与大模型开发数学教程-第1章 1-6 费马定理与极值判定
人工智能·数学·机器学习