【问题标题】:Why does decreasing K in K-nearest-neighbours increase complexity?为什么减少 K 最近邻中的 K 会增加复杂性?
【发布时间】:2023-04-08 03:04:01
【问题描述】:

在我教科书的摘录中,它说在运行此算法时减少 K 的值实际上会增加复杂性,因为它必须运行得更“平滑”。

谁能给我解释一下?

我的理解是,在1NN 中,您将其提供给您的训练集。您在测试集上进行测试。假设您的测试集有一个点。它在训练集中找到离它最近的一点,并返回这个的值。

这肯定比在3NN 中找到最近的 3 个点、将它们的值相加并除以 3 简单吗?

我误解或忽略了什么?

【问题讨论】:

  • 通过平滑,我认为正则化是隐含的。但是,这里执行了什么正则化?
  • 这个问题属于stats.stackexchange.com
  • kNN 不是一种算法,而是一种技术。这本书是在讨论特定 kNN 算法的计算复杂度,还是 kNN 特定用例的复杂度,如果与 k=1 一起使用,需要额外的步骤?

标签: algorithm artificial-intelligence complexity-theory nearest-neighbor


【解决方案1】:

当我读到那条公理时,我也有同样的难以置信的时刻;一个更高值的参数降低复杂性起初似乎有点违反直觉。

为了对此进行直觉,让我们比较一个 1-nearest-neighbour 训练模型和一个 N>>1-nearest-neighbours 模型。让我们使用一个简化的二维图(双特征数据集)和二元分类(每个“点”都有一个类别或标签,A 或 B)。

对于 1-nearest-neighbour 模型,训练集的每个示例可能是预测类 A 或 B 的区域的中心,其大多数邻居是预测类 A 或 B 的区域的中心其他类。你的情节可能看起来像是世界上那些深深交织在一起的地区的种族、语言或宗教地图之一(想到巴尔干半岛或中东):小块复杂的形状和交替的颜色,没有明显的逻辑,因此“高度复杂”。

如果增加 k,预测每个类别的区域将更加“平滑”,因为决定任何点类别的是 k 最近邻的大多数。因此,这些区域的数量将更少,尺寸更大,形状可能更简单,就像世界同一地区国家边界的政治地图一样。因此“复杂性更低”。

(直觉和来源from this course.)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-19
    • 2014-04-12
    • 2014-07-11
    • 2013-03-21
    • 1970-01-01
    • 2018-04-08
    相关资源
    最近更新 更多