Machine learning 对于KNN中的k值

Machine learning 对于KNN中的k值,machine-learning,classification,Machine Learning,Classification,我知道,通常情况下,如果k=1,那么对象就被简单地分配给单个最近邻的类。但是我发现了一个问题,一个点可以是它自己的邻居,它要求我找到一个k来最小化训练误差。所以我想知道,在这种情况下,k可以是1吗?当使用k-NN评估训练错误时,您使用训练集本身对训练集中的每个实例进行分类 如果一个点可以是它自己的邻居,那么使用k=1将产生完美的性能,因为它将始终为每个点预测点自己的标签。因此,是的,使用k=1肯定会最小化训练错误。当使用k-NN评估训练错误时,您使用训练集本身对训练集中的每个实例进行分类 如果一

我知道,通常情况下,如果k=1,那么对象就被简单地分配给单个最近邻的类。但是我发现了一个问题,一个点可以是它自己的邻居,它要求我找到一个k来最小化训练误差。所以我想知道,在这种情况下,k可以是1吗?

当使用k-NN评估训练错误时,您使用训练集本身对训练集中的每个实例进行分类


如果一个点可以是它自己的邻居,那么使用
k=1
将产生完美的性能,因为它将始终为每个点预测点自己的标签。因此,是的,使用
k=1
肯定会最小化训练错误。

当使用k-NN评估训练错误时,您使用训练集本身对训练集中的每个实例进行分类


如果一个点可以是它自己的邻居,那么使用
k=1
将产生完美的性能,因为它将始终为每个点预测点自己的标签。因此,是的,使用
k=1
肯定会使训练误差最小化。

使用k-NN评估“训练集”时必须非常小心。使用k-NN评估“训练集”时必须非常小心。