轮廓系数(一个异型簇的分类标准)

定义

轮廓系数是"簇内紧密性" 和 "簇间分离度" 量化聚类效果,取值范围为 [-1, 1],越接近 1 表示聚类质量越好。

簇内紧密性:指的该样本到同簇内距离的平均值

簇间分离度:指的是最小化(该样本到每个异簇的距离的平均值)

公式

弹性网络损失函数

ElasticNet融合L1和L2惩罚,损失函数为:

样本 i 的轮廓系数 } s 公式为

s= \\begin{cases} 1 - \\dfrac{a_i}{b_i}, \& \\text{若 } a_i \< b_i \\ (\\text{簇内紧、簇间远,聚类好}) \\\\ 0, \& \\text{若 } a_i = b_i \\ (\\text{簇内与簇间距离相当,聚类一般}) \\\\ \\dfrac{a_i}{b_i} - 1, \& \\text{若 } a_i \> b_i \\ (\\text{簇内松、簇间近,聚类差}) \\end{cases}

个人理解核心目标是最小化紧密型 最大化分离度

根据这个目标推算公式

全局轮廓系数就是所有轮廓系数的平均值

复制代码
from sklearn.metrics import silhouette_samples,silhouette_score
    score = silhouette_score(X, cluster_labels)  # 计算全局轮廓系数


  # 4.3 计算所有样本的轮廓系数(包括新样本)
    sample_silhouettes = silhouette_samples(X_combined, labels_combined)
    # 4.4 提取新样本的轮廓系数(最后一个元素)
    new_sample_score = sample_silhouettes[-1]

总结

首先轮廓系数是可以作为聚类算法的评估指标,同样也可用二分法在大数据上进行优化

相关推荐
冬奇Lab10 小时前
Workflow 系列(03):状态管理——持久化、幂等性与版本绑定
人工智能·工作流引擎
冬奇Lab10 小时前
每日一个开源项目(第146篇):openpilot - 开源自动驾驶辅助系统,曾在 Consumer Reports 评测中超过特斯拉 Autopilot
人工智能·开源·自动驾驶
吴佳浩12 小时前
AI 工程师知识地图:模型格式、框架、部署工具一次讲明白
人工智能·aigc·ai编程
IT_陈寒12 小时前
Java的Date类又坑了我一次,改用时间戳真香
前端·人工智能·后端
码农胖大海12 小时前
AI额度不够用的解决方案
人工智能
后端小肥肠13 小时前
小红书虚拟商品怎么做?我先用 Skill 跑通了壁纸品类
人工智能·aigc·agent
feiyu_gao13 小时前
从零搭建个人 AI 工作台:一个管理者的 3 个月实验
人工智能·aigc·团队管理
先吃饱再说13 小时前
判断回文字符串,从一行代码到双指针优化
算法
程序员cxuan14 小时前
一句话,让你用上 GPT-5.6
人工智能·后端·程序员