当k = 4时,KNN选择classlabel

时间:2015-01-20 13:37:46

标签: machine-learning classification nearest-neighbor knn

在k-NN分类中,输出是类成员资格。对象通过其邻居的多数投票进行分类,对象被分配给其k个最近邻居中最常见的类(k是正整数,通常是小整数)。

  1. 如果k = 1,则简单地将对象分配给该单个最近邻居的类。
  2. 如果k = 3,且classlabels为Good = 2 Bad = 1,则预测的classlabel将为Good,其中包含magority vote。
  3. 如果k = 4,且classlabels为Good = 2 Bad = 2,那么classlabel是什么?

2 个答案:

答案 0 :(得分:1)

有不同的方法。例如,Matlab使用' random'或者'最近的'记录here

  

分类到两个以上的组或使用偶数值时   对于k,可能有必要打破最近的数量   邻居。选项是“随机”,它选择随机决胜局,   和'最近',它使用绑定组中最近的邻居   打破平局。

答案 1 :(得分:0)

此问题并非特定于k = 4

考虑一个包含3个类的数据集。在k = 2时,可能出现两个不同的类别。在k = 3时,可能会出现三个不同的类别,在k = 4时,它可能是0,2,2 ...任何超过1的k都会带来 tie 的风险。

随机选择一个,或使用加权(即给予1NN比第二个最近邻居更多的权重等),以进一步降低关系风险。