Python 基于距离矩阵的词聚类
我的目标是根据单词与文本文档语料库的相似程度对单词进行聚类。我计算了每对单词之间的相似度。换句话说,我有一个稀疏的距离矩阵。有人能告诉我任何以距离矩阵为输入的聚类算法(可能还有它的Python库)吗?我事先也不知道集群的数量。我只想对这些单词进行聚类,并获取哪些单词被聚类在一起。scipy聚类软件包可能有用()。该模型具有层次聚类功能。但是请注意,这些需要一个压缩矩阵作为输入(距离矩阵的上三角)。希望文档页面能帮助您。您可以使用scikit中的大多数算法,通过预计算的距离矩阵进行学习。不幸的是,对于许多算法,您需要集群的数量。 它是唯一一个不需要簇数并且还使用任意距离矩阵的簇。 您也可以尝试,但这会将距离解释为坐标-这也可能有效 也有,但我还没有看到它真的很好地工作。但是,如果您需要多个集群,这可能会有所帮助Python 基于距离矩阵的词聚类,python,cluster-computing,scikit-learn,hierarchical-clustering,Python,Cluster Computing,Scikit Learn,Hierarchical Clustering,我的目标是根据单词与文本文档语料库的相似程度对单词进行聚类。我计算了每对单词之间的相似度。换句话说,我有一个稀疏的距离矩阵。有人能告诉我任何以距离矩阵为输入的聚类算法(可能还有它的Python库)吗?我事先也不知道集群的数量。我只想对这些单词进行聚类,并获取哪些单词被聚类在一起。scipy聚类软件包可能有用()。该模型具有层次聚类功能。但是请注意,这些需要一个压缩矩阵作为输入(距离矩阵的上三角)。希望文档页面能帮助您。您可以使用scikit中的大多数算法,通过预计算的距离矩阵进行学习。不幸的是,
披露:我是一名scikit学习核心开发人员。建议大家看一看聚合集群。看一看,“-最大化算法”还有@Moj,我很抱歉……我似乎不知道你提到的链接中包含的信息在这里是如何相关的(EM)该算法是一种迭代方法,用于寻找统计模型中参数的最大似然或最大后验概率(MAP)估计,其中模型依赖于未观测到的潜在变量。EM迭代在执行期望(E)步骤之间交替进行,该步骤创建一个函数,用于使用当前估计值评估的对数似然期望。我猜这符合你的目标,因为你也不知道之前的集群数量。这是两个库(或实现)这个算法的数量。@Moj我希望类似于k-means或层次聚类的东西……我知道这需要事先知道聚类的数量……但我希望有办法计算出最佳聚类的数量。您提供了一个使用距离矩阵作为输入的scikit学习算法的示例?这里有一个:是sklearn中有一系列算法可以采用预先计算的距离矩阵吗?例如,我发现,虽然DBSCAN确实接受它,但一个非常类似的算法,光学却不接受。在凝聚中,“沃德”联系不起作用,而其他联系起作用。