Java 中的聚类地理数据

clustering geographic data in Java

我的目标是使用机器学习库,以便可以聚类点 (Lat/Long) 和 (x, y)。我想使用 API 允许我在不同的聚类算法之间轻松切换。

我开始使用 Java-ML http://java-ml.sourceforge.net/content/clustering-basics 并且我能够使教程正常工作,但我不知道如何创建地理点实例。我是否必须扩展 net.sf.javaml.core.AbstractInstance 才能使其正常工作?只能创建两种实例类型 'SparseInstance' 和 'DenseInstance'.

然后我发现 Elki 并且有人用它来聚类地理数据 Running DBSCAN in ELKI 但我不想使用 gui 我只想 运行 来自 java class.

非常感谢任何建议/参考。

您可以查看 ELKI 源代码树中的单元测试,例如在

http://elki.dbs.ifi.lmu.de/browser/elki/elki/src/test/java/de/lmu/ifi/dbs/elki/distance/distancefunction/SpatialPrimitiveDistanceFunctionTest.java

http://elki.dbs.ifi.lmu.de/browser/elki/elki/src/test/java/de/lmu/ifi/dbs/elki/algorithm/clustering/optics/TestOPTICSListResults.java

我不知道你到底需要完成什么。无论如何,也许您会在 "src/test" dirtree 的其他子目录中找到一些合适的代码示例。这些可以作为起点。

请注意,除了教程之外,我也没有太多使用 ELKI。只是说"Looking at the Unit Tests in Order to Understand Code"是一个总攻略

ELKI 有文档。请查看 Java文档和 Wiki。

特别是:

从Java告诉你如何使用它,以及如何将它应用到地理数据。

如果您发现文档中有过时的部分,欢迎您发送电子邮件帮助更新到最新版本。