1.KNN原理:

2.KNN特点:

2.1.惰性学习。将所有计算推迟到分类(test)阶段之后。

2.2.要求邻居已经正确分类。这被视为当做训练样本集的算法

2.3.一般情况下,计算欧氏距离。要求变量是连续的。对于文本分类这种非连续的,可以使用重叠度量或者海明距离作为度量。

2.4.多数表决

2.5.基于实例的学习

3.KNN步骤:

3.1.计算新输入样本距离所有训练样本的距离。遍历所有的样本

3.2.选择K个距离最小的训练样本。排序算法

3.3.计算这K个样本中所含样本数最多的类。计数

4.KNN缺陷及改进方法:

4.1.计算量大。需要计算新输入样本到所有样本的距离。

4.2.K值不能自适应,需要提前设定

哪种算法的参数可以自适应?

4.3.某个类的容量很大时,输入一个新样本后,该样本的K个最近邻中,大样本类的样本占大多数。所有多数表决方法的缺陷。

改进方法:

4.3.权值。赋予大样本类中的样本较小的权值。赋予权值时,将距离考虑进去。

(欧式距离)

4.2.较大的K值可以减少噪声。K值可以考虑启发式技术,如交叉验证

5.KNN优点\适用:

5.1.样本数量较小

5.2.准确率要求不高

5.3.样本不能一次性获取,只能随着时间一个一个得到。

posted on 2014-03-11 23:25  onesteng  阅读(593)  评论(0编辑  收藏  举报