没有合适的资源?快使用搜索试试~ 我知道了~
人工智能方向实习实验报告.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 55 浏览量
2023-06-05
12:52:15
上传
评论
收藏 779KB PDF 举报
温馨提示
试读
28页
人工智能方向实习实验报告.pdf
资源推荐
资源详情
资源评论
.
《 — 人工智能方向实习—》
实 习 报 告
实验一 数据聚类分析
一、实验目的
编程实现数据聚类的算法。
二、实验内容
k-means 聚类算法。
三、实验原理方法和手段
k-means 算法接受参数 k ;然后将事先输入的 n 个数
资料.
.
据对象划分为 k 个聚类以便使得所获得的聚类满足:同一聚
类中的对象相似度较高.
四、实验条件
Matlab2014b
五、实验步骤
(1)初始化 k 个聚类中心。
(2)计算数据集各数据到中心的距离,选取到中心距离最
短的为该数据所属类别。
(3)计算(2)分类后,k 个类别的中心(即求聚类平均距离)
(4)继续执行(2)(3)直到 k 个聚类中心不再变化(或者数据
集所属类别不再变化)
六、实验代码
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%
% main.m
% k-means algorithm
% @author matcloud
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%
clear;
close all;
load fisheriris;
资料.
.
X = [meas(:,3) meas(:,4)];
figure;
plot(X(:,1),X(:,2),'ko','MarkerSize',4);
title('fisheriris dataset','FontSize',18,'Color','red');
[idx,ctrs] = kmeans(X,3);
figure;
subplot(1,2,1);
plot(X(idx==1,1),X(idx==1,2),'ro','MarkerSize',4);
hold on;
plot(X(idx==2,1),X(idx==2,2),'go','MarkerSize',4);
hold on;
plot(X(idx==3,1),X(idx==3,2),'bo','MarkerSize',4);
hold on;
plot(ctrs(:,1),ctrs(:,2),'kx','MarkerSize',12);
title('official kmeans','FontSize',16,'Color','red');
[idx,ctrs] = my_kmeans(X,3);
subplot(1,2,2);
plot(X(idx==1,1),X(idx==1,2),'ro','MarkerSize',4);
hold on;
plot(X(idx==2,1),X(idx==2,2),'go','MarkerSize',4);
资料.
.
hold on;
plot(X(idx==3,1),X(idx==3,2),'bo','MarkerSize',4);
hold on;
plot(ctrs(:,1),ctrs(:,2),'kx','MarkerSize',12);
title('custom kmeans','FontSize',16,'Color','red');
function [idx,ctrs] = my_kmeans(m,k)
[row col] = size(m);
%init k centroids
p = randperm(size(m,1));
for i = 1 : k
ctrs(i,:) = m(p(i),:);
end
idx = zeros(row,1);%idex is pointer of group
while 1
d = dist2matrix(m,ctrs);
[z,g] = min(d,[],2);
if(g == idx)
break;
else
idx = g;
资料.
.
end
%update ctroids
for i = 1 : k
v = find(g == i);
if v
ctrs(i,:) = mean(m(v,:),1);
end
end
end
end
function [idx,ctrs] = my_kmeans(m,k)
[row col] = size(m);
%init k centroids
p = randperm(size(m,1));
for i = 1 : k
ctrs(i,:) = m(p(i),:);
end
idx = zeros(row,1);%idex is pointer of group
while 1
d = dist2matrix(m,ctrs);
资料.
剩余27页未读,继续阅读
资源评论
hhappy0123456789
- 粉丝: 59
- 资源: 5万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功