KNN算法的切分效果的演示

本文通过Matlab代码实现KNN算法的可视化,展示了如何生成二维数据点,并为这些数据点分配两个不同的类别。随后使用KNN算法对每个网格点进行分类,并以不同颜色展示分类结果,直观地呈现了KNN算法的效果。

低功耗蓝牙项目,需要一块懂省电的板

思澈 SF32LB52 芯片,BLE 协议栈深度优化,上手即开发

KNN算法效果的演示


clear;clc;close all
% generate point by uniform
rng(1);
n = 50;
xy = unifrnd(0,10, [n, 2]);
group = randi(2, [n, 1]);
% plot
figure;
gscatter(xy(:,1),xy(:,2),group,'br','xo')
xlabel('x');
ylabel('y');
% discrite the region
[x, y] = meshgrid(linspace(0,10));
group2 = zeros(size(x(:)));
k = 7;
for i = 1 : numel(x)
    d = dist([x(i),y(i)], xy');
    [~, idx] = sort(d);    
    group2(i) = mode(group(idx(1:k)));
end
figure
gscatter(x(:), y(:), group2,'br','..', 15,'x','y');
title(sprintf('k = %d',k));



低功耗蓝牙项目,需要一块懂省电的板

思澈 SF32LB52 芯片,BLE 协议栈深度优化,上手即开发

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值