無監督學習k-means簡單實現
阿新 • • 發佈:2019-01-04
%隨機獲取150個點 %X = [randn(50,2)+ones(50,2);randn(50,2)-ones(50,2);randn(50,2)+[ones(50,1),-ones(50,1)]]; X = load('test.txt') %二維高斯擬合函式 opts = statset('Display','final'); %呼叫Kmeans函式 %X N*P的資料矩陣 %Idx N*1的向量,儲存的是每個點的聚類標號 %Ctrs K*P的矩陣,儲存的是K個聚類質心位置 %SumD 1*K的和向量,儲存的是類間所有點與該類質心點距離之和 %D N*K的矩陣,儲存的是每個點與所有質心的距離; [Idx,Ctrs,SumD,D] = kmeans(X,3,'Replicates',3,'Options',opts); %畫出聚類為1的點。X(Idx==1,1),為第一類的樣本的第一個座標;X(Idx==1,2)為第二類的樣本的第二個座標 plot(X(Idx==1,1),X(Idx==1,2),'r.','MarkerSize',14) hold on plot(X(Idx==2,1),X(Idx==2,2),'b.','MarkerSize',14) hold on plot(X(Idx==3,1),X(Idx==3,2),'g.','MarkerSize',14) %繪出聚類中心點,kx表示是圓形 plot(Ctrs(:,1),Ctrs(:,2),'kx','MarkerSize',14,'LineWidth',4) plot(Ctrs(:,1),Ctrs(:,2),'kx','MarkerSize',14,'LineWidth',4) plot(Ctrs(:,1),Ctrs(:,2),'kx','MarkerSize',14,'LineWidth',4) legend('Cluster 1','Cluster 2','Cluster 3','Centroids','Location','NW')
資料集test.txt
14.9,27.55 14.45,28.35 14.15,28.8 13.75,28.05 13.35,28.45 13,29.15 13.45,27.5 13.6,26.5 12.8,27.35 12.4,27.85 12.3,28.4 12.2,28.65 13.4,25.1 12.95,25.95 12.9,26.5 11.85,27 11.35,28 11.15,28.7 11.25,27.4 10.75,27.7 10.5,28.35 9.65,28.45 10.25,27.25 10.75,26.55 11.7,26.35 11.6,25.9 11.9,25.05 12.6,24.05 11.9,24.5 11.1,25.2 10.55,25.15 10.05,25.95 9.35,26.6 9.3,27.25 9.2,27.8 7.5,28.25 8.55,27.45 8.5,27.05 8.05,27.2 7.85,26.8 7.3,27.4 6.8,26.85 7,26.5 7.55,26.3 8.55,26.3 9,25.85 8.6,25.65 9.4,25.55 8.45,25.05 8.85,24.6 9.65,24.7 10.55,24.35 11.05,23.9 10.55,23.55 9.45,23.35 9.2,23.9 8.35,23.9 7.35,24.75 7.4,25.45 6.6,25.75 6.1,26 5.8,26.95 5.65,25.8 5.3,26.1 6.4,25.4 5.4,25.25 5.35,24.7 4.8,25.05 4.2,25.55 6.4,24.8 6.55,24.3 7.4,24.25 5.45,24.2 4.3,24 4,24.25 3.35,23.3 4.85,23.05 4.3,22.75 5.85,23.4 5.9,23.55 7.55,23.7 6.85,23.25 7.65,23.1 6.95,22.55 6.1,22.6 5.5,22.6 4.7,22.1 3.8,21.85 4.65,21.2 4.15,20.35 5.3,20.4 5.6,20.75 5.8,21.95 6.4,21.95 6.55,21.15 7.45,21.95 7.4,21.55 7.75,21.2 7.65,20.65 6.95,19.8 6.6,20.1 6.05,20.2 5.4,19.65 5.35,19.05 5.8,18.25 6.3,19.1 7,18.9 7.15,17.9 7.35,18.2 8.2,20.05 8.3,19.45 8.3,18.5 8.75,18.8 9.05,18.2 9.35,17.7 8.9,17.65 8.45,17.2 10.05,17.2 10.4,16.75 8.6,20.9 8.65,21.3 8.65,21.9 8.65,22.5 8.95,22.8 9.95,22.65 8.95,22.2 9.65,21.9 10.55,22.3 10.9,22.85 11.35,23.45 12.05,23.4 12.3,22.75 11.7,22.15 11.15,22.05 10.85,21.5 10.85,21.05 9.6,21.3 9.85,20.7 9.35,20.6 9.25,19.65 9.95,19.8 10.7,20.35 11.3,20.7 12.35,21.6 13.1,21.3 12.85,20.75 12,20 11,19.85 10.35,19 9.9,18.65 10.6,18.15 11.4,18.3 11.4,19.25 12.35,18.8 12.8,19.75 12.15,18.1 11.05,17.5 11.95,17.25 12.25,17.5 13.05,17.4 13.75,18.15 13.5,18.65 13.65,19.25 14,19.9 15.2,18.2 15.5,17.15 13.9,17.1 13.75,16.6 12.15,16.4 7.8,13.7 8.85,13.35 9,12.7 9.7,12.1 8.05,12.9 7.7,13.25 6.8,13.2 6.6,13.45 6.2,12.55 5.4,12.85 5.7,12.25 5.2,11.9 5.15,11.35 5.85,11.2 6.1,11.75 7,12.35 7.05,12.45 7.9,12.5 8.55,12.1 7.85,11.85 7.1,11.95 6.9,11.5 6.85,10.9 6.4,10.7 5.9,10.3 6.4,10.25 7.05,10.05 7.35,10.5 7.65,11.1 8.1,11.2 8.8,11.4 8.3,10.55 9,10.9 9.35,10.5 10.15,11 10.4,10.55 10.9,10 11.55,10.2 11.75,10.85 10.1,8.65 11.05,9.1 11.85,9.8 12.85,10.65 12.9,11.7 13.6,11.1 14.05,11.75 14.5,11.8 14.3,12.45 17,12.9 15.8,12.6 15.85,12 16.7,12.2 16.25,11.7 15.55,11.15 14.8,11.35 14.45,10.75 13.75,10.45 12.8,10.1 13.15,9.8 12.45,9.3 11.8,8.95 11.1,8.45 10.35,7.7 10.1,6.75 11.3,7.95 12.35,8.45 13.1,8.95 13.2,9.35 14.1,10.05 11.5,7.5 11.35,6.9 11.95,6.75 12.4,7.1 12.25,7.6 12.95,7.6 13.45,7.95 13.35,8.25 13.75,9 14.3,9.3 14.85,9.55 15.1,10.25 15.45,10.55 16.35,10.85 16.75,11.5 16.25,10.2 15.4,10.1 15.45,9.7 15.15,9.3 15.25,8.65 15.55,8.2 14.25,8.7 14.25,8.25 15.05,7.8 14.3,7.5 13.55,7.45 14.3,6.95 13.95,6.7 13.05,6.95 13.05,6.2 11.55,6.3 10.8,5.85 10.6,5.05 11.35,5.55 12.15,5.4 12.4,5.8 12.8,5.7 13.65,5.9 13.9,5.3 13.1,5.1 12.55,4.9 11.5,4.75 11.35,4.05 12.4,4.35 11.75,3.45 12.65,3.7 13.4,4.35 13.9,4.95 12.75,3 13.55,3.15 13.7,3.65 14.1,4.1 14.65,5.05 14.35,5.75 14.5,6.55 15.15,7.1 13.6,2.55 14.45,2.4 14.6,3.05 15,3.4 15.25,3.5 14.7,4.1 14.7,4.5 15.25,2.7 15.65,2.05 15.95,2.8 16.1,3.55 15.9,4 15.6,4.75 15.55,5.05 15.35,5.5 15.15,5.95 15.5,6.75 15.7,6.35 16.2,5.9 16.35,5.35 16.2,4.55 16.55,4.2 16.95,4.75 17.05,5.1 17.3,4.8 17.3,4.15 17.6,4.3 17.05,3.7 17.25,3.05 16.65,2.8 16.55,2.15 17.2,2.05 18.15,1.95 18.05,2.45 18.15,3.05 18.6,3.45 18.4,3.6 18.85,3.2 19.1,2.65 19.45,2.65 19,2.1 19.9,2.05 20.45,2.8 19.8,3.25 19.45,3.9 18.65,4.2 18.4,4.6 18.65,4.75 18.75,5.15 19.1,4.55 17.9,5.4 17.65,5.7 17.05,6.05 17.4,6.5 16.6,6.85 15.7,7.15 15.75,7.75 16.6,7.95 20.4,3.4 20.7,3.45 21.15,2.85 21.75,2.65 22,3.25 22.2,3.5 21.45,3.75 21.1,4.05 20.15,4.3 20.8,4.7 20.7,5.15 19.75,5.05 19.85,5.5 20.4,5.65 20.55,5.75 18.7,5.75 19.25,5.95 18.4,6 18.45,6.6 17.65,7.05 16.7,7.4 18.65,7.3 18.05,7.35 17.85,7.75 17.5,8.25 17.15,8.6 17.05,9 16.4,8.7 16.05,8.95 16.05,9.6 16.5,9.75 17.25,9.6 17.6,9.9 17.8,9.3 18,8.55 18.8,8.1 18.8,8.35 19.4,7.6 19.25,6.6 20.05,6.95 19.8,7.5 20.05,6.35 21.15,5.7 21.65,4.85 22.15,4.35 23.05,3.35 23.05,3.8 23.15,4.4 22.5,4.75 22.15,5.2 24.15,4.55 23.5,5.05 23.1,5.3 23,5.75 22.2,5.75 21.85,6.2 20.75,6.55 21,7.15 20.75,7.65 20,8.2 19.5,8.65 18.85,9.05 18.75,9.55 18.6,10 16.95,10.35 17.35,10.85 18,10.65 18.5,10.55 18.1,11.1 17.55,11.3 17.95,11.9 18.3,12 18,12.5 19,11.65 19.5,11.05 19.45,10.55 19.4,9.65 20.1,9.4 20.05,9.95 20.05,10.2 19.35,12.2 19.2,12.25 20.05,11.6 20.6,11.15 20.7,10.65 21.3,11.65 21.8,11.15 21.85,10.7 21.65,10.05 20.95,10.2 20.9,9.7 21.65,9.45 21.2,9.25 20.75,8.75 20.55,8.75 21.1,8 21.65,8.65 21.75,8.2 21.95,7.55 22,6.75 22.8,6.45 22.65,6.65 22.75,7.05 23,7.35 22.55,7.9 22.2,8.7 22.9,8.45 22.35,9.2 22.75,9.35 22.4,10.05 23.05,10.9 23.3,9.85 23.95,9.8 23.65,9.1 23.7,8.85 24.25,8.25 24.85,7.95 23.5,7.85 23.85,7.35 23.95,6.9 23.65,6.5 23.6,5.7 24.3,5.65 24.8,6.4 34.05,3.5 33.05,3.85 32,3.8 31.9,4.4 31.05,4.75 30.4,5.65 30.75,6.1 30,6.7 30.1,7.4 29.5,8.15 30.75,8 30.85,7.35 31.5,6.75 31.75,5.95 32.35,6.45 32.8,6 32.05,5.1 32.8,4.8 32.65,4.4 33.65,4.6 33.05,5.15 33.6,5.45 34.5,5.05 34.9,4.65 35.45,4.1 34.6,4.05 34.2,4.2 36.3,5.2 35.55,5.35 35.95,6.05 34.8,5.85 33.7,6.15 33.95,6.6 33.7,7.05 32.75,7.1 32.3,7.65 33,7.9 31.95,8.15 31.15,8.65 30.35,8.85 29.85,9 30.7,9.15 29.7,9.9 30.45,9.95 30.95,9.85 31.8,9.45 32.45,8.8 33.55,8.6 34.35,7.7 34.7,8 34.6,7.25 35,6.8 35.5,7.35 36.1,7.5 36.55,7 36,8.2 35.35,8.05 36.55,8.65 36.4,9.1 35.5,9.1 34.55,8.85 35.25,9.4 34.4,9.5 33.5,9.3 33.85,9.8 32.5,9.65 32.3,10.25 33.3,10.3 31.6,10.5 30.6,10.5 30.4,11.1 30.9,11.45 30.7,11.65 30.4,12.05 31.2,12 31.95,11.35 31.65,11.05 32.95,11.15 32.65,11.7 32.25,12.25 32.05,12.25 31.3,12.7 31.95,12.95 32.75,13.1 33.15,13.2 33.1,12.75 33.15,12.1 34.3,11.75 34,10.85 34.65,11 34.8,10.1 35.65,9.85 36.35,10 35.55,10.75 35.8,11.55 35.2,11.75 34.7,11.75 34.95,12.75 34.05,12.55 34.05,13.05 33.25,13.7 33.2,14.15 33.25,14.7 33,15.15 32.95,15.65 32.6,16.15 32.45,16.75 32.65,17.05 32.75,17.3 31.75,17.2 31.7,17.65 31,17.5 31.15,17.9 30.45,18.05 30.05,18.8 30.55,18.8 30.5,19.3 30.25,19.4 29.6,19.85 29.15,20.55 30.25,20.45 30.7,20.05 31,19.9 31.55,19.65 31.5,18.55 32.05,18.6 31.95,19.1 32.6,18.35 32.85,17.95 33.45,17.45 33.7,17 34.25,17.35 34.3,18.05 33.85,18.4 33.05,18.85 33.25,18.95 32.8,19.15 32.3,19.85 32.8,20 31.75,20.25 31.75,20.75 32.1,21.15 31.55,21.6 30.65,21.3 29.95,21.6 29.5,21.6 30.35,22.05 31.05,22 31.55,22.2 30.95,22.65 30.3,23.1 29.6,23.15 29.35,22.55 29.2,23.85 30.75,24 30.95,24.15 31.45,23.7 31.95,23.15 32.55,22.05 32.6,22.55 33.25,22.25 33.65,21.9 33.5,21.3 33.1,20.75 33.8,20.4 33.85,20 34.15,19.3 34.85,18.85 35.3,18.55 35.4,19.35 34.55,19.75 35.05,20 35.95,19.85 36.35,20.6 35.5,20.55 34.45,20.65 34.4,21.25 35,21.05 35.75,21.3 35.05,21.5 34.6,22.05 34.2,21.75 36.25,21.95 35.7,22.3 35.5,22.9 35.85,23.25 36.3,23.8 35.45,24.1 34.9,23.5 34.2,22.9 33.85,23.3 33.25,23.35 32.45,23.7 33.6,23.9 34.25,23.95 34.25,24.1 35.4,24.7 35.15,25.3 34.4,24.9 33.7,24.85 32.25,24.45 32.5,24.7 31.45,24.45 31.55,25.2 31.05,25 30.25,24.3 29.8,24.8 29.6,25.5 29.7,26.05 30.5,25.5 30.65,26 31.25,26.05 31.45,26.95 30.75,26.9 30.65,27.15 31.25,27.85 31.85,27.75 32.7,28.2 33.25,27.55 32.4,27.1 32.15,26.65 32.35,25.95 32.95,25.5 33.85,26.05 33.05,26.5 33.65,27 34.1,27.35 34.2,27.95 34.65,26.85 35.25,26 35.7,26.15 34.4,25.6 21.3,20.8 20.15,20.9 19.2,21.35 19.1,21.85 18.45,22.8 18.75,22.95 19.4,23 19.55,22.25 19.8,21.85 20.5,21.85 21.45,21.45 21.7,21.9 21.4,22.3 21,22.6 21.15,22.95 20.5,22.85 19.75,23.65 19.2,23.7 18.45,24.35 20.65,23.85 20.65,24.3 19.7,24.6 20.15,25.05 22.15,25.1 21.6,24.65 21.7,23.8 21.9,23.65 22.55,23.5 22.55,24.3 23.3,24.45 24.25,24.35 23.8,25.25 23.4,23.8 22.9,23.2 22.3,22.8 22.2,22.4 23.1,21.7 22.85,21.9 22.65,21.1 23.15,22.6 24.1,21.9 24.7,22.2 24.3,22.6 24.15,23.3 23.9,23.45 5.2,2.15 6.35,1.95 6.75,2.3 5.9,2.4 5.4,2.7 4.85,2.9 4.85,3.35 5.15,3.45 5.7,3.45 6.2,3 6.2,3.2 7.65,2.15 7.2,2.75 6.75,3.2 6.75,3.55 6.65,3.8 5.8,4 4.95,4.05 5.1,4.35 5.7,4.45 5.45,4.85 6.7,4.8 6.55,5.05 7.2,4.9 6.2,4.25 7.1,4.3 7.85,4.5 7.6,4.15 7.25,3.55 7.8,3.35 8.05,2.75 8.5,3.25 8.1,3.55 8.15,4