数据挖掘培训(上)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

划分法(Partitioning Methods):基于一定标准构建数据的划分。 属于该类的聚类方法有:k-means、k-modes、k-prototypes、k-medoids、 PAM、CLARA、CLARANS等。 层次法(Hierarchical Methods):对给定数据对象集合进行层次的分解。 密度法(density-based Methods):基于数据对象的相连密度评价。 网格法(Grid-based Methods):将数据空间划分成为有限个单元(Cell)的网 格结构,基于网格结构进行聚类。 模型法(Model-Based Methods):给每一个簇假定一个模型,然后去寻找能够 很好的满足这个模型的数据集。
• 上面这样计算相异度的方式有一点问题,就是取值范围大 的属性对距离的影响高于取值范围小的属性。例如上述例 子中第三个属性的取值跨度远大于前两个,这样不利于真 实反映真实的相异度,为了解决这个问题,一般要对属性 值进行规格化。所谓规格化就是将各个属性值按比例映射 到相同的取值区间,这样是为了平衡各个属性对距离的影 响。通常将各个属性均映射到[0,1]区间,映射公式为:
2014-6-3 26
• 下面根据第一次聚类结果,调整各个簇的中心点。 • A簇的新中心点为:{(0.3+0+0.24+0.3)/4=0.21, (0+0.15+0.76+0.76)/4=0.4175, (0.19+0.13+0.25+0.06)/4=0.1575} = {0.21, 0.4175, 0.1575}(取簇中所有元素各自维度的算 术平均数。) • 用同样的方法计算得到B和C簇的新中心点分别为 {0.7, 0.7333, 0.4167},{1, 0.94, 0.40625}。
2014-6-3
17
K-means原理
实现流程 目标
18
K均值算法(1)
• K均值算法是基于质心的技术,k均值算法以k为输入参 数,把n个对象集合分为k个簇,使得簇内的相似度高, 簇间的相似度低。簇的相似度是关于簇中对象的均值度 量,可以看作簇的质心。 • K均值算法的处理流程如下,首先,随机的选择k个对象, 每个对象代表一个簇的初始均值,对剩余的每个对象, 根据其与各个簇均值的距离。将它指派到最相似的簇。 然后计算每个簇的新均值,这个过程不断的重复,直到 准则函数收敛。通常采用平方误差准则
2014-6-3 22
2014-6-3
23
下面先对数据进行[0,1]规格化,下表是规格化 后的数据
2014-6-3
24

接着用k-means算法进行 聚类。设k=3,即将这15 支球队分成三个集团。现 抽取日本、巴林和泰国的 值作为三个簇的种子,即 初始化三个簇的中心为A: {0.3, 0, 0.19},B:{0.7, 0.76, 0.5}和C:{1, 1, 0.5}。 (为什么选这三个呢?) 下面,计算所有球队分别 对三个中心点的相异度, 这里以欧氏距离度量。下 面是用程序求取的结果:
按照聚类的标准,聚类方法可分为如下两种:
按照聚类算法所处理的数据类型,聚类方法可分为三种:
数值型数据聚类方法:所分析的数据的属性只限于数值数据。 离散型数据聚类方法:所分析的数据的属性只限于离散型数据。 混合型数据聚类方法:能同时处理数值和离散数据。
按照聚类的尺度,聚类方法可被分为以下三种:
按照聚类聚类分析算法的主要思路,可以被归纳为如下几种。
K均值算法的改进
• 改进措施: (1)样本数据预处理。计算样本对象两两之 间的距离,筛掉与其它所有样本的距离和 最大的m个对象。
(2)初始聚类中心的选择。如不采用簇中的 平均值作为参考点,而选用簇中位置最靠 近中心的对象。这样可以避免孤立点的影 31 2014-6-3 响。
k-means的几种改进方法
• 其意义就是两个元素在欧氏空间中的集合距离,因为其直观易懂且可 解释性强,被广泛用于标识两个标量元素的相异度。将上面两个示例 数据代入公式,可得两者的欧氏距离为:
除欧氏距离外,常用作度量标量相异度的还有曼哈顿距离和闵可夫斯 基距离,两者定义如下: 曼哈顿距离: 闵可夫斯基距离:
2014-6-3
8
规格化问题
6
相异度计算
2014-6-3
7
对象间的相似度和相异度
• 对象间的相似度和相异度是基于两个对象间的距离来计算的。 • 标量也就是无方向意义的数字,也叫标度变量。现在先考虑元素的所 有特征属性都是标量的情况。例如,计算X={2,1,102}和Y={1,3,2}的 相异度。一种很自然的想法是用两者的欧几里得距离来作为相异度, 欧几里得距离的定义如下:
2014-6-3 12
向量对象
• 对于向量,由于它不仅有大小而且有方向, 所以闵可夫斯基距离不是度量其相异度的 好办法,一种流行的做法是用两个向量的 余弦度量,其度量公式为:
• 其中||X||表示X的欧几里得范数。要注意, 余弦度量度量的不是两者的相异度,而是 相似度!
2014-6-3 13
聚类算法分类
2014-6-3
25
从左到右依次表示各支球队到当前中心点的欧氏 距离,将每支球队分到最近的簇,可对各支球队 做如下聚类:中国C,日本A,韩国A,伊朗A, 沙特A,伊拉克C,卡塔尔C,阿联酋C,乌兹别 克斯坦B,泰国C,越南C,阿曼C,巴林B,朝 鲜B,印尼C。 第一次聚类结果: A:日本,韩国,伊朗,沙特; B:乌兹别克斯坦,巴林,朝鲜; C:中国,伊拉克,卡塔尔,阿联酋,泰国,越南, 阿曼,印尼。
14
聚类分析方法的分类
• 划分方法 • 层次方法 • 基于密度的方法
• 基于网格的方法
• 基于模型的方法
2014-6-3 15
划分方法
• 基本思想:给定n个对象或数据元组的数据库,划分方法 构建数据的k个划分,每一个划分表示一个簇,k<=n。划 分方法创建一个初始划分,然后采用迭代重定位技术,尝 试通过对象在组间的移动来改进划分。 • 典型的划分方法有(1)k均值算法,其中每个簇都用该簇 中对象的均值来表示。(2)k中心点算法,其中每个簇用 接近簇中心的一个对象来表示。 • 它们的异同点有:k-均值算法和k-中心算法都属于聚类分 析中的划分方法;k-均值算法是将簇中对象的均值作为簇 的中心,可以是一个虚点,计算其他点与各个簇中心距离, 归入距离最近的簇中;k-中心算法是找簇中最中心的点作 为簇中心,是一个实际存在数据点。这只是均值与中心区 别,两种算法具体流程还是不同的。
11
分类与序数变量
• 分类变量是二元变量的推广,类似于程序中的枚 举变量,但各个值没有数字或序数意义,如颜色、 民族等等,对于分类变量,用“取值不同的同位 属性数/单个元素的全部属性数”来标识其相异度。
• 序数变量是具有序数意义的分类变量,通常可以 按照一定顺序意义排列,如冠军、亚军和季军。 对于序数变量,一般为每个值分配一个数,叫做 这个值的秩,然后以秩代替原值当做标量属性计 算相异度。
20
2014-6-3
K均值算法(3)
2014-6-3
21
K-means示例
• 下面,我们来看看k-means算法一个有趣的应用 示例:中国男足近几年到底在亚洲处于几流水平? 下图是我采集的亚洲15只球队在2005年-2010年 间大型杯赛的战绩 • 其中包括两次世界杯和一次亚洲杯。我提前对数 据做了如下预处理:对于世界杯,进入决赛圈则 取其最终排名,没有进入决赛圈的,打入预选赛 十强赛赋予40,预选赛小组未出线的赋予50。对 于亚洲杯,前四名取其排名,八强赋予5,十六强 赋予9,预选赛没出现的赋予17。这样做是为了 使得所有数据变为标量,便于后续聚类。
3
数据挖掘分类
挖掘任务 挖掘对象 挖掘方法
常用
聚类
分类
关联
回归与序列
4
聚类分析
2014-6-3
5
聚类分析概念
• 聚类与分类的不同在于:分类作为一种监督学习 方法,要求必须事先明确知道各个类别的信息, 并且断言所有待分类项都有一个类别与之对应。 但是很多时候上述条件得不到满足,尤其是在处 理海量数据的时候,如果通过预处理使得数据满 足分类算法的要求,则代价非常大,这时候可以 考虑使用聚类算法。聚类属于无监督学习,相比 于分类,聚类不依赖预定义的类和类标号的训练 实例。 • 聚类分析指将物理或抽象对象的集合分组成为由 类似的对象组成的多个类的分析过程。
• 其中max(ai)和min(ai)表示所有元素项中第i个属性的最大 值和最小值。例如,将示例中的元素规格化到[0,1]区间后, 就变成了X’={1,0,1},Y’={0,1,0},重新计算欧氏距离约为 1.732。
2014-6-3 9
二元变量
2014-6-3
10
二元变量相异度-实例
2014-6-3
这里Jc(m)是数据库中所有对象的平方误差的总和, Xi是空间中的点,表示给定的数据对象,Zj是簇Cj的平 均值( Xi和Zj都是多维的)。
2014-6-3 19
K均值算法(2)
• • • • 1. 2. 3. 4. 5. 算法:k均值。用于划分的k均值算法,每个簇的中心用 簇中对象的均值来表示。 输入:k:簇的数目, D:包含n个对象的数目集。 输出:k个簇的集合。 方法: 从D中任意选择k个对象作为初始簇中心; Repeat 根据簇中对象的均值,将每个对象(再)指派到最相似 的簇 更新簇均值,即计算每个簇中对象的均值 Until不再发生变化
2014-6-3
27
• 用调整后的中心点再 次进行聚类,得到: • 第二次迭代后的结果 为: • 中国C,日本A,韩国 A,伊朗A,沙特A, 伊拉克C,卡塔尔C, 阿联酋C,乌兹别克斯 坦B,泰国C,越南C, 阿曼C,巴林B,朝鲜 B,印尼C。
2014-6-3 28
• 结果无变化,说明结果已收敛,于是给出最终聚类结果: 亚洲一流:日本,韩国,伊朗,沙特 亚洲二流:乌兹别克斯坦,巴林,朝鲜 亚洲三流:中国,伊拉克,卡塔尔,阿联酋,泰国,越南, 阿曼,印尼 • 看来数据告诉我们,说国足近几年处在亚洲三流水平真的 是没有冤枉他们,至少从国际杯赛战绩是这样的。 • 其实上面的分析数据不仅告诉了我们聚类信息,还提供了 一些其它有趣的信息,例如从中可以定量分析出各个球队 之间的差距,例如,在亚洲一流队伍中,日本与沙特水平 最接近,而伊朗则相距他们较远,这也和近几年伊朗没落 的实际相符。
2014-6-3 29
k-means算法的性能分析
• 主要优点:
– 是解决聚类问题的一种经典算法,简单、快速。 – 对处理大数据集,该算法是相对可伸缩和高效 率的。 – 当结果簇是密集的,它的效果较好。
• 主要缺点
– 在簇的平均值被定义的情况下才能使用,可能 不适用于某些应用。 – 必须事先给出k(要生成的簇的数目),而且 DMKD Sides By MAO 30 2014年6月3 日星期二 对初值敏感,对于不同的初始值,可能会导致
2014-6-3 16
K均值ห้องสมุดไป่ตู้法的由来
• k平均聚类发明于1956年, 该算法最常见的形式是采用被称为劳埃德 算法(Lloyd algorithm)的迭代式改进探索法。劳埃德算法首先把输入 点分成k个初始化分组,可以是随机的或者使用一些启发式数据。然 后计算每组的中心点,根据中心点的位置把对象分到离它最近的中心, 重新确定分组。继续重复不断地计算中心并重新分组,直到收敛,即 对象不再改变分组(中心点位置不再改变)。
数据挖掘培训(上)
魏宝军
内容
数据挖掘基本知识 聚类算法介绍 分类算法介绍
2
数据挖掘定义
数据挖掘就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据
中,提取隐含在其中、人们事先不知道的、但又潜在有用的信息和知识的过程。
100分钟
张三本月打电话 100分钟
张三比上月少打了 200分钟,他可能 要流失了。
• k-mode 算法:实现对离散数据的快速聚类,保留了k-means算法的 效率同时将k-means的应用范围扩大到离散数据。 • k-prototype算法:可以对离散与数值属性两种混合的数据进行聚类, 在k-prototype中定义了一个对数值与离散属性都计算的相异性度量标 准。 • k-中心点算法k -means算法对于孤立点是敏感的。为了解决这个问题, 不采用簇中的平均值作为参照点,可以选用簇中位置最中心的对象, 即中心点作为参照点。这样划分方法仍然是基于最小化所有对象与其 参照点之间的相异度之和的原则来执行的。
相关文档
最新文档