在 Knn 特定情况下你会怎么做

数据挖掘 数据挖掘
2022-02-26 01:56:19

我想知道当 k = 1、k = 2 和 k = 3 时,在这个特定且不切实际的案例中应用 Knn,你会怎么做。

  • 1 类个人:[1,1] [2,2] [2,4] [2,5]

  • 第 2 类个人:[3,1] [4,1] [4,2]

  • 个人分类:[2,1]

阴谋:

Knn 测试图

我不知道是否会有任何标准而不是生成顺序来选择它所属的类。

1个回答

当 k=3时,这是一个简单的情况,最近的 3 个样本与新样本的距离相同。其中两个来自第 1 类,一个样本来自第 2 类,因此新样本将被归为第 1 类。

当 k=2时,它更加棘手。假设 2 个特征 (x,y) 对分类具有相似的重要性(否则应使用一些预先确定的权重计算距离),您可以:

  1. 从 3 个候选者中随机选择 2 个(您基本上承认在这种情况下,您的模型没有足够的信息用于基于 2-NN 的分类)。

  2. 将所有候选人考虑在内(例如,对于这种情况,您可以使用 3-NN)。

当 k=1时,与 k=2 情况相同的选项(您仍然需要达到 3-NN)。

在这种特定情况下,因为您的 3 个最近邻居的距离都相同,所以我会选择使用 K-NN。但是,对于具有相同距离的 4 个样本的类似情况,每类 2 个,我会随机选择(不去 5-NN)。