数学建模学习笔记之评价问题聚类分析法

物以类聚、人以群分。

聚类分析是一个很大的概念,显然根据分类的依据不同会出现很多很多聚类的方法。例如K-Means 、Sequential Leader、Model Based Methods、Density Based Methods、Hierarchical Methods、EM、蚁群算法等等。各类算法之间并没有优劣之分,只存在选择是否恰当问题。数学建模主要注重结论,所以这里就重点讲解其中比较有名的K-Means聚类和它在SPSS软件上的实现。

聚类:把各不相同的个体分割为有更多相似性子集合,产生的子集叫做

应用领域:客户价值分析、文本分类、数据处理等

K-Means聚类(K-均值)分析

算法步骤

  1. 随机选取K个样本作为类中心
  2. 计算各样本与各类之间的距离
  3. 将各样本归于最近的类中心点
  4. 求各类样本的均值,作为新的类中心
  5. 判定:若类中心不再发生变动或到达迭代次数,算法结束,否则返回第二步。

聚类指标

外部指标:将聚类结果与参考模型进行比较

a:集合SS包含在聚类结果中属于相同簇在参考模性中也属于相同簇的样本对。

b:集合SD包含在聚类结果中属于相同簇在参考模性中属于不同簇的样本对。

c:集合DS包含在聚类结果中属于不同簇在参考模性中属于相同簇的样本对。

d:集合DD包含在聚类结果中属于不同簇在参考模性中属于不同簇的样本对。

Jaccard系数
JC=aa+b+cJC=\frac{a}{a+b+c} JC=a+b+ca​
FM指数
FMI=aa+b∗aa+cFMI=\sqrt[]{\frac{a}{a+b}*\frac{a}{a+c}} FMI=a+ba​∗a+ca​​
Rand指数
RI=2(a+d)m(m−1)RI=\frac{2(a+d)}{m(m-1)} RI=m(m−1)2(a+d)​
上述指标在[0,1]区间内越大越好。

内部指标:不依赖于任何参考模型,直接考察聚类结果

avg©:簇C内样本间平均距离

diam©:簇C间样本间的最远距离

dmin:簇Ci与Cj最近样本间的距离

dcem:簇Ci与Cj中心点间的距离

DB指数越小越好:
DBI=1k∑i=1kmaxi≠j(avg(Ci)+avg(Cj)dcem(Ci)(Cj))DBI=\frac{1}{k}\sum_{i=1}^{k}{max_{i\neq j}(\frac{avg(C_i)+avg(C_j)}{d_{cem}(C_i)(C_j)})} DBI=k1​i=1∑k​maxi̸​=j​(dcem​(Ci​)(Cj​)avg(Ci​)+avg(Cj​)​)
紧密性(CP):各样本到聚类中心的距离

间隔性(SP):各类中心间平均距离

代码实现

MATLAB中关于聚类的函数有很多,k-means应该是其中比较简单一种

x = [1 2 6 8 13]';    % 原始数据
opts = statset('Display','final');  % 显示每次聚类的最终结果
% startset产生一个复杂的struct,参数‘display’可选有off/iter/finalidx = kmeans(x,3,'Distance','city','Replicates',5,'Options',opts)% 将原始的5个点聚为3类,距离采用绝对值距离,重复聚类5次
%Distance’:聚类距离的度量方式  Start’:迭代初始点的选取方式
%‘Replicates’:选取不同的初始点进行计算的次数,默认值为1
%‘Options’:迭代的方式,需要创建一个statset变量%****************************绘制聚类轮廓图*********************************
[S, H] = silhouette(x,idx)    % 绘制轮廓图,并返回轮廓值向量S和图形句柄H

SPSS使用

案例·对下表中10个省份进行聚类

第一步:打开spss>文件>打开>数据

第二步:分析>分类>K-平均值聚类>把依据的指标值导入变量,地区导入标注个案,填写聚类数,勾选迭代与分类

第三步:选项>勾选要查看的结果/迭代选择最大迭代次数

点确定,就结束了。参考结果如下:

总结

K-Means 聚类是一种比较典型的划分聚类方法,其代码简单步骤也比较容易懂。但由于其可选地方不多,而使用系统聚类也就是层次聚类的方法,通过画出的树状图来判断聚类就更加方便。具体SPSS方法和k-means差不多,MATLAB实现代码和教学视频我整理了下手边资料,有兴趣可以下载

https://download.csdn.net/download/yuanjiteng/11516954

数学建模学习笔记之评价问题聚类分析法相关推荐

  1. 数学建模学习笔记(21)主成分分析法

    主成分分析法概述 主成分分析(PCA)是一种降维算法,能够将多个数据指标转换为少数几个主成分,这些主成分是原始变量的线性组合,并且彼此之间互不相关,能够反映原始数据的大部分信息. 主成分分析法的适用情 ...

  2. 【数学建模学习笔记【集训十天】之第六天】

    数模学习目录 Matplotlib 学习 Matplotlib简介 Matplotlib 散点图 运行效果如下: Matplotlib Pyplot 运行效果如下: 关于plot() 运行效果如下: ...

  3. 数学建模学习笔记(2.3)lingo软件求解线性规划问题

    数学建模学习笔记(2.3)lingo软件求解线性规划问题 lingo软件的优势在于体积小,专注于解决优化问题 且编程语言通俗易懂,没有门槛 对于刚刚接触数学建模同学比较友善 当然对于已经参与建模很久的 ...

  4. 数学建模学习笔记(1)数学模型的特点和分类

    数学建模学习笔记(1)数学模型的特点和分类 ps:学习的教材为姜启源著的<数学模型(第四版)> 领取数模资料和更多内容请关注公众号:拾壹纪元 传送门: 线性规划(LP)问题 https:/ ...

  5. 数学建模学习笔记(一):插值法

    文章目录 前言 一.一维插值问题的描述 二.常用插值方法 1.Lagrange插值法 2.Newton插值法 三.高次插值的Runge现象 四.Matlab插值 1.一维插值 2.二维插值 3.散乱点 ...

  6. 数学建模学习笔记-概况

    目录 1概况. 数学建模: 数学建模的模块: 一般步骤: 全过程: 论文的基本流程 模块学习: 1.题目备战:掌握固定模式 2.摘要备战:总结归纳能力,通过看高水平论文掌握. 3.问题重述:切忌直接抄 ...

  7. 清风数学建模学习笔记——主成分分析(PCA)原理详解及案例分析

    主成分分析   本文将介绍主成分分析(PCA),主成分分析是一种降维算法,它能将多个指标转换为少数几个主成分,这些主成分是原始变量的线性组合,且彼此之间互不相关,其能反映出原始数据的大部分信息. 一般 ...

  8. 清风数学建模学习笔记——灰色关联分析(GRA)详细解读与案例分析

    灰色关联分析   灰色关联分析的基本思想 是根据序列曲线几何形状的相似程度来判断其联系是否紧密,曲线越接近,相应序列之间的关联度就越大,反之则越小.   此方法可用于 进行系统分析,也可应用于对问题 ...

  9. 高数叔数学建模学习笔记(1)

    此处将我在学习高数叔数学建模课程中遇到的代码记录下来,便于查看.学习. 5.matlab中的文件 wendu.m clear; f=input('temperature:'); c=5*(f-32)/ ...

最新文章

  1. 参加过java培训机构的学员如何找出路
  2. 2018年Python开源项目Top100!只在这里!
  3. 【Java 虚拟机原理】Dalvik 虚拟机 ( 简介 | CPU 指令集 | Dalvik 虚拟机内存 )
  4. [转载] 全方位提升网站打开速度:前端、后端、新的技术
  5. 最大化 AIX 上的 Java 性能,第 3 部分: 更多就是更好
  6. fastdfs-配合nginx-麻烦的
  7. output怎么用_这个功能QQ音乐,网易云音乐都有——用python实现一个音乐检索器...
  8. 深度学习技术干货免费听,AirPods2任性抽...520有场AI峰会不可错过!
  9. 运维 xshell 学习
  10. QQ自动播放动态视频json卡片怎么换地址
  11. EasyExcel导出文件格式不匹配
  12. scrollbars属性,MultiLine 属性
  13. 蛋疼的时候写三消游戏(一)
  14. 股票API数据实时查询
  15. 刷机命令android手机刷机后,wifi无法使用的解决方法
  16. 光量子计算机的功能,光量子计算机有什么用
  17. 云计算技术 — 多云
  18. 使用《金字塔原理》指导述职报告写作
  19. Jan. 1, 2020 at 7:47 a.m. GMT+8遇到这种时间,转换成中国标准时间
  20. 剑指offter Java单链表反转

热门文章

  1. Java获取指定时区的时间格式
  2. 大数据相关技术文章整理
  3. Autoware高精地图简介
  4. Jsp+Sevlet新闻发布系统
  5. 软路由的路由功能设置 - 初学者系列 - 学习者系列文章
  6. 让visual studio 工具箱重新找回失去的DevExpess第三方组件
  7. PTA 1051 复数乘法 (15 分) C++实现
  8. Apollo配置加解密-基于Apollo—client的封装支持配置动态解密的巧思与探索
  9. 多棱柱(可以自己设置多少条边)
  10. 注意力(Attention)机制概述