聚类评估算法-轮廓系数(Silhouette Coefficient )

轮廓系数 是用来 判断 “聚类效果”的 一个指标。

轮廓系数的核心思想是判断:类间距离 与 类内距离 的相对大小,如果 类间距离 > 类内距离,则说明 聚类结果好,反之,则不好。

轮廓系数 的 这种思想 与 “Fisher线性判别”很相似,都是判定 “类间距离” 与 “类内距离” 的相对大小。不同的是,轮廓系数 是用来 衡量“聚类结果”好坏的,而Fisher线性判别中“类间,类内距离比较”是 用来“将原始维度数据 降到 一维线性空间”的,这种降维行为有一个前提,即:使得 各类别之间 能够在 降维后的 空间 被很好的 区分开来。
参考博文:聚类评估算法-轮廓系数(Silhouette Coefficient )

### 使用轮廓系数评估密度峰值聚类效果 对于密度峰值聚类算法轮廓系数提供了一种量化簇分离质量的方法。该指标通过计算每个样本到其所在簇内其他成员的距离平均值以及到最近邻簇成员距离的平均值来衡量集群的质量[^1]。 具体而言,在应用密度峰值聚类之后: - 对于每一个数据点 \( i \),定义两个量: - \( a(i) \): 数据点 \( i \) 到同一簇中所有其它点之间的平均距离; - \( b(i) \): 数据点 \( i \) 到下一个最近簇中的所有点之间最小的平均距离; - 计算单个观测的轮廓分数 \( s(i) \): \[s(i)=\frac{b(i)-a(i)}{\max(a(i),b(i))}\] 当 \( s(i)\approx 1 \) 表明此点很好地被分配到了合适的簇里;而如果 \( s(i)<0 \),则意味着这个点可能更应该属于另一个簇。最终整个模型的好坏可以通过求解所有个体得分的均值得出整体评价标准。 为了实现这一过程,可以采用如下 Python 代码片段来进行操作: ```python from sklearn.metrics import silhouette_score import numpy as np def evaluate_density_peak_clustering(data, labels): """ Evaluate density peak clustering using Silhouette Coefficient. Parameters: data (array-like): The input samples with shape (n_samples, n_features). labels (array-like): Predicted labels for each sample. Returns: float: Mean Silhouette Coefficient of all samples. """ # Ensure that there are at least two clusters to compare unique_labels = set(labels) if len(unique_labels) < 2 or any(label == -1 for label in unique_labels): raise ValueError("At least two non-noise clusters must exist.") score = silhouette_score(data, labels) return score if __name__ == "__main__": # Example usage X = [[...], [...]] # Input dataset here y_pred = [...] # Cluster assignments from Density Peak Clustering algorithm result = evaluate_density_peak_clustering(X, y_pred) print(f"The mean Silhouette Score is {result:.3f}") ``` 上述函数 `evaluate_density_peak_clustering` 接受输入的数据集及其对应的标签作为参数,并返回这些数据的整体轮廓系数评分。需要注意的是,只有当存在至少两个有效(即不是噪声)的簇时才能计算有效的轮廓系数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值