我一直在寻找如何有效地实现用于描述层次聚类的树状图。当前,我使用正则表达式进行解析并将其显示为树状结构,如下所示。

[[2,1],[3]]


这意味着有三个文档,级别1包含两个群集,一个群集包含文档2和1,另一个群集仅包含文档3。
当我们在特定级别切割树状图后得到簇。剪切所示的正则表达式很困难,而且并不总是能给出适当的簇。

我们应该使用哪种数据结构和表示形式,以便从树状图获取聚类相对容易。

最佳答案

您可能要使用SLINK算法使用的指针表示。

这很简单:对父对象的引用,以及它们连接簇的距离。

在这里

2 parent 1   height 1
1 parent 3   height 2
3 parent nil height inf


要提取群集,只需删除连接高度过高的所有边。

关于machine-learning - 树状图要使用什么数据结构?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22188989/

10-13 03:06