machine-learning - 确定分层集群中的组

标签 machine-learning hierarchical-clustering

我有一个算法,可以将数据分组到层次聚类树中。该算法是托比·西格拉姆 (Toby Seagram) 的《集体智慧编程》(Programming Collective Intelligence) 中描述的算法。树的输出是一个二叉树,每个节点都有一个“距离”值,它告诉您两个子节点相距多远。

然后我可以将其显示为树状图,这使得人类可以很容易地将值分组在一起。然而,我很难想出一种自动决定分组应该是什么的算法。我希望能够自动确定:

  • 群组数量
  • 每组应放置哪些点

有标准算法吗?

最佳答案

我认为没有默认的方法可以做到这一点。简单的“手动”方法是:

  • 指定您想要/期望的集群数量
  • 设置两个节点之间最大距离的阈值;距离较大的任何节点都属于另一个集群

有一些自动方法来determine the number of clustersRDynamic Tree Cut package它会自动处理这个问题,也 pvclust可用于。这里描述了另外两种处理此问题的方法,Salvador (2002)Daniels (2006) .

关于machine-learning - 确定分层集群中的组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12237001/

相关文章:

python - 将 scipy 稀疏 csr 转换为 Pandas ?

python-3.x - TensorFlow - 简单前馈神经网络未训练

python - Scipy 树状图的简单着色

matlab - 在 MATLAB 中对连通正方形进行聚类

具有缺失值的Python层次聚类

machine-learning - 是否可以将支持向量机与凝聚聚类器结合使用?

python-3.x - 如何使用 Tensorflow 对象检测 API 定义自己的模型

python - sklearn 中 DecisionTreeRegressor 的自定义标准

machine-learning - 交叉验证后如何获得支持向量数

python - 使用相似度函数对 scikit-learn 进行聚类