在GUI中使用Weka Package Manager在Weka中安装OPTICS_DBSCAN包后,我可以使用GUI运行算法。但是在使用命令行界面时,会抛出错误说明以下内容。
Error: Could not find or load main class weka.clusterers.DBSCAN
我从GUI本身复制了命令,但不明白错误是什么。以下是命令。
java weka.clusterers.DBSCAN -E 0.9 -M 6 -A "weka.core.EuclideanDistance -R first-last" -t "ARFF_Files/Jain.arff"
任何想法可能是什么问题?
PS:我已经尝试过将DBSCAN和DBScan作为名称,因为我看到网上有两个变种。答案 0 :(得分:2)
DBSCAN的正确拼写都是大写的,但Weka课程的命名方式很长。
您需要将.jar
添加到类路径中。 Weka引入了这个扩展系统,但命令行不会自动加载您在GUI中安装的扩展。您需要自己设置Java类路径。
请使用ELKI代替Weka。您会注意到它是 lot 更快,特别是当您启用数据索引时。此外,ELKI还有更多的聚类算法和完整的OPTICS。如果我没记错的话,Weka的OPTICS没有Xi提取。在我们的实验中, Weka是基准测试最慢的实现之一(唯一较慢的实现是R' fpc
包):
Kriegel,H。P.,Schubert,E。,& Zimek,A。(2017)。
The (black) art of runtime evaluation: Are we comparing algorithms or implementations?
知识与信息系统,52(2),341-378。
最快的工具将使用索引将1.5(低级优化的C ++)中的数据集群到7秒(Java)。 Weka花了1100秒。这个数据集的速度慢了100多倍。