【问题标题】:How do classify class when there's a tie using a K value in KNN当使用 KNN 中的 K 值出现平局时如何对类进行分类
【发布时间】:2020-06-22 00:52:19
【问题描述】:

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

问题是K的最小值应该是多少,因此“Naeem”可以分类为:

  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 属于 F 类,K 将为 1。 然而,当谈到 Naeem 属于 B 类时,他说它将是 K=3,因为这是第一次将 B 类视为最近邻,但我说对于分类,我们不需要有类的联系其中 K=3 将带来 (F,A,B) 而我们需要使用 K=4 以便我们有两个具有 B 类的邻居,并且当多数获胜时,Naeem 将仅在 K=4 时被归类为 B。

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

【问题讨论】:

  • 不是编程问题,因此这里可以说是题外话;更适合Cross Validated
  • 好的,感谢@desertnaut 的提醒,把它贴在那里
  • 不客气;当你这样做时请删除这个,因为交叉发布是not allowed

标签: machine-learning knn


【解决方案1】:

据我所知,要将“Naeem”归类为“F”,K 的值必须等于 1。

当“Naeem”属于 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' 将被归类为 B

【讨论】:

  • 顺便问一下,好问题。喜欢解决它,如果我有任何错误,请纠正我。
  • 你是对的,刚刚也得到了老师的证实:)
猜你喜欢
  • 2014-09-01
  • 2016-02-26
  • 1970-01-01
  • 2017-12-10
  • 1970-01-01
  • 2021-05-30
  • 2014-05-24
  • 2013-05-17
  • 2019-10-04
相关资源
最近更新 更多