Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/302.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 基于距离矩阵的词聚类_Python_Cluster Computing_Scikit Learn_Hierarchical Clustering - Fatal编程技术网

Python 基于距离矩阵的词聚类

Python 基于距离矩阵的词聚类,python,cluster-computing,scikit-learn,hierarchical-clustering,Python,Cluster Computing,Scikit Learn,Hierarchical Clustering,我的目标是根据单词与文本文档语料库的相似程度对单词进行聚类。我计算了每对单词之间的相似度。换句话说,我有一个稀疏的距离矩阵。有人能告诉我任何以距离矩阵为输入的聚类算法(可能还有它的Python库)吗?我事先也不知道集群的数量。我只想对这些单词进行聚类,并获取哪些单词被聚类在一起。scipy聚类软件包可能有用()。该模型具有层次聚类功能。但是请注意,这些需要一个压缩矩阵作为输入(距离矩阵的上三角)。希望文档页面能帮助您。您可以使用scikit中的大多数算法,通过预计算的距离矩阵进行学习。不幸的是,

我的目标是根据单词与文本文档语料库的相似程度对单词进行聚类。我计算了每对单词之间的相似度。换句话说,我有一个稀疏的距离矩阵。有人能告诉我任何以距离矩阵为输入的聚类算法(可能还有它的Python库)吗?我事先也不知道集群的数量。我只想对这些单词进行聚类,并获取哪些单词被聚类在一起。

scipy聚类软件包可能有用()。该模型具有层次聚类功能。但是请注意,这些需要一个压缩矩阵作为输入(距离矩阵的上三角)。希望文档页面能帮助您。

您可以使用scikit中的大多数算法,通过预计算的距离矩阵进行学习。不幸的是,对于许多算法,您需要集群的数量。 它是唯一一个不需要簇数并且还使用任意距离矩阵的簇。 您也可以尝试,但这会将距离解释为坐标-这也可能有效

也有,但我还没有看到它真的很好地工作。但是,如果您需要多个集群,这可能会有所帮助


披露:我是一名scikit学习核心开发人员。

建议大家看一看聚合集群。

看一看,“-最大化算法”还有@Moj,我很抱歉……我似乎不知道你提到的链接中包含的信息在这里是如何相关的(EM)该算法是一种迭代方法,用于寻找统计模型中参数的最大似然或最大后验概率(MAP)估计,其中模型依赖于未观测到的潜在变量。EM迭代在执行期望(E)步骤之间交替进行,该步骤创建一个函数,用于使用当前估计值评估的对数似然期望。我猜这符合你的目标,因为你也不知道之前的集群数量。这是两个库(或实现)这个算法的数量。@Moj我希望类似于k-means或层次聚类的东西……我知道这需要事先知道聚类的数量……但我希望有办法计算出最佳聚类的数量。您提供了一个使用距离矩阵作为输入的scikit学习算法的示例?这里有一个:是sklearn中有一系列算法可以采用预先计算的距离矩阵吗?例如,我发现,虽然DBSCAN确实接受它,但一个非常类似的算法,光学却不接受。在凝聚中,“沃德”联系不起作用,而其他联系起作用。