zoukankan      html  css  js  c++  java
  • Matlab中K-means聚类算法的使用(K-均值聚类)

    K-means聚类算法采用的是将N*P的矩阵X划分为K个类,使得类内对象之间的距离最大,而类之间的距离最小。

    使用方法:
    Idx=Kmeans(X,K)
    [Idx,C]=Kmeans(X,K) 
    [Idx,C,sumD]=Kmeans(X,K) 
    [Idx,C,sumD,D]=Kmeans(X,K) 
    […]=Kmeans(…,’Param1’,Val1,’Param2’,Val2,…)

    各输入输出参数介绍:

    X N*P的数据矩阵
    K 表示将X划分为几类,为整数
    Idx N*1的向量,存储的是每个点的聚类标号
    C K*P的矩阵,存储的是K个聚类质心位置
    sumD 1*K的和向量,存储的是类间所有点与该类质心点距离之和
    D N*K的矩阵,存储的是每个点与所有质心的距离

    […]=Kmeans(…,'Param1',Val1,'Param2',Val2,…)
    这其中的参数Param1、Param2等,主要可以设置为如下:

    1. ‘Distance’(距离测度)
    ‘sqEuclidean’ 欧式距离(默认时,采用此距离方式)
    ‘cityblock’ 绝度误差和,又称:L1
    ‘cosine’ 针对向量
    ‘correlation’  针对有时序关系的值
    ‘Hamming’ 只针对二进制数据

    2. ‘Start’(初始质心位置选择方法)
    ‘sample’ 从X中随机选取K个质心点
    ‘uniform’ 根据X的分布范围均匀的随机生成K个质心
    ‘cluster’ 初始聚类阶段随机选择10%的X的子样本(此方法初始使用’sample’方法)
    matrix 提供一K*P的矩阵,作为初始质心位置集合

    3. ‘Replicates’(聚类重复次数)  整数;

    'emptyaction'(空簇处理方法):'drop'


                       
    使用案例:

    data= 
    5.0 3.5 1.3 0.3 -1
    5.5 2.6 4.4 1.2 0
    6.7 3.1 5.6 2.4 1
    5.0 3.3 1.4 0.2 -1
    5.9 3.0 5.1 1.8 1
    5.8 2.6 4.0 1.2 0

    [Idx,C,sumD,D]=Kmeans(data,3,'dist','sqEuclidean','rep',4)

    运行结果:
    Idx =
         1
         2
         3
         1
         3
         2

    C =
        5.0000    3.4000    1.3500    0.2500   -1.0000
        5.6500    2.6000    4.2000    1.2000         0
    6.3000    3.0500    5.3500    2.1000    1.0000

    sumD =
        0.0300
        0.1250
        0.6300

    D =
        0.0150   11.4525   25.5350
       12.0950    0.0625    3.5550
       29.6650    5.7525    0.3150
        0.0150   10.7525   24.9650
       21.4350    2.3925    0.3150
       10.2050    0.0625    4.0850

  • 相关阅读:
    第三十一章 线程------GIL、线/近程池、异/同步、异步回调
    第三十章 网路编程------线程
    第二十八章 网络编程------Socket
    第二十七章 网络编程
    第二十六章 oop中元类、异常处理
    第二十五章 面向对象------封装、内置函数、反射、动态导入
    第二十四章 面向对象------属性
    Document 对象
    正值表达式
    BOM和DOM
  • 原文地址:https://www.cnblogs.com/wangduo/p/5292497.html
Copyright © 2011-2022 走看看