- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我使用 elki 时,如何获取 kmeans (llyod) 集群中的数据点和质心?
我还可以将这些点插入距离函数之一并获取任意两个点之间的距离吗?
这个问题是不同的,因为我的问题的主要焦点是检索数据点,而不是自定义数据点。另外,另一个线程上的答案目前还不完整,因为它指的是目前无法运行的维基。此外,我想具体知道需要做什么,因为所有库的文档都有点像白费力气,如果您知道/理解该库,您将直接与回答这样其他有同样问题的人也可以有一个很好的引用资料来引用,而不是试图找出库。
最佳答案
一个Cluster
(JavaDoc) 在 ELKI 中从不存储点数据。它只存储点DBIDs
(Wiki),您可以使用 getIDs()
方法获取。要获取原始数据,您需要Relation
从您的数据库中。 getModel() 方法返回集群模型,对于 kmeans 来说是 KMeansModel
.
您可以通过其DBID
从数据库Relation
中获取点数据,或根据两个DBID
计算距离。
KMeans 的质心很特殊 - 它不是数据库对象,而始终是一个数值 vector - 簇的算术平均值。使用 KMeans 时,您应该使用 SquaredEuclideanDistanceFunction
。这是NumberVectorDistanceFunction
,它具有方法 distance(NumberVector o1, NumberVector o2)
(并非所有距离都适用于数字 vector !)。
Relation<? extends NumberVector> rel = ...;
NumberDistanceFunction df = SquaredEuclideanDistanceFunction.STATIC;
... run the algorithm, then iterate over each cluster: ...
Cluster<KMeansModel> cluster = ...;
Vector center = cluster.getModel().getMean();
double varsum = cluster.getModel().getVarianceContribution();
double sum = 0.;
// C++-style for loop, for efficiency:
for(DBIDRef id = cluster.getIDs().iterDBIDs(); id.valid(); id.advance()) {
double distance = df.distance(relation.get(id), center);
sum += distance;
}
System.out.println(varsum+" should be the same as "+sum);
关于java - ELKI获取聚类数据点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35758909/
我尝试从多个 csv 文件中获取数据。我使用 ConcatenateFilesDatabaseConnection 进行数据库 Database getDbFromFiles(List files)
我正在尝试使用 ELKI ( http://elki.dbs.ifi.lmu.de/#GettingELKI:DownloadandCitationPolicy ) 但无法找到 Maven 依赖项。有
我想在 ELKI 中使用 dbscan 算法(而不是在 GUI 上)。请给我一些例子,包括加载数据、运行算法、显示结果? ELKI 的文档没有任何示例。 最佳答案 使用例子在 https://elki
我想绘制聚类结果的树状图。现在我正在使用 ELKI 0.7.5 中的 ElkiBuilder 进行集群。 在最好的情况下,我想直接绘制树状图。 如果不可能,我想从聚类中提取信息(距离)以使用另一个库(
我想使用 ELKI 中的 OPTICS 算法对 100,000 个点进行聚类。对于这个点集,我有一个包含大约 50 亿个条目的上三角距离矩阵。按照ELKI想要的矩阵格式,大约需要100GB的内存。我想
我是新来的,ELKI 也是新来的。这就是我正在尝试做的事情: 我有一个实例列表 MyInstance,其中包含数字和分类变量,例如 {int xpto;字符串客户; int 另一个,...} 我需要针
我正在从事一个研究项目,该项目涉及以可视化方式显示许多聚类结果的结果。我看到集群类总是带有自己的参数化静态类。 是否有可能以某种方式实例化所有带有预定义参数设置的 elki 算法? 非常感谢! 最佳答
我尝试在官方网站 (mouse.csv) 上提供的示例数据集上运行 COPAC ELKI 实现,但我得到一个 NullPointerException,这让我认为我忽略了一些细节(我感到羞耻)。 异常
我正在使用 ELKI 数据挖掘软件进行异常值检测。它有许多异常值检测技术,但都提供相同的结果(所有技术的异常值相同,唯一的区别在于点周围的圆圈大小,如下图所示)。我使用 ELKI 网站上提供的鼠 he
我有一个距离矩阵,我想在对数据进行聚类时使用该距离矩阵。 我已阅读 ELKI 文档,它指出我可以在扩展 AbstractNumberVectorDistanceFunction 类时覆盖 distan
我需要以编程方式使用 ELKI 来运行 k-medoids 聚类算法。我有一个相似度矩阵,我希望输入到算法中。 是否有任何代码片段可用于如何运行 ELKI 算法? 我基本上需要知道如何创建 Datab
这些是报价单http://elki.dbs.ifi.lmu.de/ : "本质上,我们将抽象距离查询绑定(bind)到一个数据库,然后对这个距离进行最近邻搜索。此时,ELKI会自动选择最合适的kNN查
我需要实现一个自定义的 ResultHandler,但我对如何将我的自定义类实际集成到软件包中感到困惑。 我读过这个:http://elki.dbs.ifi.lmu.de/wiki/HowTo/Inv
我正在使用ELKI使用OPTICSXi以分层方式将地理位置数据集聚类。 算法执行的结果是一组文件。 文件的内容可以是: # Cluster: nameOfCluster # OPTICSModel #
我正在使用 ELKI 的 DBSCAN 实现来聚类不同大小的不同数据集(从数百万到数千个观测值),并且由于当我运行该算法时,不同的数据集可能需要相当长的时间,我想知道它是否以某种方式是否可以显示算法的
我是 ELKI 的新手,并且我已经成功调整了我想要运行的算法。我在 3K 坐标上使用它并且速度非常快 - 所以现在我尝试扩展到大约 1 MM 记录。现在我的运行速度为 30K,但已经几个小时了,它仍在
我似乎无法让这个算法在我的数据集上工作,所以我使用了数据的一个非常小的子集并尝试让它工作,但这也不起作用。 我想将预先计算的距离矩阵输入 ELKI,然后让它找到我的点的可达距离列表,但我得到的所有点的
我正在考虑将 PH 树添加到 ELKI。我找不到任何示例教程,而且内部架构目前对我来说还不是很清楚。 您认为将 PH 树添加到 ELKI 是否有意义? 需要付出多少努力? 我能得到一些帮助吗? 像 k
我已经开始使用ELKI进行数据分析,但是一件看似简单的事情我似乎做不到,那就是在运行DBSCAN后将计算出的簇的凸包输出到一个文件中。我可以通过可视化图形用户界面可视化凸包,但无法生成 KML 文件。
我在 ELKI 中使用 OPTICS 实现时遇到问题环境。我在 DBSCAN 实现中使用了相同的数据,它就像一个魅力。可能我错过了一些带有参数的东西,但我无法弄清楚,一切似乎都是正确的。 数据是一个简
我是一名优秀的程序员,十分优秀!