用于非序数变量的 kNN

数据挖掘 k-nn 数据插补 分类编码
2022-03-11 22:33:47

kNN 是一种基于距离的方法,因此它要求输入为数字形式。

我想知道是否可以将 kNN imputer 用于非序数分类变量(如颜色)。

由于输入必须是数字形式,我们必须在应用 kNN imputer 之前对颜色特征进行编码。

使用序数编码似乎不是一个好主意。如果我们为颜色分配数字 1-10,那么基于距离的测量将假定颜色 1 和 3 之间的距离与颜色 2 和 4 之间的距离相同。实际上不存在这种关系。

我们可以使用 one-hot 编码。假设我们最终得到 10 个单热编码颜色列,其中包括一个指示缺失值的列。然后,我们的任务是将插补应用于 one-hot-encoded 缺失颜色列中具有 1 的行。我们希望插补来决定其他 9 个单热颜色列中的哪一列将具有 1 而不是 0。但这通常根本不是 kNN 插补的工作方式。

您能否建议在这种情况下是否可以使用 kNN 插补?我该如何应用它?

1个回答

K-最近邻算法 (k-NN) 可以使用计数作为距离度量来处理分类特征。最近的邻居将具有最接近的计数频率。

此外,颜色是有序的。每种颜色都是可见光谱上的特定频率。