【数据挖掘】聚类 Cluster 简介 ( 概念 | 应用场景 | 质量 | 相似度 | 算法要求 | 数据矩阵 | 相似度矩阵 | 二模矩阵 | 单模矩阵 )

2023-03-27 19:46:37 浏览数 (2)

文章目录

  • I . 聚类 ( Cluster ) 概念
    • II . 聚类 ( Cluster ) 应用场景
    • III . 聚类 ( Cluster ) 质量
    • IV . 聚类 ( Cluster ) 质量 测量
    • V . 聚类 ( Cluster ) 算法要求
    • VI . 聚类 ( Cluster ) 数据矩阵
    • VII . 聚类 ( Cluster ) 相似度矩阵
    • VIII . 聚类 ( Cluster ) 二模矩阵 与 单模矩阵
I . 聚类 ( Cluster ) 概念

1 . 聚类简介 : 已知 原始的数据集 , 没有类标签 , 没有训练集 , 测试集 , 数据集所有属性已知 ; 设计聚类算法 , 根据聚类算法将数据集进行分组 ; ( 数据集 -> 聚类算法 -> 数据分组 )

① 没有类标签 : 虽然将数据集分成若干子集 , 但是以什么依据分 , 事先是不知道的 ;

② 没有训练集 : 分类操作中 , 将数据集先分成训练集 和 测试集 , 但是在聚类中 , 只有一个数据集 , 聚类算法分析整个数据集 , 学习训练出以什么标准进行聚类 , 然后将相似的数据样本分组 , 这就是聚类结果 ;

③ 聚类分组 : 给定数据集 , 有完整的属性值 ; 相似的数据放在同一组 , 不相似的数据放在另外一组 ;

2 . 无监督学习 : 聚类属于无监督学习类型 , 分类属于有监督学习类型 ;

3 . 聚类分析目的 : 聚类分析 希望根据数据的特征 , 可以是

1

个特征 , 也可以是若干特征 , 找出数据之间的相似性 , 相似的数据放在一个数据组中 , 这里不是分类 , 要注意区分分组与分类 , 因为聚类分析中没有类别这个概念 ;

4 . 分组 与 分类 : 分别是 聚类 和 分类 的结果 ;

① 相同点 : 都是将一个数据集分成若干数据子集 ;

② 分类 : 数据子集有明确的类别标签 , 这个子集是属于哪一类的 ;

③ 聚类 : 这些数据类似 , 没有类别这个概念 , 至于为什么类似 , 以什么标准类似 , 都是不知道的 , 需要自己学习训练找出分组的标准 ;

5 . 聚类示例 :

① 要求 : 给定如下

9

个小球 , 将其进行聚类 , 没有规定按照什么标准进行分类 ;

② 先找出分类标准 : 下面的球按照颜色分 , 可以分成 红色 , 绿色 , 紫色 三类 , 聚类时 , 先要训练分类的标准 , 然后根据训练出的标准进行分类 , 这里要先知道按照颜色分类 , 然后再执行按照颜色分类的操作 ;

③ 然后进行分类 : 按照颜色的分类结果 ;

II . 聚类 ( Cluster ) 应用场景

1 . 聚类 ( Cluster ) 应用方向 :

① 分析 数据分布 : 如数据集样本分布在空间中 , 可以先对这个数据集进行聚类分析 , 将分在一组的数据当做一个数据 , 相当于数据压缩 ;

② 分类 前预处理 : 分类时 , 先使用聚类预处理数据集 , 然后再进行分类操作 ;

③ 模式识别 ;

④ 空间数据分析 ;

⑤ 图像处理 ;

2 . 聚类应用实例 :

① 客户管理 : 将不同的客户数据集进行分组 , 分析不同分组的客户的购买模式 ;

② 城市规划 : 将城市中的房子放在一个数据集中 , 总和考虑 房子 价值 , 类型 , 用途 , 位置 , 等因素 , 对该数据集进行聚类分析 , 为数据集分组 , 便于城市规划 ;

③ 地理用途 : 将地球上不同地区的情况当做数据集 , 录入该地区的各种属性 , 聚类分析这些地区 , 并将其分组 ;

III . 聚类 ( Cluster ) 质量

1 . 聚类 ( Cluster ) 高质量 : 聚类的结果也要进行好坏评价 , 好的聚类 , 类中的数据集样本 相似程度很高 , 称为 高质量聚类 ;

2 . 高质量 聚类 要求 :

① 同一分组 : 相同分组中的数据样本 , 高度相似 ;

② 不同分组 : 不同分组中的数据样本 , 高度不相似 ;

3 . 聚类质量度量 :

① 度量相似性 : 通过 度量数据集样本的相似性 , 来判断聚类分析的质量 ; 相同分组相似 , 不同分组不相似 ;

② 发现隐含模式 : 聚类分析 发现越多 数据集样本 的 隐含模式 , 聚类分析的质量越高 ; 如有的高质量的聚类方法 , 可以将奇形怪状的聚类模式找出来 ( 下图左侧的聚类分组 ) , 有些低质量聚类分析只能分析出球状的样本分组结构 ( 下图右侧的聚类分组 ) ; 如下图左侧的聚类分组模式就比右侧的模式复杂 ;

IV . 聚类 ( Cluster ) 质量 测量

1 . 聚类 ( Cluster ) 质量 测量 : 使用 相似度 ( Similarity Metric ) , 和 不相似度 ( Dissimilarity Metric ) 来测量 ;

2 . 相似度 和 不相似度度 两个指标互反 : 相似度越大 , 不相似度越小 ; 不相似度越大 , 相似度越小 ;

3 . 相似度表示 : 使用距离表示相似度 , 用距离

d(i , j)

表示 ; 距离越大 , 说明相似度越低 , 距离越小 , 说明相似度越高 ;

4 . 距离函数 : 不同的数据集样本类型 , 其距离函数选择也是不同的 ;

① 标度型函数 : 有刻度的数据 , 如温度 , 距离 , 重量 等 ;

② 布尔型函数 : 适合二元类型数据 , 如 对错 , 男女 , 有无 等值 ;

③ 分类类型 : 离散型的 分类 , 取值大于 2 个 , 如颜色值 等 ;

④ 顺序等级 : 有顺序的取值 , 如班级的名次 , 比赛时的金银铜等级 等 ;

⑤ 向量变量 ;

不同数据类型的相似度计算是不同的 ;

V . 聚类 ( Cluster ) 算法要求

聚类 ( Cluster ) 算法要求 :

① 伸缩性 : 随着数据集样本数增加 , 算法复杂度应该线性增加 , 不能指数级增长 ;

② 适应性强 : 聚类算法可以处理各种类型的属性 , 如离散值 , 连续回归值 , 布尔值 , 标度值 , 向量 , 数值型数据, 字符型数据 等 ;

③ 空间中聚类形状任意 : 聚类的结果的形状可以是任意形状 , 不能局限于球状分组 ;

④ 参数输入 : 输入参数时 , 尽量避免对领域知识的要求太高 ; 如 , K-Means 要求聚类前先设置分成几组 , 这样就是对领域知识要求太高 ;

⑤ 鲁棒性好 : 可以处理 数据集样本 中的 噪声样本 和 异常样本 ;

⑥ 样本顺序 : 数据集样本 输入的顺序不应该影响聚类结果 ; 基于层次的聚类 , 不同的样本输入顺序 , 会得到不同的聚类分组结果 ;

⑦ 数据维度 : 可以处理 高维度 的 样本数据;

⑧ 用户条件 : 用户会提出各种 限定条件 , 聚类算法可以与这些要求相结合 ;

⑨ 使用性 : 可解释性 与 可使用性 好 ;

VI . 聚类 ( Cluster ) 数据矩阵

1 . 聚类要求 : 聚类是将相似的数据样本放在一组 , 给定两个数据样本 , 如何判断这两个样本的相似性呢 ;

2 . 数据矩阵 : 数据集样本通常是以 数据矩阵 的形式给出 , 该矩阵又称为 对象属性结构 ;

① 矩阵行 : 每一行代表了一个样本的输入数据 ;

② 矩阵列 : 每一列代表了样本的某个属性的值 ;

③ 矩阵示例 : 数据集样本有

p

个 , 每个样本有

n

个属性 ( 特征 ) , 那么该 数据矩阵 有

p

n

列 , 是一个

p times n

维的矩阵 ;

begin{bmatrix} x_{11} & cdots & x_{1p} \ vdots & ddots & vdots \ x_{n1} & cdots & x_{np} end{bmatrix}

④ 样本示例 : 数据样本是人 , 有

3

个 , 每个样本有

4

个属性 , 分别是 年龄 , 身高 , 体重 , 收入 , 其数据集是一个

3

4

列的矩阵 , 如下 :

begin{bmatrix} 18 & 165 & 75 & 200000 \ 13 & 151 & 41 &0 \ 20 & 153 & 75 & 800000 \ end{bmatrix}
VII . 聚类 ( Cluster ) 相似度矩阵

1 . 聚类 ( Cluster ) 相似度矩阵 :

① 别称 : 相似度矩阵 , 又叫做 相异度矩阵 , 或 , 对象-对象 结构 ;

② 存储内容 : 相似度矩阵存储 数据集样本之间的相似性 , 存储 每两个样本之间相似度值 ;

③ 存储形式 : 假设有

n

个样本 , 使用

n times n

维矩阵表示 样本间的相似性 ; 行 和 列 表示的都是所有的样本 , 如

i

j

列表示第

i

个样本与 第

j

个样本的相似度 (

i < n , j < n

) ;

2 . 聚类 ( Cluster ) 相似度表示 :

① 对象间的相似度表示 : 使用

d(i,j)

表示第

i

个样本与 第

j

个样本的相似度值 ;

② 相似度取值 : 相似度值是一个 非负数 , 两个 对象越相似 , 其值越小 ;

③ 矩阵对角线相似度值 : 对象线的值就是 样本

i

与 其本身进行比较 , 其相似度最小 , 取值

0

;

3 . 矩阵示例 :

3

个样本 , 其矩阵是

3 times 3

维矩阵 ; 其中对角线上的值

d(1, 1) , d(2, 2) , d(3, 3)

都是

0

;

begin{bmatrix} d(1, 1) & d(1, 2) & d(1, 3) \\ d(2, 1) & d(2, 2) & d(2, 3) \\ d(3, 1) & d(3, 2)& d(3, 3) \ end{bmatrix}
VIII . 聚类 ( Cluster ) 二模矩阵 与 单模矩阵

1 . 二模矩阵 : 数据矩阵称为二模矩阵 , 行 和 列 分别代表不同的意义 , 数据矩阵中行代表了样本的个数 , 列代表了样本的属性个数 ;

① 行的意义 : 样本的个数 , 第

i

行表示第

i

个样本 ;

② 列的意义 : 属性的个数 , 第

j

列表示第

j

个属性 ;

③ 矩阵值意义 :

i

j

列表示第

i

个样本的第

j

个属性值 ;

2 . 单模矩阵 : 相似度矩阵是单模矩阵 , 行 和 列 代表的意义相同 , 都代表数据样本本身 ;

① 行的意义 : 样本的个数 , 第

i

行表示第

i

个样本 ;

② 列的意义 : 样本的个数 , 第

j

列表示第

j

个样本 ;

③ 矩阵值意义 :

i

j

列表示第

i

个样本 与 第

j

个样本的相似度值

d(i, j)

;

3 . 矩阵转化 : 聚类算法的输入是 相似度矩阵 ( 单模矩阵 ) , 如果给出的是 数据矩阵 ( 二模矩阵 ) , 需要先将数据矩阵转化为相似度矩阵 ;

0 人点赞