如何在不使用内置函数的情况下预测KNN分类器

时间:2016-10-31 08:36:19

标签: matlab machine-learning knn

我在预测KNN分类器时遇到了一些麻烦而没有使用内置函数。我被困在这里,不知道如何进入下一步。这是我的代码:

 % calculate Euclidean distance
 dist = pdist2(test, train, 'euclidean');
 for k = [1 3 5 7]
    [~, nearest] = sort(dist, 2);
    nearst = nearest(:, 1:k);
end % for loop

其中test是297x64矩阵,train是1500x64矩阵。 dist矩阵为297x1500。任何帮助都会感激不尽!

1 个答案:

答案 0 :(得分:1)

因此,您设法根据nearst中的距离设置了排序索引,您所要做的就是引用原始数据的标签。所以你有一个变量labels,它为每个点保存一个真正的标签。使用存储在nearst中的索引来读取它们,并简单地报告最常见的值。