MOA CluStream:如何计算出k个均值后如何“命名”不位于任何宏集群内部的微集群?

问题描述 投票:0回答:1

我目前正在研究CluStream,对结果有一些疑问。我将继续解释:

如果将微簇聚簇使用K表示,我们都知道每个微簇都将属于最近的宏簇(计算中心之间的欧式距离)。

现在,查看以下示例结果:

enter image description here

我们可以看到宏集群没有将所有的微型集群归为一类……

这是什么意思?我们应该如何考虑不在某个宏集群内的微集群?我是否应该找到每个最接近宏的微簇来标记它们?

编辑:

检查MOA源代码 on Github,我发现计算宏簇半径将偏差AVG乘以所谓的“半径因子”(该值为固定为1.8)但是,当我询问宏簇的权重时,如果使用了巨大的时间窗口并且没有衰落分量,则可以看到宏簇恢复了所有点的信息... 当前所有的微型集群都被考虑在内!因此,即使我们看到一些微团簇都不在宏团簇范围内,我们也知道它们属于最接近的微团簇-毕竟是K表示!

所以,我还有一个问题:为什么要这样计算宏簇半径?我的意思是,它代表什么? 算法是否应该返回标记的微簇?

欢迎任何反馈。 TIA!

stream cluster-analysis k-means moa
1个回答
0
投票

关键问题是:用户需要什么?

标记微型集群还可以,但用户可以在哪里使用?

[在大多数情况下,人们使用k均值的结果就是聚类中心。因为k均值的整个目标实质上是“找到数据的最佳k点近似值”。

很可能CluStream的所有信息用户都将使用k个当前的群集中心。也许每个的重量,以及它们的年龄。

© www.soinside.com 2019 - 2024. All rights reserved.