当前位置:文档之家› 数据挖掘(聚类)

数据挖掘(聚类)

• AGNES和DIANA算法比较简单,但一旦一组对象被合并 或撤销,下一步的处理将在新生成的簇上进行。已做处理 不能撤消,增加新的样本对结果的影响较大。因此,如果 合并或分裂选择不当,则可能导致低质量的簇。
• 假定在开始的时候有n个簇,在结束的时候有1个簇,因此 在主循环中有n次迭代,另外算法必须计算所有对象两两 之间的距离,因此这个算法的复杂度为 O(n2),该算法对 于n很大的情况是不适用的
pCi qC j
| p q |
其中p,q分别是簇Ci 和Cj的对象,ni是簇Ci 中对 象的数目
• 算法采用最小距离定义时,簇之间合并称为最近 邻聚类算法。如果当最近的两个簇之间的距离超 过用户给定的阈值时聚类就会停止,称为单链接 算法。 • 算法采用最大距离定义时,簇之间合并称为最远 邻聚类算法。如果当最近的两个簇之间的最大距 离超过用户给定的阈值时聚类就会停止,称为全 链接算法。
划分聚类方法
• 给定n个数据对象的数据集D,及要生成的 簇数k,划分算法把数据对象组成k(k<=n) 个分区,其中每个分区代表一个簇。而且k 满足以下条件: 1.每一个簇至少包含一个对象 2.每一个对象属于且仅属于一个簇。 • 常用的划分方法 k-均值:一种基于形心的技术 k-中心点:一种基于代表对象的技术
k-means算法的不足
• 必须事先给出要生成的簇数K,而且对初始 值敏感。 • 不适合用于发现非凸形状的簇,或大小差 别很大的簇,对噪声和离群点敏感。
为了解决k-means算法对离群点敏感这个 问题,引入了k-中心点算法
k-中心点算法
• k中心点方法不采用簇中对象的平均值作为簇中心, 而选用簇中离平均值最近的对象作为簇中心。 • k-中心点方法仍然是基于最小化所有对象与其参 照点之间的相异度之和的原则来执行的,使用了 一个绝对误差标准
• 比例标度型变量:比例标度型变量是在非 线性的标度上取正的测量值,诸如指数比 例,AeBt或Ae-Bt(A和B为正的常数)。
• 混合类型的变量:在实际数据库中,数据对 象往往是用复合数据类型来描述;而且它们 常常同时包含几种数据类型。
基本聚类方法概述
• • • • 划分方法 层次方法 基于密度的方法 基于网格的方法
E是数据集中所有对象p与Ci的代表对象0i的绝对误差之和。
k-中心点算法
• 首先为每个簇随意选择一个代表对象,剩余的对象根据其 与每个代表对象的距离(此处距离不一定是欧氏距离,也 可能是曼哈顿距离)分配给最近的代表对象所代表的簇; 然后反复用非代表对象来代替代表对象,以优化聚类质量, 直到结果聚类的质量不可能被任何替换提搞。
数据矩阵(data matrix)是 一个对象-属性结构,是由n 个对象组成,利用p个属性 来进行n个对象的描述.采 用Xn×p表示
11 i1 n1
x , x12, x13,......,x1 p .......... .......... .... x , xi 2, xi3,......,xip .......... .......... .... x , xn2, xn3,......,xnp
0.6
1.9
0.8
D
2.5
2.1
0.6
0
1
E
3
1.9
0.8
1
0
A
B
C
D
E
样本点
AB
C
D
E
AB
0
1.6
2.1
1.9
C
1.6
0
0.6
0.8
D
2.1
0.6
0
1
A
E 1.9 0.8 1 0
B
C
D
E
样本点
AB
CD
E
AB
0
1.6
1.9
CD
1.6
0
0.8 A B C D E
E
1.9
0.8
0
样本点
AB
CDE
AB
0
1.6
CDE
Hale Waihona Puke 1.60A B C D E
Birch算法
• Birch算法是层次聚类算法之一,该算法引入了聚类特征 和聚类特征树(CF树)。 • CF是Birch聚类算法的核心,CF树中的节点都是由CF组 成,一个CF是一个三元组,这个三元组就代表了簇的所 有信息。给定N个d维的数据点{x1,x2,....,xn},CF定义如 下:
2 2 2 d (i, j ) (xi1 yi1) (xi 2 yi 2) ...... (xin yin)
• 簇Ci的质量可以用簇内变差度量,它是Ci中 所有对象和形心ci之间的误差的平方和,定 义为: • E是数据集中所有对象的误差的平方和;P是 空间中的点,表示给定的数据对象;ci是簇Ci: 的形心(p和ci都是多维的)
相异度d(i,j)的具体计算会因所使用 的数据类型的不同而异。常用的数 据类型: 区间标度变量 二元变量 标称型、序数型和比例标度型变量 混合类型的变量
0 d(2,1) 0 d(3,1 ) d ( 3, 2 ) : : d ( n,1) d ( n,2)
0 : ... ... 0
序号
属性1
属性2
1
2 3 4 5 6 7 8
1
2 1 2 4 5 4 5
1
1 2 2 3 3 4 4
第二次迭代:通过平均值调整对象 所在的簇,重新聚类。按离平均值 点(1.5,1)和(3.5,3)最近原则重 新分配,得到新簇(1,2,3,4), (5,6,7,8)计算新的平均值点 (1.5,1.5),(4.5,3.5) 第三次迭代:将所有点按离平均值 点(1.5,1.5)(4.5,3.5)最近原则 重新聚类调整簇,簇依然为 (1,2,3,4),(5,6,7,8),没发生 重新分配,程序结束。
k-means算法示例
序号 1 2 3 4 5 6 7 8 属性1 1 2 1 2 4 5 4 5 属性2 1 1 2 2 3 3 4 4
设n=8,k=2; 第一次迭代:随机 选择序号1和3作为 初始点。 找到离二点最近的 对象,产生二个簇 {1,2}和{3,4,5,6,7,8}
均值点分别为 (1.5,1)(3.5,3)
• 标称型变量:是二元变量的一个扩展。标 称变量可对两个以上的状态进行描述,如: 红,橙,蓝,绿,青,蓝,紫。
• 序数型变量:一个序数型变量可是连续的, 也可是离散的。离散的序数型变量与标称 型变量相似。连续的序数型变量像一组未 知范围的连续数据,类似于区间标度变量, 但它没有单位,值的相对位置要比它的实 际数值有意义得多。
两个簇之间的距离度量方法
最 小 距 离 最 大 距 离 均 值 距 离 平 均 距 离 d min (Ci , C j ) min pCi ,qC j p q d max (Ci , C j ) max pCi ,qC j p q d mean (Ci , C j ) p q d avg (Ci , C j ) 1 ni .n j
k-均值:一种基于形心的技术
• 基于形心的划分技术使用簇Ci的形心代表该 簇。从概念上来讲,簇的形心是它的中心 点,一般来说用分配给该簇的点的均值来 定义。 • 对象p∈Ci与该簇的代表ci之差用dist(p,ci) 度量,dist(x,y)是点x,y的欧氏距离。 欧氏距离:
i=(xi1,xi2,…,xin) 和 j=(yj1,yj2,…,yjn)
• 曼哈顿距离:
i=(xi1,xi2,…,xip) j=(yj1,yj2,…,yjp)
PAM算法
• PAM是最早提出的k-中心点算法之一,它 选用簇中最中心的对象作为代表对象。 • 为了判定一个非代表对象Orandom是否可以 替代当前一个代表对象Oi(中心点),对于每 一个对象p,下面的四种情况被考虑:
k-means 算法基本步骤
1.从D(包含n个对象的数据集)中任意选择k 个对象作为初始簇中心; 2. 根据簇中对象的均值,将每个对象分配到 最相似的簇; 3. 更新簇均值,即重新计算每个簇中对象的 均值; 4.until不再发生变化;
不能保证k一均值方法收敛于全局最优解, 并且它常常止于于一个局部最优解。结 果可能依赖于初始簇中心的随机选择。
• 数据对象 + 簇中心 ▬ 替换前 --- 替换后
Oi +
p
Oj +
Oi +
p
Oj + + Orandom
+ Orandom
1. 重新分配给Oi
2. 重新分配给Orandom
Oi + p
Oj + + Orandom
Oi +
p
Oj +
+ Orandom
4. 重新分配给Orandom
3. 不发生变化
相异度矩阵是一个对象-对象结构.它存放所有n个 对象两两之间所形成的差异性(相似性).相异度矩 阵采用d(i,j) n×n的下三角矩阵表示。d(i,j)是对 象i和j之间相异性的量化表示,通常为非负值,两 个对象越相似或“接近”,其值越接近0,越不同, 其值越大。 相异度矩阵可用距离公式计算得到,相异度也称 为距离(主要欧氏距离和曼哈顿距离)。
k均值方法与k中心点方法比较
• 存在噪声和离群点时,k均值方法敏感,采 用k中心点方法。
• k均值方法与k中心点方法都需要用户指定 簇数k • 复杂度比较 k均值方法:O(nkt) n是对象总数 ,k是簇数,t是迭代次数 k中心点方法:O(k(n-k)2)
k中心点方法在应用于大数据集时,没有良好的可伸缩,采用CLARA方法。
最短距离法举例
样本点 A B C D E A 0 0.4 2 2.5 3 B 0.4 0 1.6 2.1 1.9 C 2 1.6 0 0.6 0.8 D 2.5 2.1 0.6 0 1 E 3 1.9 0.8 1 0
相关主题