【发布时间】:2018-12-21 13:06:06
【问题描述】:
我想使用 sklearns k-means 聚类功能对鸢尾花数据集(虽然我删除了标签,所以它现在是未标记的数据)进行分类。我已经制作了预测模型,并且输出似乎在大多数情况下对数据进行了正确分类,但是它随机选择标签(0、1 和 2),我无法将其与我自己的标签进行比较以确定准确性(我已将 setosa 标记为 0,versicolor 标记为 1,virginica 标记为 2)。有什么方法可以正确标注花吗?
代码如下:
from sklearn.cluster import KMeans
cluster = KMeans(n_clusters = 3)
cluster.fit(features)
pred = cluster.labels_
score = round(accuracy_score(pred, name_val), 4)
print('Accuracy scored using k-means clustering: ', score)
features,正如预期的那样包含特征,name_val 是包含花值的矩阵,0 代表 setosa,1 代表杂色,2 代表维吉尼亚
编辑:我想出的一个解决方案是将 random_state 设置为任意数字,以便标签保持不变,还有其他解决方案吗?
【问题讨论】:
-
k-means 不是分类器。您想在这里实现什么目标?
标签: python scikit-learn k-means