问题标签 [elki]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
452 浏览

data-mining - ELKI 数据生成器和异常值

我想对 LOF 进行测试,展示它如何很好地管理数据集的密集稀疏问题。在 ELKI 数据生成器的教程中,我展示了如何使用 4 个集群从这样的 xml 文件制作数据集:

但是我如何控制异常值。ELKI 工具希望为异常值使用少数标签以显示 ROCAUC 曲线。而我从xml文件中得到的文件只是数据集中的一个点文件。

然后我应该制作一个情节并自己识别异常值并在它们后面加上是或否来说明它们是否是异常值并将少数标签设置为是,是异常值还是有更简单的方法?

0 投票
2 回答
137 浏览

arff - ELKI 0.6.5 或 0.6.0 中的 ARFF 解析

我想使用最新版本的 ELKI,但我收到导致 nullpointerexeptions 的错误,并且该任务失败。使用 0.6.0 时,它工作正常。

这是一些玩具 arff 数据:

但我在 0.6.5 中失败了:

在 0.6.0 中,这似乎只是一个警告: Invalid quoted line in input: no closing quote found in: @ATTRIBUTE 'outlier' {'no','yes'}它仍然会产生 ROCCURVE。

我应该担心吗?我应该更改我的 arff 文件吗?如何更改?

0 投票
1 回答
83 浏览

arff - ELKI 和 ARFF 文件

我将我的结果与结果库进行比较,但不断得到与结果库不同的结果,即使我有他们的数据。

我想知道是否很难获得相同的结果以及为什么,可能是因为他们从 java 程序中调用了它,而我在 GUI 中使用 ARFF 文件进行了操作,这应该很麻烦,目前还没有开发。

我的问题是 - 由 ELKI 制作的 AUCROCcurve 的结果 - 如果我从 java 程序调用它而不是像现在从 GUI 调用它,结果会有所不同。我想得到精确的结果,并且知道我做得对。

0 投票
1 回答
94 浏览

data-mining - ELKI GUI 输出和参数 k (LOF)

我怀疑:在以下输出中实现k 个最近邻(k=3) 。

ELKI GUI 的详细输出,运行 LOFalgorithm, lof.k=2

这是否意味着当我设置 lof.k=2 时,ELKI 会查看点的 3nn?

0 投票
1 回答
275 浏览

parsing - ELKI CSV 解析器问题

我已在 Weka 的工具中将 .arff 文件更改为 .csv 文件。但是现在我不能在 ELKI 中使用 arffparser 作为解析器。

然后我应该使用什么解析器?默认值为 NumberVectorLabelParser。但它给了我一个 ArrayIndexOutOfBoundsException:

我的 .csv 文件如下所示:

有 11 个解析器可用。但也许是我的数据,对于解析器来说太大了。

0 投票
1 回答
122 浏览

data-mining - elki-cli 与 elki gui,我没有得到相同的结果

虽然 ubuntu 上的终端:

给予 # ROCAUC: 0.6230046948356808

在 ELKI 的 GUI 中:

我不明白为什么 2 ROCAUCcurves 不一样。

我测试这个的目标是对我的结果感到满意,我所做的事情是正确的,但是当我没有得到匹配的结果时很难。当我看到我的设置正确时,我将继续进行自己的实验,这是我可以信任的。

0 投票
1 回答
631 浏览

java - 如何在 ELKI 中使用现有数据

这几天我一直在寻找最合适的密度聚类工具并决定尝试一下 ELKI。对于 DBSCAN,我成功地重现了对文件“3clusters-and-noise-2d.csv”进行聚类的测试,并且还设法通过来自 github 的 ELKI 代码打印了每个集群中的集群元数据和点(最新版本)在 java 中(我对 cli 或 ui 工具并不感兴趣)。

现在,我想使用某种内部 java 结构来创建数据库,而不是通过文件导入以减少写入和读取开销。

在提供的示例中,我能够做到这一点,但仅限于文件的第一列。

我的问题基本上是,当Java中已经存在相同的数据时,如何创建通过文件创建的相同数据库?

知道了!

所以经过一些调整后,基本上你所做的是使用二维数组,其中每一行代表一个点,并且你的列数与你的维度一样多......要在不读取文件的情况下创建数据库,你基本上使用 ArrayAdapterDatabaseConnection 如下:

我已经使用“3clusters-and-noise-2d.csv”数据集对此进行了测试,并且可以确认当我通过文件或 arrayadapter 传递它们时得到相同的结果。

0 投票
1 回答
215 浏览

indexing - 将 PH-Tree 添加到 ELKI

我正在考虑将 PH 树添加到 ELKI。我找不到任何示例教程,而且目前内部架构对我来说并不完全清楚。

  1. 你认为将 PH-tree 添加到 ELKI 中有意义吗?
  2. 那要付出多大的努力?
  3. 我能得到一些帮助吗?
  4. 只实现内存版本是否有意义,就像对 kd-tree 所做的那样(据我所知)?

一些上下文:PH-tree 是在 SIGMOD'14 上发布的空间索引:论文,Java 源代码可在此处获得。它有点类似于四叉树,但空间效率更高,不需要重新平衡并且可以很好地扩展维度。PH-tree 与 R*-Tree 实现的不同之处在于没有叶子/内部节点的概念,并且节点不会直接映射到页面。它也适用于随机插入/删除(不需要批量加载)。

0 投票
1 回答
215 浏览

data-mining - ELKI,输出:ROCAUC,Precision@k,f1.maximum

在异常情况下,Precision @ k 用于什么?(当我在同一个数据集上改变 k 时,我总是得到:Precision @ 3016而我不知道 ELKI 从哪里得到这个数字,异常值的数量是 1508)

精度.平均和精度.r?

和 f1.maximum?

我知道 ROCAUC 是衡量算法将异常值标记为异常值以及将正常值标记为正常对象的程度的度量。

我想看看异常值检测的质量是否良好。我也可以通过其他措施来做到这一点吗?

0 投票
1 回答
47 浏览

data-mining - ELKI,DBOutlierDetection 算法:d 是什么度量?

你能告诉我参数 d 在 DBOutlierDetection 算法(或 DBOutlierScore)中的哪个度量?厘米?毫米?

我必须以某种方式将参数 d 下的区域与 LOF 的 k 进行比较。