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

定义

轮廓系数是"簇内紧密性" 和 "簇间分离度" 量化聚类效果,取值范围为 [-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]

总结

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

相关推荐
小鸡吃米…11 分钟前
机器学习 - K - 中心聚类
人工智能·机器学习·聚类
好奇龙猫1 小时前
【AI学习-comfyUI学习-第三十节-第三十一节-FLUX-SD放大工作流+FLUX图生图工作流-各个部分学习】
人工智能·学习
沈浩(种子思维作者)1 小时前
真的能精准医疗吗?癌症能提前发现吗?
人工智能·python·网络安全·健康医疗·量子计算
minhuan1 小时前
大模型应用:大模型越大越好?模型参数量与效果的边际效益分析.51
人工智能·大模型参数评估·边际效益分析·大模型参数选择
Cherry的跨界思维1 小时前
28、AI测试环境搭建与全栈工具实战:从本地到云平台的完整指南
java·人工智能·vue3·ai测试·ai全栈·测试全栈·ai测试全栈
MM_MS1 小时前
Halcon变量控制类型、数据类型转换、字符串格式化、元组操作
开发语言·人工智能·深度学习·算法·目标检测·计算机视觉·视觉检测
ASF1231415sd1 小时前
【基于YOLOv10n-CSP-PTB的大豆花朵检测与识别系统详解】
人工智能·yolo·目标跟踪
独自破碎E2 小时前
【二分法】寻找峰值
算法
mit6.8242 小时前
位运算|拆分贪心
算法
水如烟2 小时前
孤能子视角:“意识“的阶段性回顾,“感质“假说
人工智能