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

  • 相关阅读:
    DVD X Player 5.5 PRO
    Freefloat FTP Server 1.0漏洞分析
    基于约束的SQL攻击
    Commons-Collections漏洞
    Code-Audit-Challenges-php-2
    GSM Sniffer环境--c118+osmocombb
    XXE (XML External Entity Injection) :XML外部实体注入
    hyperledger fabric学习(1)
    zero to one (4)
    zero to one (3)
  • 原文地址:https://www.cnblogs.com/wangduo/p/5292497.html
Copyright © 2011-2022 走看看