当在 KNN 中使用 K 值出现平局时,如何 class 化 class

How do classify class when there's a tie using a K value in KNN

所以我有这个问题我正在和朋友辩论。

问题是 K 的最小值应该是多少,以便“Naeem”可以class化为:

  1. F

  2. B

这是我根据矩阵计算的距离值:

Name    | A     | B     | C | Class| Distance from Naeem
--------|-------|-------|---|------|--------------------
'Kamran'| 35    | 35    | 3 | 'A'  | 15.17
'Zahid' | 22    | 50    | 2 | 'B'  | 15.0
'Imran' | 63    | 200   | 1 | 'C'  | 152.24
'Azfer' | 59    | 170   | 1 | 'D'  | 122.0
'Raza'  | 25    | 40    | 4 | 'E'  | 15.75
'Aamir' | 35    | 150   | 1 | 'A'  | 100.02
'Zia'   | 25    | 120   | 3 | 'B'  | 71.03
'Ishrat'| 26    | 90    | 4 | 'C'  | 41.53
'Khalid'| 40    | 60    | 2 | 'F'  | 10.44
'Naeem' | 37    | 50    | 2 | ?    | 

现在我们同意 Naeem 属于 class F,K 将为 1。 然而,当谈到 Naeem 属于 class B 时,他说它将是 K=3,因为这是 B class 第一次被认为是最近的邻居,但我说对于 classification 我们不需要有 classes 的联系,K=3 会带来 (F,A,B) 而是我们需要使用 K=4 这样我们就有两个邻居 class B 并且当多数获胜时,只有当 K=4 时,Naeem 才会 class 化为 B。

关于谁是正确的或我们都理解错误的任何见解?

根据我的说法,'Naeem' 被 class 化为 'F' K 的值必须等于一。

当“Naeem”属于class B时,K的值必须是B占多数的数字。当K的值设置为6时,我们实现了B的多数。

  • K=1 给出 {F}
  • K=2 给出 {F,B}
  • K=3 给出 {F,B,A}
  • K=4 给出 {F,B,A,E}
  • K=5 给出 {F,B,A,E,C}
  • K=6 给出 {F,B,A,E,C,B}

对于 k=6,所有其他变量有 1 次重复,B 有 2 次,因此 'Naeem' 将 class化为 B