different output in kmeans
이전 댓글 표시
i used kmeans for clustering similar images.... if i run the code first i get the correct clusters..... but without closing matlab if i execute the second time for the same image, it is clustering different output.... why like that..... what shud i do to get the same output whenever i execute the code... please do reply.....
채택된 답변
추가 답변 (1개)
An option is to reset the random number generator to its initial state every time before running your code:
rng default % ->This is the important bit
X = [randn(100,2)+ones(100,2);...
randn(100,2)-ones(100,2)];
opts = statset('Display','final');
[idx,ctrs] = kmeans(X,2,...
'Distance','city',...
'Replicates',5,...
'Options',opts);
This will always produce the same result, but it sorts of beat the purpose of the function and might produce bad results.
댓글 수: 2
For example:
X = [randn(100,2)+ones(100,2);...
randn(100,2)-ones(100,2)];
opts = statset('Display','final');
[idx,ctrs] = kmeans(X,2,...
'Distance','city',...
'Replicates',1,...
'Options',opts,...
'start',[0.25 0.25; 0.75 0.75]);
But that does not guarantee that the result will always be the same.
Elysi Cochin
2013년 5월 7일
카테고리
도움말 센터 및 File Exchange에서 k-Means and k-Medoids Clustering에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!