阅读背景:

sklearn之聚类K均值算法

来源:互联网 
'''
    聚类:分类(class)与聚类(cluster)不同,分类是有监督学习模型,聚类属于无监督学习模型。
        聚类讲究使用一些算法把样本划分为n个群落。一般情况下,这种算法都需要计算欧氏距离。(用两个样本对应特征值之差的平方和之平方根,
        即欧氏距离,来表示这两个样本的相似性)

        1.K均值算法:
            第一步:随机选择k个样本作为k个聚类的中心,计算每个样本到各个聚类中心的欧氏距离,
                    将该样本分配到与之距离最近的聚类中心所在的类别中。
            第二步:根据第一步所得到的聚类划分,分别计算每个聚类的几何中心,将几何中心作为新的聚类中心,
                    重复第一步,直到计算所得几何中心与聚类中心重合或接近重合为止。
            注意:
            聚类数k必须事先已知。借助某些评估指标,优选最好的聚类数。
            聚类中心的初始选择会影响到最终聚类划分的结果。初始中心尽量选择距离较远的样本。

            K均值算法相关API:
                    import sklearn.cluster as sc
                    # n_clusters: 聚类数
                    model = sc.KMeans(n_clusters=4)
                    # 不断调整聚类中心,直到最终聚类中心稳定则聚类完成
                    model.fit(x)
                    # 获取训练结果的聚类中心
                    centers = model.cluster_centers_
    案例:加载multiple3.txt,基于K均值算法完成样本的聚类。
        步骤:
            1.读取文件,加载数据,把样本绘制在窗口中
            2.基于K均值完成聚类业务,为每个样本设置颜色
            3.绘制聚类背景边界线----pcolormesh


    聚类:分类(class)与聚类(cluster)不同,分类是有监督学习模



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: