文章目录

  • 6.4 模型评估
    • 学习目标
    • 1 误差平方和(SSE \\The sum of squares due to error):
    • 2 **“肘”方法 (Elbow method)** — K值确定
    • 3 轮廓系数法(Silhouette Coefficient)
    • 4 CH系数(Calinski-Harabasz Index)
    • 5 小结

6.4 模型评估

学习目标

  • 知道模型评估中的SSE、“肘”部法、SC系数和CH系数的实现原理

1 误差平方和(SSE \The sum of squares due to error):

举例:(下图中数据-0.2, 0.4, -0.8, 1.3, -0.7, 均为真实值和预测值的差)

在k-means中的应用:

公式各部分内容:

上图中: k=2

  • SSE图最终的结果,对图松散度的衡量.(eg: SSE(左图)<SSE(右图))

  • SSE随着聚类迭代,其值会越来越小,直到最后趋于稳定

  • 如果质心的初始值选择不好,SSE只会达到一个不怎么好的局部最优解.

2 “肘”方法 (Elbow method) — K值确定

(1)对于n个点的数据集,迭代计算k from 1 to n,每次聚类完成后计算每个点到其所属的簇中心的距离的平方和;

(2)平方和是会逐渐变小的,直到k==n时平方和为0,因为每个点都是它所在的簇中心本身。

(3)在这个平方和变化过程中,会出现一个拐点也即“肘”点,下降率突然变缓时即认为是最佳的k值

在决定什么时候停止训练时,肘形判据同样有效,数据通常有更多的噪音,在增加分类无法带来更多回报时,我们停止增加类别

3 轮廓系数法(Silhouette Coefficient)

结合了聚类的凝聚度(Cohesion)和分离度(Separation),用于评估聚类的效果:

目的:

​ 内部距离最小化,外部距离最大化

计算样本i到同簇其他样本的平均距离ai,ai 越小样本i的簇内不相似度越小,说明样本i越应该被聚类到该簇。

计算样本i到最近簇Cj 的所有样本的平均距离bij,称样本i与最近簇Cj 的不相似度,定义为样本i的簇间不相似度:bi =min{bi1, bi2, …, bik},bi越大,说明样本i越不属于其他簇。

求出所有样本的轮廓系数后再求平均值就得到了平均轮廓系数

平均轮廓系数的取值范围为[-1,1],系数越大,聚类效果越好。

簇内样本的距离越近,簇间样本距离越远

案例:

下图是500个样本含有2个feature的数据分布情况,我们对它进行SC系数效果衡量:

n_clusters = 2 The average silhouette_score is : 0.7049787496083262

n_clusters = 3 The average silhouette_score is : 0.5882004012129721

n_clusters = 4 The average silhouette_score is : 0.6505186632729437

n_clusters = 5 The average silhouette_score is : 0.56376469026194

n_clusters = 6 The average silhouette_score is : 0.4504666294372765

n_clusters 分别为 2,3,4,5,6时,SC系数如下,是介于[-1,1]之间的度量指标:

每次聚类后,每个样本都会得到一个轮廓系数,当它为1时,说明这个点与周围簇距离较远,结果非常好,当它为0,说明这个点可能处在两个簇的边界上,当值为负时,暗含该点可能被误分了。

从平均SC系数结果来看,K取3,5,6是不好的,那么2和4呢?

k=2的情况:

k=4的情况:

n_clusters = 2时,第0簇的宽度远宽于第1簇;

n_clusters = 4时,所聚的簇宽度相差不大,因此选择K=4,作为最终聚类个数。

4 CH系数(Calinski-Harabasz Index)

Calinski-Harabasz:

类别内部数据的协方差越小越好,类别之间的协方差越大越好(换句话说:类别内部数据的距离平方和越小越好,类别之间的距离平方和越大越好),

这样的Calinski-Harabasz分数s会高,分数s高则聚类效果越好。

tr为矩阵的迹, Bk为类别之间的协方差矩阵,Wk为类别内部数据的协方差矩阵;

m为训练集样本数,k为类别数。

使用矩阵的迹进行求解的理解:

矩阵的对角线可以表示一个物体的相似性

在机器学习里,主要为了获取数据的特征值,那么就是说,在任何一个矩阵计算出来之后,都可以简单化,只要获取矩阵的迹,就可以表示这一块数据的最重要的特征了,这样就可以把很多无关紧要的数据删除掉,达到简化数据,提高处理速度。

CH需要达到的目的:

用尽量少的类别聚类尽量多的样本,同时获得较好的聚类效果。


5 小结

  • sse【知道】

    • 误差平方和的值越小越好
  • 肘部法【知道】
    • 下降率突然变缓时即认为是最佳的k值
  • SC系数【知道】
    • 取值为[-1, 1],其值越大越好
  • CH系数【知道】
    • 分数s高则聚类效果越好
    • CH需要达到的目的:用尽量少的类别聚类尽量多的样本,同时获得较好的聚类效果。

机器学习算法------6.4 模型评估(误差平方和、肘方法、轮廓系数法、CH系数)相关推荐

  1. 机器学习算法——概率类模型评估指标4(校准可靠性曲线及预测概率直方图)

    一.预测概率直方图 我们可以通过绘制直方图来查看模型的预测概率的分布. 直方图以样本的预测概率分箱后的结果为横坐标,每个箱中的样本数量为纵坐标绘制一个图像. 具体代码实现为: from sklearn ...

  2. 图解机器学习算法(6) | 决策树模型详解(机器学习通关指南·完结)

    作者:韩信子@ShowMeAI 教程地址:https://www.showmeai.tech/tutorials/34 本文地址:https://www.showmeai.tech/article-d ...

  3. 机器学习算法 10 —— HMM模型(马尔科夫链、前向后向算法、维特比算法解码、hmmlearn)

    文章目录 系列文章 隐马尔科夫模型 HMM 1 马尔科夫链 1.1 简介 1.2 经典举例 2 HMM简介 2.1 简单案例 2.2 案例进阶 问题二解决 问题一解决 问题三解决 3 HMM模型基础 ...

  4. 百面机器学习(2)——模型评估

    目录 评估指标的局限性(准确率,精确率,召回率,均方根误差) ROC曲线(曲线下的面积AUC,P-R曲线) 余弦距离的应用(余弦相似度,余弦距离,欧式距离) A/B测试的陷阱(实验组,对照组) 模型评 ...

  5. k近邻算法,朴素贝叶斯算法,分类模型评估,模型调优

    k近邻算法,朴素贝叶斯算法,分类模型评估,模型调优 k近邻算法 k近邻算法概述 k近邻算法代码实现 k近邻算法的评价 朴素贝叶斯算法 朴素贝叶斯算法概述 朴素贝叶斯代码实现 朴素贝叶斯的评价 分类模型 ...

  6. 人工智能-模型评估:常见的模型评估指标与方法大全、汇总

    转自:[人工智能-综述-10]:模型评估 - 常见的模型评估指标与方法大全.汇总_文火冰糖的硅基工坊的博客-CSDN博客 目录 前言: 第1章 模型评估概述 1.1 什么是模型评估 1.2 模型评估的 ...

  7. 机器学习(02)—模型评估

    模型评估 1. 交叉验证法 1.1 验证集方法 1.2 留一交叉验证法(leave-one-out cross-validation, LOOCV) 1.3 k折交叉验证法(k-fold CV) 1. ...

  8. [机器学习与scikit-learn-51]:模型评估-图解回归模型的评估指标MSE、MAE、RMSE、R2、RSS与代码示例

    作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客 本文网址:https://blog.csdn.net/HiWangWenBing/article/detai ...

  9. 【机器学习算法】感知机模型

    文章目录 1. 感知机模型 2. 收敛性证明(Novikoff定理) 3. 感知机对偶形式 4.感知机的缺点 5.感知机的几个变形 5.1 投票感知机 5.2 平均感知机 1. 感知机模型   感知机 ...

  10. 【机器学习算法】最大熵模型

    文章目录 1.最大熵原理 2.最大熵模型 3.训练过程 4.极大似然估计 5.改进的尺度迭代法IIS 1.最大熵原理   在概率统计中,最大熵原理认为在所有可能的概率模型中,熵最大的模型是最好的模型. ...

最新文章

  1. Linux中为wget命令设置代理
  2. ubuntu远程桌面
  3. 统计机器学习第二章 感知机
  4. vmbox下linux共享文件
  5. android串口通讯奇偶校验,串口通讯奇偶数校验及CRC校验如何使用详解
  6. iOS开发-63】Unknown type name CGRect,did you mean Rect?的解决方案
  7. 接oracle私活价格,也来记录一下第一次接私活的体验
  8. .NETCore 实现容器化Docker与私有镜像仓库管理
  9. 即时大数据流处理=即时风暴
  10. iOS:图片上传时两种图片压缩方式的比较
  11. java学习(66):局部类内方法访问
  12. Hadoop安装之JDK在Centos虚拟机中安装
  13. 如何在Mac上备份和共享文本替换?
  14. 在写spring项目的时候,有时候需要写ApplicationContext,有时候不要写ApplicationContext
  15. 计算机专业实训是干什么,计算机系实习目的是什么
  16. 华三防火墙透明模式典型组网配置实例
  17. SQL之 CAST 和 CONVERT
  18. 院士李德毅:大数据认知(演讲全文)
  19. 【Python系列】Python写csv文件长数字变成科学记数法的解决方案
  20. 免费刷题的软件测试面试题库小程序,萌新必备

热门文章

  1. 网易公开课斯坦福大学-机器学习
  2. MachineLearning_LogisticRegression使用matlab编程遇到问题
  3. 用html代码写一个表白语言,HTML写代码表白 – 爱心
  4. vscode 是干什么用的_vscode是干嘛用的
  5. 3分钟微信支付商家注册0.2费率开户方法,0.38~0.6的必看
  6. 论文中参考文献规范格式
  7. if while的用法
  8. 产品经理的常见分类和术语
  9. 全国计算机考研人数,考研人数超165万创新高 连续3年年增超10万人
  10. JAVA根据时间增加1天