如何在K最近邻居中选择正确的k值

时间:2018-07-06 14:45:33

标签: python-3.x machine-learning classification knn

我有一个包含9448个数据点(行)的数据集 每当我选择介于1到10之间的K值时,精度就会达到100%(这是当然的理想情况!)并且更奇怪。

如果我选择K值为100或更高,则准确度会逐渐降低(95%至90%)。

如何选择K的值?我们想要一个像样的准确性,而不是100%的假设

1 个答案:

答案 0 :(得分:1)

嗯,选择k的简单方法是sqrt(数据点数)。在这种情况下,它将是sqrt(9448)= 97.2〜97。并且请记住,在不查看数据的情况下说出哪个k值最合适是不合适的。如果训练相似类的样本形成聚类,则使用从1到10的k值将获得良好的准确性。如果数据是随机分布的,则无法说出哪个k值将提供最佳结果。在这种情况下,您需要通过经验分析来找到它。