天天看点

KNN分类原理

原文链接:https://zhuanlan.zhihu.com/p/22345658

kNN 可以用来进行分类或者回归,大致方法基本相同,本篇文章将主要介绍使用 kNN 进行分类。

K:邻居数量

1.距离函数:

最常用L2距离,即欧氏距离。

标准化:要对距离标准化(归一化)

2.概率KNN

定义:可有时我们并不想知道一个确切地分类,而想知道它属于某个分类的概率是多大。

这只兔子的特征数据在悲伤和痛苦的分界处,机器不论判断它属于哪个类别都很有可能是错的。这时,类似“它有一半可能性是痛苦,一半可能性是悲伤”的反馈会更有意义。

方法:距离目标最近的15 个样本中,有8只悲伤和7只痛苦,由此判断:它有53%的可能性是悲伤,47%的可能性是痛苦,0%的可能性是绝望。

3.优缺点

 kNN 虽然思路简单,但实现起来有一个问题,那就是计算量很大;当数据量很多时,拿一组特征来和所有样本依次计算距离并选取最近的k个,是非常耗费时间的。所以,在量化课堂接下来的文章中,我们将讲解 kNN 的一个高效算法—kd树。

继续阅读