【问题标题】:Get n closest neighbors to each point in a dataset using KNN in Weka在 Weka 中使用 KNN 获取数据集中每个点的 n 个最近邻
【发布时间】:2018-09-17 18:04:00
【问题描述】:

我有一个数据集,假设有 1000 条记录(点)。对于数据中的每个点,我希望获得与该点最近的 N 个邻居,并使用这些邻居(不包括该点)建立一个模型。我需要一个 for 循环来执行此操作,并且我必须在 Weka 中执行此操作。如何获得到 Weka 中每个点的 N 个最近邻居?

【问题讨论】:

  • 大概,您正在编写代码,而不是使用 GUI。你的代码是什么语言的?爪哇?
  • @G5W 感谢您的回答。因为我需要一个即时的解决方案,所以我在 python 中编写了代码来执行这个......没有 Weka。只是纯python。

标签: for-loop classification weka knn nearest-neighbor


【解决方案1】:

要查找 k 近邻,请使用 weka 类:

最近邻搜索

其中有一个名为

的方法

kNearestNeighbours(实例目标,int k)

其中 target 是您要查找 N 近邻的实例,而 k 这里是 N。此方法的返回类型是 Instances,因此您将获取您最近的 N 个邻居。

read more about this class here

【讨论】:

  • 谢谢。我需要为超过 100,000 个实例执行此操作。所以我需要一种机制,使我能够遍历它们。知道如何在 Weka 中做到这一点吗?
  • 是的。只需遍历循环中的所有实例,每个实例都使用该 kNearestNeighbour(...) 方法。然后使用该方法返回的实例来构建您的模型
  • 这实际上是一个问题......我该怎么做?如何在 Weka 中编写 for 循环?
  • @G5W 是我上面的问题吗?
  • 抱歉,不,我是为 geek2000 准备的。我会移动评论。
猜你喜欢
  • 2019-03-09
  • 2014-03-16
  • 1970-01-01
  • 2011-09-27
  • 1970-01-01
  • 2022-10-04
  • 1970-01-01
  • 2019-05-16
  • 2011-07-03
相关资源
最近更新 更多