• 3.K均值算法


    作业:

    1). 扑克牌手动演练k均值聚类过程:>30张牌,3类

    ①随机在扑克牌中抽取30张牌,当中取3张聚类中心10,5,2 进行分

    ②计算三堆牌的平均值分别为10.5,5.5,2。

    ③以11,6,2为新的聚类中心来分类

    ④计算平均值,均值不变,分类结束。

    2). *自主编写K-means算法 ,以鸢尾花花瓣长度数据做聚类,并用散点图显示。(加分题)

    3). 用sklearn.cluster.KMeans,鸢尾花花瓣长度数据做聚类,并用散点图显示.

    from sklearn.datasets import load_iris
    from sklearn.cluster import KMeans
    import matplotlib.pyplot as plt
    iris = load_iris() # 获取鸢尾花数据集
    x = iris.data[:,0]  #获取鸢尾花花瓣长度数据   :all
    x = x.reshape(-1,1)   #将数据转换为一列数据
    # 直接调用sklearn库实现对鸢尾花数据进行聚类分析
    km_model = KMeans(n_clusters=3)  # 构建模型 分成三个类
    km_model.fit(x)                  # 训练模型     fit(x)指的是x值给km_model进训练
    y = km_model.predict(x)          # 预测模型
    print("聚类中心:", km_model.cluster_centers_ )  #聚类中心,规定函数
    print("预测结果:", y)
    # 画图
    plt.scatter(x[:, 0], x[:, 0], c=y, s=50, cmap='rainbow')
    plt.show()

    4). 鸢尾花完整数据做聚类并用散点图显示.

    from sklearn.datasets import load_iris
    from sklearn.cluster import KMeans
    import matplotlib.pyplot as plt
    iris = load_iris() # 获取鸢尾花数据集
    x = iris.data       # 鸢尾花完整数据
    # 直接调用sklearn库的KMeans实现对鸢尾花数据进行聚类分析
    km_model = KMeans(n_clusters=3)  # 构建模型
    km_model.fit(x)  # 训练模型
    y = km_model.predict(x)  # 预测模型中每个样本的聚类索引
    print("聚类中心:", km_model.cluster_centers_ )
    print("预测结果:", y)
    # 画图
    plt.scatter(x[:, 2], x[:, 3], c=y, s=50, cmap='rainbow')  #x,y,c
    plt.show()

    5).想想k均值算法中以用来做什么?

    可以通过k均值算法。进行机器学习,通过机器学习之后就可以先对样本进行一个分析,分析之后就可以进行对其他的预测。就是可以通过机器学习之后可以对一些事件的发生进行一些预测。

  • 相关阅读:
    二分查找,你真的学会了吗
    解决Devexpress的RichEditControl控件保存为docx文件后在word里打开字体显示不正确的问题
    protocgengo: unable to determine Go import path for "xxx.proto"
    URL 和 URI 区别
    Ubuntu 强制关闭图形窗口
    centos /lib64/libc.so.6: version `GLIBC_2.28' not found (required by
    Mac OS 修改终端 Terminal 的配色
    Go语言 http 中的 request.Host 和 request.URL.Host 的区别
    Go 中 defer 和 return 执行的先后顺序
    NPOI 将DataSet保存成Excel文件
  • 原文地址:https://www.cnblogs.com/SeBr7/p/12709309.html
Copyright © 2020-2023  润新知