【问题标题】:How to evaluate clustering algorithm in python?如何评估python中的聚类算法?
【发布时间】:2021-05-13 21:00:02
【问题描述】:

我的数据有 61 行和 56 列。 我已经测试了几种聚类算法,稍后我将对其进行评估,但我发现了一些问题。我只是成功地应用了轮廓系数。 我使用此代码执行了 K 均值聚类:

kmean = KMeans(n_clusters=6)
kmean.fit(X)
kmean.labels_
#Evaluation
silhouette_score(X,kmean.labels_)
 ==>0.09231070598844496

我想尝试更多测量,例如:

metrics.homogeneity_score,
metrics.completeness_score,
metrics.v_measure_score,
metrics.adjusted_rand_score,
metrics.adjusted_mutual_info_score,

我想评估我的聚类。我不知道怎么做。 labels_truelabels_pred 是什么意思?如何使用 sklearn 评估指标?

【问题讨论】:

  • labels_true 表示实际标签,labels_pred 表示您的模型认为它是什么。
  • 感谢您的回答!当我想作为一个例子来尝试adjusted_rand_score时,参数是什么!
  • 在文档中可以看到:scikit-learn.org/stable/modules/generated/…,同理:adjusted_rand_score(labels_true, labels_pred)
  • 在我的代码中是:labels_true = X ,labels_pred=kmean.labels_ ?感谢您的帮助
  • @ab20225 在 cmets 中发布代码很难阅读。您应该编辑您的问题。

标签: python machine-learning scikit-learn cluster-analysis


【解决方案1】:

labels_true:真实值/实际标签

labels_pred:使用聚类模型预测的标签

例如:

labels_pred = clustering_model.predict(model_df.values)

以下所有指标都需要基本事实,而不是内部指标:

metrics.homogeneity_score,
metrics.completeness_score,
metrics.v_measure_score,
metrics.adjusted_rand_score,
metrics.adjusted_mutual_info_score,

你可以试试silhouette_scorecalinski_harabasz_scoredavies_bouldin_scoredunn_index

【讨论】:

    猜你喜欢
    • 2017-07-26
    • 2012-02-24
    • 2017-06-08
    • 2015-07-29
    • 2021-06-10
    • 2011-02-25
    • 2018-06-07
    • 2018-10-14
    • 2017-03-15
    相关资源
    最近更新 更多