【问题标题】:KNN choosing class label when k=4KNN 在 k=4 时选择类标签
【发布时间】:2015-03-18 18:19:16
【问题描述】:

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

  1. 如果 k = 1,则简单地将对象分配给该单个最近邻居的类。
  2. 如果 k=3,类标签 Good =2 Bad=1,则预测的类标签为 Good,包含多数票。
  3. 如果 k=4,类标签 Good =2 Bad=2,那么类标签是什么?

【问题讨论】:

    标签: machine-learning classification nearest-neighbor knn


    【解决方案1】:

    有不同的方法。例如,Matlab 使用 here 记录的“随机”或“最近”。

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

    【讨论】:

    • 是的,这是一种方法。
    【解决方案2】:

    此问题并非特定于 k=4

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

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

    【讨论】:

    • 如何随机选择?
    • 随机选择一个最大的。
    • @HasQUIT--Anony-Mousse 最简单的方法是实现像这里这样的功能 - stackoverflow.com/a/84747/2047418
    猜你喜欢
    • 2013-02-05
    • 2020-01-14
    • 2016-10-04
    • 2023-03-14
    • 2023-01-24
    • 2017-10-11
    • 1970-01-01
    • 2019-06-24
    相关资源
    最近更新 更多