matlab kmeans 代码
来源:互联网 发布:js给集合添加元素 编辑:程序博客网 时间:2024/06/14 20:53
代码中包括随机数据的产生, 和kmeans的无监督学习
kmeans主要分为三步:
1. classify the different classes
2. define new center
3. stop condition
不停的进行迭代直到满足迭代次数或者是结束条件
这里的距离采用的是欧式距离
clear;% generate data% clear;% data = round(rand(100, 2)*100);% save('data','data');%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%load data1;% class number NN = 2;[row, col] = size(data);u = round(rand(N, col)*100);% max iteration 100j = 100;while(j>0) % classify the different classes for i=1:row for j = 1:N z(j) = norm(data(i,:)- u(j,:)); end [v, index] = min(z); c(i) = index; end % define new center sum = zeros(N,col); num = zeros(1,N); for i =1:row for j = 1:N if c(i) == j sum(j,:) = sum(j,:) + data(i,:); num(j) = num(j) + 1; end end end for i = 1:N ut(i,:) = sum(i,:)/num(i); end % stop condition for i = 1:N udis(i) = norm(ut(i,:)-u(i,:)); end if max(udis) < 1e-10 break; end % update new center u = ut; j = j-1;endfor i=1:row if c(i) == 1 plot(data(i,1),data(i,2), 'or'); hold on; elseif c(i) == 2 plot(data(i,1),data(i,2), '+b'); hold on; elseif c(i) == 3 plot(data(i,1),data(i,2), '*g'); hold on; elseif c(i) == 4 plot(data(i,1),data(i,2), 'xb'); hold on; else plot(data(i,1),data(i,2), '.y'); hold on; endend
0 0
- matlab kmeans 代码
- 我的 kmeans matlab 代码
- [几行Matlab代码之]kmeans
- Kmeans 使用 Matlab code
- matlab 实现kmeans
- matlab-kmeans函数注释
- Matlab函数kmeans
- matlab实现kmeans算法
- MatLab Kmeans聚类
- matlab kmeans 函数
- matlab kmeans out of memory
- Matlab中kmeans函数用法
- MatLab Kmeans聚类实例
- matlab中kmeans简单使用
- Kmeans的matlab的实现
- kmeans--第一个matlab算法
- Kmeans算法java代码
- MapReduce 运行Kmeans代码
- 【ES6】16.generator函数的语法 10.(1)异步操作的同步化表达
- 3天速成混合app开发_01环境部署
- 排序算法
- ZOJ3785-What day is that day?
- EventBus使用详解
- matlab kmeans 代码
- Node.js安装及环境配置之Windows篇
- .gitignore 的使用
- Hexo搭建github博客绑定顶级域名和www子域名
- JAVA OOP 第四章 接口
- Linux下安装mysql
- Linux c 贪吃蛇 无curses、多线程、信号的实现
- 阿里云 Ubuntu 14.04 安装mysql 5.6
- 算法提高 3-3求圆面积表面积体积