KNN(K-最近邻)

原创 2016年08月29日 00:07:53

算法介绍
KNN分类算法应该是最容易理解的机器学习算法了。它是惰性学习法的一种,它并不从训练数据集中得到一个分类模型,而是简单的存储这些训练数据,当一个待分类数据X到来时,它计算X和训练数据集中所有数据的距离,然后选择离X最近的k个数据,这k个数据称为X的k最近邻,并把这k个数据中出现次数最多的类别赋给X。
KNN分类算法有两个比较关键的地方需要注意:
(1)两个数据之间距离的计算公式。相似性计算是大多数分类算法的核心,但是对KNN来说,几乎是它的全部,直接影响到分类的准确性。具体可参考《数据挖掘概念与技术》第三版2.4节。
(2)k值选择。对于一个数据对象,选择不同的k值时,可能会被分到不同的类别,如下图:
这里写图片描述
图中实心行块表示正例,空心圆圈表示负例。如果k=1,待分类对象被分为负例;如果k=2,无法对待分类对象进行分类;如果k=3,待分类对象被分为正例。可以通过在训练集上选择不同的k值对测试集进行分类,最终选择错误率最小时的k值。

算法优势
KNN算法非常适合并行计算。在Hadoop上,我们可以轻松设计出时间复杂度为O(1)的mapreduce实现。

参考资料:
《Web数据挖掘》第2版,Bing Liu 著, 俞勇 译
《数据挖掘概念与技术》第3版,Jiawei Han,Micheline Kamber,Jian Pei 著,范明,孟小峰 译

版权声明:本文为博主原创文章,未经博主允许不得转载。

机器学习算法-K最近邻从原理到实现(Python)

引文:决策树和基于规则的分类器都是积极学习方法(eager learner)的例子,因为一旦训练数据可用,他们就开始学习从输入属性到类标号的映射模型。一个相反的策略是推迟对训练数据的建模,直到需要分类...
  • Dream_angel_Z
  • Dream_angel_Z
  • 2015年10月04日 17:20
  • 5943

【机器学习】最近邻策略:k-means和KNN

假设我们已经利用一堆样本{(x,y)}进行了训练,得到了k个分类和k个分类的重心,那么对于待测数据x’,计算x’到k个分类重心的距离,距离最近的分类y‘即为x’的分类。这是最近邻策略的基本思路,从中衍...
  • lpsl1882
  • lpsl1882
  • 2016年03月23日 00:01
  • 1111

数据挖掘之k-最近邻法(KNN与KMeans)

最近邻法基于类比学习,它既可以用于聚类,也可以用于分类 K-means是基于最近邻法的聚类方法。算法描述如下: 输入:k, data[n]; (1) 选择k个初始中心点,例如c[0]=data...
  • a936676463
  • a936676463
  • 2013年02月06日 11:33
  • 8399

最近邻分类器(KNN)

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

K-最近邻(KNN)算法

一、KNN原理 KNN(K Nearest Neighbor)算法可以用来解决分类或回归问题。这里侧重于对分类问题的讨论,我们用下面这张图来理解KNN算法的内涵:             ...
  • lizitong_csdn
  • lizitong_csdn
  • 2018年01月06日 15:24
  • 47

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

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

knn最近邻

1、算法基本思想  K最近邻(k-Nearest Neighbor,KNN)分类算法可以说是最简单的机器学习算法了。它采用测量不同特征值之间的距离方法进行分类。它的思想很简单:如果一个样本在特征空间...
  • Irving_zhang
  • Irving_zhang
  • 2016年07月08日 10:07
  • 679

监督学习_最近邻算法(KNN, k-近邻算法)

在模式识别领域中,最近邻居法(KNN算法,又译K-近邻算法)是将在特征空间中最接近的训练样本进行分类的方法。 最近邻居法采用向量空间模型来分类,概念为相同类别的案例,彼此的相似度高,而可以借由计算与...
  • yaling521
  • yaling521
  • 2015年01月28日 16:34
  • 1474

一、K -近邻算法(KNN:k-Nearest Neighbors)

一、K -近邻算法(KNN:k-Nearest Neighbors) 算法基本思想:物以类聚,人以群分 存在一个样本数据集合,也称作训练样本集,并且样本集中每个数据都存在标签。输入没有标签的新数据...
  • Maybe2030
  • Maybe2030
  • 2015年03月12日 11:34
  • 1672

机器学习实战k近邻算法(kNN)应用之手写数字识别代码解读

一.背景简要说明 书中假设待识别的数字已经使用图形处理软件将其处理为32*32的黑白图像,并将图片转换为文本格式。如下图代表数字0: 每个数字的训练样本大概有200个,每个数字的测...
  • SCUT_Arucee
  • SCUT_Arucee
  • 2015年12月11日 11:33
  • 3934
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:KNN(K-最近邻)
举报原因:
原因补充:

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