聚类分析

摘自《数据挖掘导论》

聚类分析仅根据在数据中发现的描述对象及其关系的信息,将数据对象分组。其目标是,组内对象相互之间是相似的(相关的),而不同组之间的对象是不同的(不相关的)。组间的相似(同性质)越大,组建的差异越大,聚类就越好。

不同的簇类型如下(也是聚类算法的依据):

[img]http://dl2.iteye.com/upload/attachment/0098/8038/87e6c1a3-2db9-3f2c-8c1a-cea2444acc11.jpg[/img]

主要注意根据距离和密度的聚类。

常见的聚类算法包括K均值、凝聚的层次聚类、DBSCAN。

K均值先假设集合有K个簇,开始时随机放置K个质心,将待分类数值归于离它最近的质心,然后不断移动质心,最后使得误差最小。K均值计算过程如下:


[img]http://dl2.iteye.com/upload/attachment/0098/8049/2c0f5be4-90b0-3940-aa6f-cd41306d58ea.jpg[/img]


由于K均值的质心开始时是随机放置的,所以结果有一定的随机性,可能不是全局最优,所以要多次尝试然后选择最优解。还有其他方法来减少随机性(例如二分K均值)。

K均值的有点事计算量小,理解简单,缺点是对于非球星、不同密度的簇聚类效果不好。

凝聚层次聚类

凝聚层次聚类可以分为凝聚和分裂两种过程,他们互为逆过程。

凝聚聚类开始将每个个体当做一个簇,每次操作将距离最近的两个簇合并为一个簇,只到集合只剩一个簇。


[img]http://dl2.iteye.com/upload/attachment/0098/8051/f87b663b-b487-385c-a690-60f9949dad52.jpg[/img]


DBCAN

DBSCAN是一个根据密度的聚类算法。

DBSCAN首先确定有限半径,然后划分核心点、边缘点和噪音点:


[img]http://dl2.iteye.com/upload/attachment/0098/8053/684a0908-07c5-314b-a7ea-9deadddc6e3a.jpg[/img]

DBSCAN的算法可以描述为:


[img]http://dl2.iteye.com/upload/attachment/0098/8055/3baef97d-410d-3700-9cd5-759e15812381.jpg[/img]

DBSCAN是有效的根据密度的聚类算法,能够有效划分任意形状和大小的簇。缺点是有效半径需要估算,对于簇密度变化太大以及高维数据,簇密度较困难。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值