【问题标题】:How to choose ideal K when multiple K share same testing accuracy in KNNKNN中多个K共享相同测试精度时如何选择理想K
【发布时间】:2023-01-24 03:07:20
【问题描述】:

对于我的 KNN 分类器,我绘制了 K(# 最近邻居)的不同值的训练和测试精度,如下所示:

如您所见,范围 [1, 5] 中的 Ks 具有相同的测试精度。

在这种情况下,应该选择K的什么值进行推理?

我试过什么?

在这种情况下,不能应用肘部技术。

附言:我使用以下函数来拆分我的训练和测试数据:

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=.3, random_state=4, shuffle=True, stratify=y)

【问题讨论】:

  • K=1 我猜是因为它更便宜,但看起来你确实过拟合了。

标签: algorithm machine-learning classification knn


【解决方案1】:

通过做出决定,您基本上以某种方式扩展了 kNN 模型。 这可能会产生广泛的后果,最好的决定取决于您的实际问题,可能并不简单。

话虽如此,我立即想到了这些方法:

  1. 选择最低的k。这是计算效率最高的。
  2. 选择最高的k。这会降低“嘈杂”样本的影响,并将作为某种正则化器。
  3. 增加测试样本的数量,以便获得更准确(并且可能不同)的准确度。

【讨论】:

    猜你喜欢
    • 2016-08-19
    • 2013-02-05
    • 2015-03-18
    • 2016-02-26
    • 2017-04-14
    • 2020-12-30
    • 1970-01-01
    • 2019-12-12
    相关资源
    最近更新 更多