【发布时间】:2019-04-07 01:38:27
【问题描述】:
我目前正在使用 sklearn 从数据集中计算所有 k 最近邻。说 k = 10。我遇到的问题是 sklearn 将只返回 10 个最近的邻居,并且没有其他数据点可能与第 10 个最近的邻居在距离方面有关联。我想知道是否有任何有效的方法可以找到任何其他点,这些点可能在距离方面与第 k 个最近邻相关?
【问题讨论】:
标签: python algorithm pandas numpy scikit-learn
我目前正在使用 sklearn 从数据集中计算所有 k 最近邻。说 k = 10。我遇到的问题是 sklearn 将只返回 10 个最近的邻居,并且没有其他数据点可能与第 10 个最近的邻居在距离方面有关联。我想知道是否有任何有效的方法可以找到任何其他点,这些点可能在距离方面与第 k 个最近邻相关?
【问题讨论】:
标签: python algorithm pandas numpy scikit-learn
理论上,集合中的所有点都可能打成平手,从而使问题变得不同。事实上,K 最近的邻居可以在没有关系的情况下及时报告O(Log N + K),而关系可以暗示K = O(N) 做出任何解决方案O(N)。
在实践中,如果坐标是整数,则平局将是一种罕见的事件,除非问题具有特殊结构。而在浮点数中,绑定几乎是不可能的。
IMO,处理关系会降低效率,没有任何好处。
【讨论】: