sklearn.metrics.silhouette_samples

sklearn.metrics.silhouette_samples(X, labels, *, metric='euclidean', **kwds)

源码

计算每个样本的轮廓系数。

轮廓系数是衡量样本与自身相似的样本聚类程度的方法。具有高轮廓系数的聚类模型被认为是密集的,其中同一聚类中的样本彼此相似,并且很好地分离,其中不同聚类中的样本彼此不太相似。

使用每个样本的平均集群内距离(a)和平均最近集群距离(b)计算轮廓系数。样本的轮廓系数为(b-a)/ max(a,b)。请注意,仅当标签数为2 <= n_labels <= n_samples-1时,才定义轮廓系数。

此函数返回每个样本的轮廓系数。

最佳值为1,最差值为-1。接近0的值表示重叠的群集。

用户指南中阅读更多内容。

参数 说明
X array [n_samples_a, n_samples_a] if metric == “precomputed”, or, [n_samples_a, n_features] otherwise
样本之间的成对距离或特征数组。
labels array, shape = [n_samples]
每个样本的标签值
metric string, or callable
计算特征阵列中实例之间的距离时使用的度量。如果metric是字符串,则它必须是sklearn.metrics.pairwise.pairwise_distances允许的选项之一。如果X是距离数组本身,则使用“预计算”作为度量。预先计算的距离矩阵沿对角线必须为0。
**kwds optional keyword parameters
任何其他参数都直接传递给距离函数。如果使用scipy.spatial.distance度量,则参数仍取决于度量。有关用法示例,请参见scipy文档。
返回值 说明
silhouette array, shape = [n_samples]
每个样本的轮廓系数。

参考

1 Peter J. Rousseeuw (1987). “Silhouettes: a Graphical Aid to the Interpretation and Validation of Cluster Analysis”. Computational and Applied Mathematics 20: 53-65.

2 Wikipedia entry on the Silhouette Coefficient

sklearn.metrics.silhouette_samples应用示例