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] 每個樣本的輪廓系數。 |
參考