Python文本集群软件或包

Python文本集群软件或包,python,cluster-analysis,nltk,Python,Cluster Analysis,Nltk,对于我的项目,我需要对一些文本(英文文本)进行聚类。我对任何像或这样的聚类算法都没有意见。唯一的问题是,我还需要由软件命名集群,以便文本的集群具有不同的名称 这可能吗?是的。有一种软件可以命名集群 cluster_1 cluster_2 cluster_3 cluster_4 认真地您希望集群名称是什么?是否从聚集的文章中自动生成摘要?文本摘要的扩展还不是很好。但是您可以尝试通过文本摘要引擎运行整个集群 请注意,k-means将生成相当人工的簇。它不知道也不关心话题。它只是优化了数学方差,这对

对于我的项目,我需要对一些文本(英文文本)进行聚类。我对任何像或这样的聚类算法都没有意见。唯一的问题是,我还需要由软件命名集群,以便文本的集群具有不同的名称


这可能吗?

是的。有一种软件可以命名集群

cluster_1
cluster_2
cluster_3
cluster_4
认真地您希望集群名称是什么?是否从聚集的文章中自动生成摘要?文本摘要的扩展还不是很好。但是您可以尝试通过文本摘要引擎运行整个集群


请注意,k-means将生成相当人工的簇。它不知道也不关心话题。它只是优化了数学方差,这对文本数据可能不是很有用。

您可以做的是:使用现成的聚类算法对单词进行聚类,然后运行一些算法检查每个聚类,以找到以某种方式表示该聚类的单词。有很多选择,但首先想到的是在集群和每个术语之间做一个比较,然后选择具有最高测试统计值的术语。

不完全清楚您的目标是什么,或者您的数据是什么。(每篇文章的字数列表?还有别的吗?)

首先,我建议将数据收集/准备与分析分开。特别是,您需要一个带有预定义集群实现的包,该实现使探索性分析成为可能,而直接的代码实现通常有点过于简单。考虑使用具有集成可视化和数据呈现能力的东西来帮助您更好地理解集群的含义:预定义包(如统计软件)、Matlab或(基于Python的数据挖掘套件)都是不错的选择。p>
Orange有很多非常好的GUI选项来控制如何选择集群(距离度量、迭代等),它还提供了一些不同的方法来探索哪些集群最有用。然而,至少在一年前,我的经验是,在中型(800MB)数据集上,k-means集群的实现速度慢得可笑。其中一部分原因是python天生比其他语言慢,但我怀疑还有其他问题。无论您使用什么,您都需要仔细查看输入文件文档。

您希望使用什么类型的名称。我的意思是,如果我给出一些与投资相关的文本,那么它本身就被归类为投资。我没有这方面的经验,但是
Nltk
有一个软件包。