K-means均值聚类是先行选择若干个样本点作为聚类中心,再按某种聚类准则(通常采用最小距离原则)使各样本点向各个中心聚集,从而得到初始分类,然后,判断初始分类是否合理,如果不合理,就修改分类,......,以此反复进行修改聚类的迭代运算,直到合理为止。算法主要参照了蔡元龙老师的《模式识别》一书,matlab程序编写:

%Programed by Lu Qi,University of Chinese Academy of Sciences
%my email:qqlu1992@gmail.com
clear all
clc
train_x=[0  3  1  2  0;1  3  0  1  0;3  3  0  0  1;1  1  0  2  0;3  2  1  2  1;4  1  1  1  0];
[pars.num_train,pars.length]=size(train_x);%num_train代表样本的数量,length代表样本的维数
pars.num_cluster=2;
initial=randperm(6);
pars.iter=1;
initial_point=initial(1:pars.num_cluster);
pars.z{pars.iter}=train_x(initial_point,:);
while 1for i=1:pars.num_trainfor j=1:pars.num_clusterd(i,j)=norm(train_x(i,:)-pars.z{pars.iter}(j,:));endend[min_d,index]=min(d,[],2);%求相同聚类样本的标号for i=1:pars.num_trainfor j=1:pars.num_clusterif (index(i))==jg(j,i)=[;i];endendendpars.iter=pars.iter+1;%找每一类中不等于0的数for j=1:pars.num_clustertemp=find(g(j,:));pars.z{pars.iter}(j,:)=sum(train_x(temp,:))/(length(temp));endif pars.z{pars.iter}==pars.z{pars.iter-1}break;end
end
for j=1:pars.num_clusterfprintf('the %d th cluster centre is\n',j);fprintf('%7.4f',pars.z{end}(j,:))fprintf('\n');
end

聚类之K-means均值聚类相关推荐

  1. k均值聚类算法(K Means)及其实战案例

    算法说明 K均值聚类算法其实就是根据距离来看属性,近朱者赤近墨者黑.其中K表示要聚类的数量,就是说样本要被划分成几个类别.而均值则是因为需要求得每个类别的中心点,比如一维样本的中心点一般就是求这些样本 ...

  2. 第十四章聚类方法.14.3K均值聚类

    文章目录 主要内容 k均值聚类的定义 样本空间划分 k均值聚类策略 算法步骤 例题 k均值聚类算法特性 收敛性 初始类的选择 类别数k的选择 k均值聚类缺点改进 本课程来自深度之眼,部分截图来自课程视 ...

  3. K-Means(K均值聚类算法)

    K-Means(K均值聚类算法) 1.前言 要学习聚类算法就要知道聚类学习算法是什么,为什么要学习聚类学习聚类学习算法,有什么用途,下面就简单的做一下介绍,并且详细的说明k-means均值聚类学习算法 ...

  4. K均值聚类关于初始聚类中心的探讨

    摘要:进入二十一世纪以来,科学技术的不断发展,使得数据挖掘技术得到了学者越来越多的关注.数据挖掘是指从数据库中发现隐含在大量数据中的新颖的.潜在的有用信息和规则的过程,是一种处理数据库数据的知识发现. ...

  5. 讨论k值以及初始聚类中心对聚类结果的影响_K均值聚类需要标准化数据吗

    摘要:进入二十一世纪以来,科学技术的不断发展,使得数据挖掘技术得到了学者越来越多的关注.数据挖掘是指从数据库中发现隐含在大量数据中的新颖的.潜在的有用信息和规则的过程,是一种处理数据库数据的知识发现. ...

  6. K-means均值聚类算法的原理与实现

    转自:http://blog.csdn.net/xiaolewennofollow/article/details/45541159 K-均值聚类算法的原理与实现 聚类是一种无监督的学习,它将相似的对 ...

  7. Udacity机器人软件工程师课程笔记(二十一) - 对点云进行集群可视化 - 聚类的分割 - K-means|K均值聚类, DBSCAN算法

    聚类的分割 1.K-均值聚类 (1)K-均值聚类介绍 k均值聚类算法(k-means clustering algorithm)是一种迭代求解的聚类分析算法,其步骤是随机选取K个对象作为初始的聚类中心 ...

  8. k-means k均值聚类的弱点/缺点

    Similar to other algorithm, K-mean clustering has many weaknesses: 1 When the numbers of data are no ...

  9. python机器学习库sklearn——k均值聚类

    全栈工程师开发手册 (作者:栾鹏) python数据挖掘系列教程 k均值聚类的相关的知识内容可以参考 http://blog.csdn.net/luanpeng825485697/article/de ...

  10. 聚类分析 | MATLAB实现k-Means(k均值聚类)分析

    目录 聚类分析 | MATLAB实现k-Means(k均值聚类)分析 k-均值聚类简介 相关描述 程序设计 学习小结 参考资料 致谢 聚类分析 | MATLAB实现k-Means(k均值聚类)分析 k ...

最新文章

  1. 联想微型计算机2005款配置,2005款联想43厘米液晶显示屏,55寸液晶屏价格
  2. 湫湫系列故事——消灭兔子(优先队列)
  3. 网站不大但加载很慢怎么优化_博客网站首页加载优化
  4. 【工作感悟】全网最经典26道Spring面试题总结
  5. python下拉菜单_自定义Django Form中choicefield下拉菜单选取数据库内容实例
  6. 弹飞大爷 BZOJ4764 LCT维护内向基环树森林
  7. c语言利用fun求最小值,2015年计算机二级《C语言》精选练习题及答案(1)
  8. python如何设计系统界面教程_python图形化界面设计tkinter!python用户界面设计教程...
  9. wps软件打不开共享超链接_WPS超链接打不开?
  10. 计算机网络 专有名词英文缩写
  11. SaaS是什么?我们为什么要做SaaS?
  12. Keil报错:Libraries\CMSIS\stm32f10x.h(298): error: #67: expected a }
  13. pikachu漏洞搭建平台
  14. 求和(单例模式,初始化列表,容器,迭代器)
  15. 浏览器打开默认极速模式
  16. du 查看文件大小命令
  17. OutLook中添加、取消送信者禁止
  18. 变更3个概念:变更请求,批准的变更请求,确认的变更的理解
  19. Linux的基础配置
  20. java新手练习项目_有哪些好的java项目适合新手练习?

热门文章

  1. Android7.1修改系统默认多媒体音量大小
  2. __asm__ __volatile__(: : :memory)
  3. java 获取当前ip_不停机还能替换代码?6年的 Java程序员表示不可思议
  4. springboot + profile(不同环境读取不同配置)
  5. Error:Cannot set the value of read-only property 'outputFile' for ApkVariantOutputImpl_Decorated{apk
  6. centos7 apache2.4 多站点配置
  7. [LeetCode]--160. Intersection of Two Linked Lists
  8. 一场由nginx优化引起的tcp/ip及tcpdump研究
  9. 什么防盗门都是浮云~
  10. python字符串截取及Html解析