I used the same data, but not get the same figure

1 vue (au cours des 30 derniers jours)
huda nawaf
huda nawaf le 5 Sep 2012
hi,
I try to built elbow code to determine the no. of clusters.I used the same data that used in the following link:
why I'm not get the same figure of elbow code in above link?
x = iris_dataset;
x=x';
d=kmeans(x,9);
for i=1:10
a=find(d==i);
for j=1:length(a)
cluster(i,j)=a(j);
end
end
for i=1:9
cluster1{i}=cluster(i,:);
var1(i)=var(cluster1{i});
end
s=sum(var1)/9;
s1=var1/s;
y(1:9)=1:9;
plot(y,s1)
thanks in advance

Réponse acceptée

Doug Hull
Doug Hull le 6 Sep 2012
It looks to me like you are using the default settings for KMeans for the Start Parameter. This chooses a random starting subset. KMeans is NOT deterministic. You should expect different results each time, it is the nature of the algorithm.
  2 commentaires
huda nawaf
huda nawaf le 9 Sep 2012
I do not think the reason in kmeans , but relate with somthing like scaling that thing I did not understand it.
thanks
Oleg Komarov
Oleg Komarov le 9 Sep 2012
The reason IS in the randomized selection of the start position in kmeans.
Compare d between two runs of kmeans.

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by