用matlab表示KNN算法函数
时间: 2023-12-18 11:02:07 浏览: 74
基于matlab实现的KNN算法机器学习项目源码
以下是一个简单的 MATLAB 函数,可用于执行 KNN 算法:
```
function [prediction] = knn(train_data, train_labels, test_data, k)
% train_data: 训练数据集
% train_labels: 训练数据标签
% test_data: 测试数据集
% k: 最近邻数
% 计算测试数据与每个训练数据之间的距离
distances = pdist2(test_data, train_data);
% 找到最近的 k 个邻居
[~, indices] = sort(distances, 2);
k_nearest_labels = train_labels(indices(:, 1:k));
% 根据最近邻的标签进行投票
prediction = mode(k_nearest_labels, 2);
end
```
在这个函数中,我们使用 `pdist2()` 函数计算测试数据与每个训练数据之间的距离。然后,我们使用 `sort()` 函数找到最近的 k 个邻居,并使用 `mode()` 函数根据最近邻的标签进行投票,以确定测试数据的标签。
阅读全文