最近邻(NNC)

原创 2016年06月01日 21:02:49

最近邻算法的基本思路

  1. 已知NX
  2. 输入未知类别的样本x
  3. 计算xxiX,(i=1,2,N)di(x);
  4. 找到最小距离dm(x)=min{di(x)};
  5. 判断xm属于哪一类
  6. 确定出未知样本所属的类

Matlab代码实现

clear all;
close all;
clc;

%X为标记好的样本集,样本为将1至100的数分为4类
%1-10里的5个随机数为一类,30-40里的5个随机数为一类,60-70里的5个随机数为一类,90-100里的5个随机数为一类.
%N = 20,总样本数
X = [7,10,1,5,4,36,33,37,35,38,60,68,62,66,64,98,90,96,99,94];
[r,c] = size(X);
%已标记好的四类样本
w1 = [7,10,1,5,4];
w2 = [36,33,37,35,38];
w3 = [60,68,62,66,64]; 
w4 = [98,90,96,99,94];

%x为未知样本
T = [1:10 31:40 61:70 91:100];%选取类的范围里的随机序列,共40个数
R=randperm(40);%将1至40随机数打乱
x =T(R(1));
disp('随机数x为:');
disp(num2str(x));

%计算距离
d = zeros(r,c);
for i = 1:c
    d(i) = X(i)-x;
end
[dmin ,m] = min(abs(d));%显示最小距离,以及所在位置

%判断随机数x属于的类别
if (m <= 5) && (m >= 1)
    disp( '随机数x属于w1类:');
    disp( num2str(w1));
    break;
elseif (m <= 10) && (m >= 6)
    disp( '随机数x属于w2类:');
    disp( num2str(w2));
    break;
elseif (m <= 15) && (m >= 11)
    disp( '随机数x属于w3类:');
    disp( num2str(w3));
    break;
elseif (m <= 20) && (m >= 16)
    disp( '随机数x属于w4类:');
    disp( num2str(w4));
    break;
end

效果图

版权声明:本文为博主原创文章,未经博主允许不得转载。如有疑问,欢迎打扰。

图像缩放--最近邻插值

图像缩放--最近邻插值   自己一直以为放大图像是会放大像素点的大小的,然后就去查了一下,发现不是这样的,而是像素点数量变了,而多的或者少的就依靠插值来实现 百度问答 这里的答案...
  • WMN7Q
  • WMN7Q
  • 2016年10月06日 13:32
  • 1263

4.1 最近邻规则分类算法(KNN)

综述 1.1 Cover和Hart在1968年提出了最初的邻近算法 1.2 分类(classification)算法 1.3 输入基于实例的学习(instance-based learni...
  • liang_biao
  • liang_biao
  • 2016年07月05日 00:26
  • 1617

最近邻分类器(KNN)

介绍最近邻分类器
  • tyzttzzz
  • tyzttzzz
  • 2014年12月03日 13:18
  • 4910

白话空间统计之六:平均最近邻

平均最近邻可以得出一份数据的具体聚集程度的指数,通过这个指数,可以对比不同数据中,哪个数据的聚集程度最大。适用于对固定研究区域中不同的要素进行比较。比如在同一城市范围内,不同类型的企业之间的分布情况的...
  • allenlu2008
  • allenlu2008
  • 2015年08月11日 15:49
  • 4749

最近邻内插值与双线性插值

最近邻内插值与双线性插值的实现
  • zhangla1220
  • zhangla1220
  • 2014年11月11日 17:36
  • 4638

最近邻法和k-近邻法 KD树

最近邻法和k-近邻法   下面图片中只有三种豆,有三个豆是未知的种类,如何判定他们的种类?   提供一种思路,即:未知的豆离哪种豆最近就认为未知豆和该豆是同一种类。由此,我们引出最...
  • u012422446
  • u012422446
  • 2017年02月22日 15:33
  • 2338

图像的插值算法之最近邻插值

这是一种简单的插值算法:不需要计算,在待求象素的四邻象素中,将距离待求象素最近的邻象素灰度赋给待求象素 设i+u, j+v(i, j为正整数, u, v为大于零小于1的小数,下同)为待求象素坐标,则待...
  • linqianbi
  • linqianbi
  • 2017年11月21日 16:16
  • 362

最近邻算法的图像缩放代码

原理挺简单,不啰嗦,直接上代码了 void ImgResize(uchar* pSrcImg, uchar* pDstImg, int srcW, int srcH, int dstW, int d...
  • carson2005
  • carson2005
  • 2014年07月29日 10:38
  • 1909

k-最近邻聚类k-Nearest Neighbor

这里只给出k-最近邻聚类k-Nearest Neighbor的实现过程,算法的原理请自行搜索,代码如下: k-最近邻聚类算法的主程序:clc; clear; %读取数据文件,生成点矩阵 fileID...
  • lengo
  • lengo
  • 2017年12月03日 10:40
  • 86

KNN(K-最近邻法) —matlab 和 python 学习记录

本系列文章是自己学习过程中的记录,如果有错误,欢迎各位交流指正。基本思想: 输入无标签的数据,首先提取新特征,并与测试集中的每一个数据进行比较,然后从样本中提取k个最近邻(最相似)数据特征的分类标签,...
  • ifruoxi
  • ifruoxi
  • 2016年11月05日 19:58
  • 471
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:最近邻(NNC)
举报原因:
原因补充:

(最多只允许输入30个字)