在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
function kmeans load q1x.dat; a1=round(98*rand+1); a2=round(98*rand+1); miao1=[q1x(a1,1),q1x(a1,2)]; miao2=[q1x(a2,1),q1x(a2,2)]; c=zeros(99,1); sum1=zeros(1,2); sum2=zeros(1,2); for k=1:1 for i=1:99 temp1=norm(q1x(i,:)-miao1)^2; temp2=norm(q1x(i,:)-miao2)^2; if temp1<temp2 c(i)=1; sum1(1,1)=sum1(1,1)+q1x(i,1); sum1(1,2)=sum1(1,1)+q1x(i,2); else c(i)=2; sum2(1,1)=sum2(1,1)+q1x(i,1); sum2(1,2)=sum2(1,1)+q1x(i,2); end end e1=find(c==1); e2=find(c==2); miao1=[sum1(1,1)/length(e1),sum1(1,2)/length(e1)]; miao2=[sum2(1,1)/length(e2),sum2(1,2)/length(e2)]; end for j=1:99 if c(j)==1 plot(q1x(j,1),q1x(j,2),'o'); hold on; else plot(q1x(j,1),q1x(j,2),'r*'); hold on; end end数据集依旧来自Ng的qx1。可能是由于数据集的缘故(这个数据集是用来做logistic回归的...我比较懒就没去找新的...),迭代次数k一旦超过了2就会产生灾难性的后果~~~留着这个坑以后慢慢填~~~ 版权声明:本文为博主原创文章,未经博主允许不得转载。 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论