第6章 聚类分析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
从上述计算可以看出,样本xi和xj之间的距离最小,表示 它们之间的相似度最大;x1和X2的相似性较小;x1和x3没 有相似性。
18
在实际的应用中,多值离散型属性也可以转化为二值离 散型属性。表6.3中的数据可以转化为表6.4中的数据。 在表6.4中,属性不再是“年龄段”、“学历”和“收 入”,而是它们的每种具体取值。
(1)d(xi,xj)≥0,即数据样本之间的距离是非负值。
(2)d(xi,xj)=0,即数据样本与自身的距离为0,表示样本 与自身之间的相似性最大。 (3)d(xi,xj)=d(xj,xi),即数据样本之间的距离是对称的, 计算xi和xj之间的距离等价于计算xj和xi之间的距离。 (4)d(xi,xj)≤d(xi,xk)+d(xk,xj),即数据样本之间的距离满 足三角不等式的性质。 连续型属性可以用多种度量单位来表示,不同的度量单位 会导致不同的聚类结果。度量单位越小,描述属性可能的值域 就越大,对距离计算的影响越大,从而对聚类结果的影响也越 大;度量单位越大,描述属性可能的值域就越小,对距离计算 的影响越小,从而对聚类结果的影响也相应减小。
4
6.2聚类分析概述
聚类分析是数据挖掘应用的主要技术之一,它可以作
为一个独立的工具来使用,将未知类标号的数据集划分 为多个类别之后,观察每个类别中数据样本的特点,并 且对某些特定的类别作进一步的分析。 聚类分析还可以作为其他数据挖掘技术(例如分类学 习、关联规则挖掘等)的预处理工作。
聚类分析在科学数据分析、商业、生物学、医疗诊断、 文本挖掘和Web数据挖掘等领域都有广泛应用。
表6.1 聚类分析示例数据集
3
聚类分析是将物理的或者抽象的数据集合射分为多个类 别的过程,聚类之后的每个类别中任意两个数据样本之间 具有较高的相似度,而不同类别的数据样本之间具有较低 的相似度。 相似度可以根据数据样本的描述属性的具体取值来计算, 通常采用数据样本间的距离来表示。 聚类分析中使用的数据集表示为X={xi︳i=1,2,…, total),其中数据样本xi(i=1,2,…,total)用d维特征向量 xi=(xi1,xi2…,xid)来表示,xi1,xi2,…Xid分别对应d 个描述属性A1,A2,…,Ad的具体取值。描述属性可以 是连续型属性(如表6.1所示)、离散型属性或者混合型属性。 此外,不同类型描述属性的相似度的计算方法不同。
13
6.3.2 二值离散型属性的相似度计算方法
二值离散型属性是指只有两种取值的离散型属性,通常用1代 表属性的一种取值,用0代表属性的另一种取值。 假设给定的数据集为X={xm︳m=l,2,…,total),X中的数据 样本用d个描述属性A1,A2,…,Ad来表示,并且d个描述属性都 是二值离散型属性。数据样本xi=(xil,xi2,…,xid),xj=(xjl, xj2,…,xjd)。其中xi1,xi2,…,xid和xjl,xj2,…,xjd的值是0或 1。xi和xj之间的距离d(xi,xj)按照如下的步骤来计算。 首先,统计两个数据样本的各个二值离散型属性的取值情况。 xi和xj的各属性的取值情况如表6.2所示。
6
(4)减小对先验知识和用户自定义参数的依赖性。许多聚类 算法要求用户事先确定一些参数,如希望将数据集划分的类 别数、选择数据集的初始划分方式等。减小对先验知识和用 户自定义参数的依赖性,可以减轻用户进行参数设置的负担, 也使得对聚类性能的控制相对容易。 (5)处理噪声数据的能力。大多数数据库或者数据仓库中都 包含孤立点、缺失值和错误的数据。噪声数据会干扰许多聚 类算法的聚类性能,导致低质量的数据集划分。 (6)可解释性和实用性。用户往往希望聚类结果是可解释的、 可理解的并且是可用的,从而可以根据聚类结果进行研究和 分析。在低维情况下,可以借助于可视化手段来展示聚类结 果;在高维情况下,聚类结果很难被可视化,这时对数据降 低维度会有所帮助。
样本xi和xj之间的相似度通常用它们之间的距离d(xi,xj) 表示, 距离越小,样本xi和xj越相似;距离越大,样本xi和xj越不相似。 用连续型属性表示的数据样本xi和xj之间的距离d(xi,xj)的计 算方法通常有如下3种方式。
11
(1)欧氏距离(Euclidean distance),如公式(6—1)所示。
15
(2)不对称的二值离散型属性是指其取值为1或0时不是同等
重要。例如血液的检测结果是不对称的二值离散型属性,阳性 结果的重要程度要远远高于阴性结果。通常用1来表示重要的
属性取值(例如阳性),而用0来表示另一种取值(例如阴性)。对
于这种属性,d(xi,xj)的计算公式为:
在公式(6—5)等号右边的分母中没有a00,这是因为样本xi和xj 取值同时为0的情况被认为不重要,不必参与相似度的计算。
9
聚类分析方法将给定的数据集合划分为多个类别,其 中每个类别中任意两个数据样本之间具有较高的相似度,而 不同类别的数据样本之间具有较低的相似度。数据样本之间 的相似度通常用样本间的距离来表示,而距离是通过数据样 本的描述属性的具体取值来计算的。在不同的应用领域中, 数据样本的描述属性的类型可能不同,因此相似度的计算方 法也不同。
7
通常聚类算法可以分为以下几类。 (1)划分聚类方法。对于给定的数据集,划分聚类方法通 过选择适当的初始代表点将数据样本进行初始聚类,之后通 过迭代过程对聚类的结果进行不断的调整,直到使评价聚类 性能的准则函数的值达到最优为止。 (2)层次聚类方法。层次聚类方法将给定数据集分层进行 划分,形成一个以各个聚类为结点的树型结构。层次聚类方 法分为自底向上(凝聚型层次聚类)和自顶向下(分解型层 次聚类)两种方式。 (3)基于密度的聚类方法。基本原理:当临近区域的数据 密度大于某个阈值时,就不断进行聚类,直到密度小于给定 阈值为止。也就是说,每一个类别被看作一个数据区域,对 于某个特定类别中的任一数据样本,在给定的范围内必须包 含大于给定值的数据样本。基于密度的聚类方法可以用来去 除噪声样本,形成的聚类形状也可以是任意的。
下面分别介绍当描述属性为连续型属性、二值离散型属
性、多值离散型属性以及混合类型属性时,数据样本之间的 相似度计算方法。
10
6.3.1 连续型属性的相似度计算方法
连续型属性是指取值为连续值的属性,例如年龄、收入和距离 等都是连续型属性。
假设给定的数据集为X={xm︳m=1,2,…,total),X中的样 本用d个描述属性A1,A2,…,Ad来表示,并且d个描述属性都是 连续型属性。数据样本xi=(xi1,xi2,…,xid),xj=(xj1,xj2,…, xjd)。其中,i1,xi2…,xid和xj1,xj2…,xjd分别是样本xi和xj对应d 个描述属性A1,A2,…,Ad的具体取值。
8
(4)基于网格的聚类方法。基于网格的聚类方法将原始的数据 空间量化为有限数目的单元,并且由这些单元形成网格结构, 所有的聚类操作都要在这个网格结构上进行。基于同格的聚类 方法的处理速度较快,其处理时间与数据样本的数量无关,而 是与量化空间中每一维上的单元数目有关。 聚类分析已经被广泛地研究了许多年,主要集中在基于距离 和相似度的算法方面。其中划分聚类方法k—means和层次聚 类方法已经被加入到许多统计分析工具的软件包中,作为专门 的聚类分析工具来使用。本章主要介绍划分聚类方法k-means 和层次聚类方法的原理和算法步骤,并进行实例说明。
16
6.3.3 多值离散型属性的相似度计算方法
多值离散型属性是指取值个数大于2的离散型属性。例如,年 龄段可以分为老年、中年、青年;收入可以分为高、中、低;信 誉度可以分为优、良、差等。假设一个多值离散型属性的取值个 数为N,其中的每种取值可以用字母、符号或者整数集合来表示。 假设给定的数据集为X={xm︳m=1,2,…,total},X中的样 本用d个描述属性A1,A2,…,Ad来表示,并且d个描述属性都是 多值离散型属性。样本xi=(xi1,xi2,…,xid)和xj=(xjl,xj2,…,xjd) 之间的距离d(xi,xj)的计算公式为 其中,d为数据集中的属性个数,u为样本xi和xj取值相同的属 性个数。 【例6.1】根据表6.3中给出的数据集,计算第一个数据样 本和其他各个数据样本之间的相似度。
17
表6.3 包含多值离散型属性的数据集
【解】从表6.3中可以看出,给定数据集包含“年龄 段”、“学历”和“收入”3个属性,也就是说d=3。“年 龄段“属性的取值包含老年、青年、中年;“学历”属性 的取值包含本科以下、本科、研究生;“收入”属性的取 值包含高、中、低。 根据公式(6—6),可以计算x,与其他 3个样本之间的相似度。
Leabharlann Baidu
2
6.1 引例
表6.1给出了一个聚类分析的示例数据集,其中包含两个 描述属性,不包含类别属性。 聚类分析的任务是将这7个数据样本划分为多个聚类,即 将相似度较高的样本归为一个类别。例如,对于表6.1中的 数据集,可以使用样本之间的距离来表示相似度,两个样本 之间的距离越近,它们属于一个聚类的可能性就越大。
多值离散型属性转化为二值离散型属性的具体做法是, 为每个多值离散型属性的每种取值创建一个不对称的二值离散 型属性,如果数据样本对于给定属性的值是其多种取值中的一 种,那么这个取值标记为1,其他取值标记为0。例如,对于数 据样本x1,在表6.3中,对应属性“年龄段”、“学历”和 “收入”的取值为青年、研究生、高;而在表6.4中,只有属 性“青年”、“研究生”和“高”的值为1,其余属性的值为0。 对于表6.4中的数据集,就可以利用6.3.2节中的公式(6— 5)来计算数据样本之间的相似度了。
其次,根据数据样本的二值离散型属性的取值情况计算样本 之间的距离d(xi,xj)。需要说明的是,对称的二值离散型属性和不 对称的二值离散型属性的d(xi,xj)的计算方法不同,下面分别进行 介绍。
(1)对称的二值离散型属性是指其取值为1或0时同等重要。例 如性别就是对称的二值离散型属性,用l表示性别为男,用0表示性 别为女;或者用0.表示性别为男,用1表示性别为女都是等价的, 两种取值没有主次之分。对于这种属性,d(xi,xj)的计算公式为:
(2)曼哈顿距离(Manhattan distance),如公式(6—2)所示。
(3)明考斯基距离(Minkowski distarice),是欧氏距离和曼 哈顿距离的一个推广。
当q的值为1时,明考斯基距离变为曼哈顿距离;当q 的值为2时,明考斯基距离变为欧氏距离。
12
上述三种距离满足如下的数学性质。
数据仓库与数据挖掘
第6章 数据聚类
2013-8-1
1
数据分类:在已知类标号的训练集基础上进行分类器 设计工作的,所以分类方法又称为监督学习方法。 聚类分析:又称为非监督学习方法;使用的数据集样 本没有类标号。 聚类分析方法可以将数据集划分为多个类别,由此可 以给每个样本标注类标号。聚类之后的数据集可以直接 用来进行科学分析,也可以作为其他方法的训练集。
5
对聚类分析的要求有以下几个方面。 (1)可伸缩性。在以往的应用中,聚类分析方法所处理的 数据集都是小数据集,而且比较有效。。面对大数据集, 聚类分析方法对数据集的划分结果可能会与理想的划分存 在着偏差。因此,对数据集的处理具有良好的可伸缩性是 聚类分析的重要研究内容。
(2)处理不同类型属性的能力。聚类分析中的许多算法都 是针对具有连续型描述属性的数据集设计的。聚类算法可 以处理不同类型属性的数据集,例如连续型属性、二值离 散型属性、多值(大于2)离散型属性和混合类型属性等。 (3)发现任意形状聚类的能力。许多聚类算法是基于欧氏 距离和曼哈顿距离度量来计算数据样本之间的相似度的, 基于这样的距离度量的算法倾向于将数据集划分为相近大 小和密度的球形聚类。能够划分任意形状数据集的聚类方 法是非常重要的。
14
在表6.2中,a11表示样本xi和xj取值同时为1的二值离散型属 性个数,a10表示样本xi取值为1而样本xi取值为0的二值离散型属 性个数,a01表示样本xi取值为0而样本xj取值为1的二值离散型属 性个数,a00表示样本xi和xj取值同时为0的二值离散型属性个数。 a11+a10+a01+a00的值等于数据集中的属性的总个数d。