different outputs for same input in every run
显示 更早的评论
Dear all,
I am using fitcknn function and I expect a 8*2 matrix to be the output (detected varialble). But sometime the output is correct and other times not. I used fixed rand number seed and clear all variables before every run but it does not work.
Any idea what is the problem of my code? Many thanks in advance.
clear all;
data = load('data.mat').data;
%%%%%%%%%
find_kmeans=kmeans(data(:,1),2);
data_2=table(data(:,1),find_kmeans(:));
data_2.Properties.VariableNames = ["counts", "detect"];
Mdl=fitcknn(data_2,'detect');
Mdl.NumNeighbors=1;
test_data=data(:,1);
pred=predict(Mdl,test_data);
wanted_points=(find (pred==2));
wanted_points_cnts= data(wanted_points,1);
detected=table(wanted_points(:),wanted_points_cnts(:));
scatter(wanted_points,wanted_points_cnts)
2 个评论
Walter Roberson
2022-8-4
I do not see a fixed random number seed?
Reminder: kmeans() does random initialization, so you would need to set the seed before the kmeans call.
Hamid
2022-8-4
采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 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!