from sklearn.metrics import silhouette_score # 获取kmeans模型对象的轮廓系数
时间: 2024-10-15 09:06:42 浏览: 41
机器学习模型评估-sklearn中的评估函数
`from sklearn.metrics import silhouette_score` 这行代码是在Python中使用scikit-learn库计算K-Means聚类结果的质量指标。`silhouette_score`函数是一个评估聚类效果的重要工具,它基于每个样本点的轮廓系数(Silhouette Coefficient)来衡量其对所属簇的相似度与与其他簇的距离之间的平衡。
轮廓系数范围从-1到1,其中1表示样本非常接近自己的簇且远离其他簇,0表示样本处于两个簇之间,-1则表示样本可能被错误地分配到了簇外。通过这个系数,你可以了解聚类的凝聚程度和分离度是否合适。
当你有了KMeans模型(`model`)并且对其进行了聚类之后,可以像下面这样使用`silhouette_score`:
```python
X_clustered = model.fit_predict(X) # 对数据集X进行聚类
score = silhouette_score(X Clustered, labels) # X_clustered是聚类后的结果,labels可能是原始数据的标签
```
这里`X_clustered`是预测的簇标签数组,`labels`通常是你期望的簇标签(如果你有),如果没有,则可以忽略,因为`fit_predict`会自动提供簇标签。最后,`score`就是所求的轮廓系数。
阅读全文