【问题标题】:K-Nearest Neighbors find all tiesK-Nearest Neighbors 找到所有关系
【发布时间】:2019-04-07 01:38:27
【问题描述】:

我目前正在使用 sklearn 从数据集中计算所有 k 最近邻。说 k = 10。我遇到的问题是 sklearn 将只返回 10 个最近的邻居,并且没有其他数据点可能与第 10 个最近的邻居在距离方面有关联。我想知道是否有任何有效的方法可以找到任何其他点,这些点可能在距离方面与第 k 个最近邻相关?

【问题讨论】:

    标签: python algorithm pandas numpy scikit-learn


    【解决方案1】:

    理论上,集合中的所有点都可能打成平手,从而使问题变得不同。事实上,K 最近的邻居可以在没有关系的情况下及时报告O(Log N + K),而关系可以暗示K = O(N) 做出任何解决方案O(N)。

    在实践中,如果坐标是整数,则平局将是一种罕见的事件,除非问题具有特殊结构。而在浮点数中,绑定几乎是不可能的。

    IMO,处理关系会降低效率,没有任何好处。

    【讨论】:

    • 在我的情况下,某些点有很多联系,因为我正在进行异常值检测并且这些联系会影响它们的平均可达性,所以我确实需要找到联系。
    猜你喜欢
    • 2021-06-12
    • 2012-03-20
    • 1970-01-01
    • 1970-01-01
    • 2016-10-12
    • 2021-12-16
    • 2018-04-14
    • 2016-03-28
    • 2020-07-16
    相关资源
    最近更新 更多