我检查了 gensim、fasttext、sklearn 上的无监督聚类,但没有找到任何文档可以使用无监督学习对文本数据进行聚类,而无需提及要识别的聚类数量
例如在 sklearn KMneans 聚类中
km = KMeans(n_clusters=true_k, init='k-means++', max_iter=100)
我必须在哪里提供 n_clusters。
就我而言,我有文本,它应该自动识别其中的集群数量并对文本进行集群。非常感谢任何参考文章或链接。
我检查了 gensim、fasttext、sklearn 上的无监督聚类,但没有找到任何文档可以使用无监督学习对文本数据进行聚类,而无需提及要识别的聚类数量
例如在 sklearn KMneans 聚类中
km = KMeans(n_clusters=true_k, init='k-means++', max_iter=100)
我必须在哪里提供 n_clusters。
就我而言,我有文本,它应该自动识别其中的集群数量并对文本进行集群。非常感谢任何参考文章或链接。
DBSCAN是一种基于密度的聚类方法,我们不必事先指定聚类的数量。
sklearn实现:http ://scikit-learn.org/stable/modules/generated/sklearn.cluster.DBSCAN.html
这是一个很好的教程,可以直观地了解 DBSCAN: http: //mccormickml.com/2016/11/08/dbscan-clustering/
我从上面的教程中提取了以下内容,这可能对您有用。
k-means 需要指定簇的数量“k”。DBSCAN 不需要,但确实需要指定两个参数,这些参数会影响两个附近点是否应该链接到同一个集群中的决定。
这两个参数是距离阈值 ε(epsilon)和“MinPts”(最小点数),待解释。
还有其他方法(按照评论中给出的链接),但是,DBSCAN是一种流行的选择。