- 1、本文档共141页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据挖掘第七章__聚类分析
CLARA算法 (1)for i=1 to 5 (2)随机地从整个数据集中抽取一个40+2k个对象的样本,调用算法PAM找出样本的k个中心点 (3)对于整个数据集中的每一个对象Oj, 判断K个中心点的哪一个与Oj 是相似的 (4)计算聚类的平均非相似性。若该值小于当前的最小值,则用其替换当前最小值,保留k个中心点 (5)开始下一轮循环 CLARA算法能够处理大规模数据集,而它的每次循环(计算)复杂度为 O(ks2+k(n-k)), 其中,s为样本集合大小,k为聚类个数,n为对象总数。 CLARA算法的有效性依赖其所选择的样本集合大小;PAM方法从给定的数据集中搜索最好的k个聚类中心(对象);CLARA算法则从所采样的数据样本集中搜索最好的是个聚类中心(对象)。如果样本集中的聚类中心不是(整个数据集中)最好的k个聚类中心,那么CLARA算法就无法发现最好的聚类结果,这也就是对效率和精度的折衷。 另一个k-medoids聚类算法类型的聚类方法,称为CLARANS------- Clustering Large Application based upon RANdomized Search(基于随机搜索的聚类算法) 将采样方法与PAM方法结合起来。但CLARANS方法与CLARA算法不同,CLARANS方法并不总是仅对样本数据集进行分析处理;CLARANS法在搜索的每一步都以某种随机方式进行采样(而CLARA算法搜索每一步所处理的数据样本是固定的)。 CLARANS方法的搜索过程可以描述成一个图,图中每个结点度代表潜在的解决方案(一组聚类中心代表),替换一个中心对象所获得新聚类就称为当前聚类的邻居。 随机产生的聚类邻居数由用户所设置的参数所限制。若发现一个更好的邻居(具有较低的方差),CLARANS方法移动到这一邻居结点,然后再开始搜索,否则当前结点就形成了一个局部最优。若发现局部最优,CLARANS方法则随机选择一个结点以便重新开始搜索(一个新的局部最优)。 五、模糊聚类算法FCM 以上介绍的几种聚类方法为“确定性分类” ,也就是说,一个数据点或者属于一个类,或者不属于一个类,而不存在重叠的情况。 在一些没有确定支持的情况中,聚类可以引入模糊逻辑概念。对于模糊集来说,一个数据点都是以一定程度属于某个类,也可以同时以不同的程度属于几个类。常用的模糊聚类算法是模糊C平均值FCM(Fuzzy C-Means)算法。 FCM算法采用误差平方和函数作为聚类准则函数: (7--10) 其中, 为第k个数据点到第个i聚类中心的距离,n为样本数;c为给定的类别数,并且 1cn m称为加权幂指数,是一个可以控制聚类结果的模糊程度的常数 ; vi为第i类的聚类中心;μ ij表示样本j属于第i类的程度, 满足 FCM算法就是要求J使达到最小值的聚类结果。因此将分别对μ ik vi求导,令它们的导数为0,并代入条件: 得: (7---11) (7---12) FCM算法是通过对(7--11)式和(7---12)式进行迭代来完成的,不断调整μ ik , vi ,求得使目标函数Jm(μ, v)最小的解 (μ ik , vi ),即为最佳模糊C聚类。 六、 各种聚类方法的比较 划分方法是优化一个评价函数来把数据集分成k个部分(k-means, k-mediod) k-prototypes结合k-means和k-modes的优点 RAM是基于k-mediod的聚类方法,计算复杂度是O(K(N-K))2 CLARA方法改进了PAM方法,提高了效率 CLARANS采用随机搜索方式改进 k-mediod ,但计算复杂度O(KN2) 分层聚类由不同层次的分割聚类组成,层次之间的分割具有嵌套关系,不必事先输入聚类块数 BIRCH(利用层次方法的平衡迭代归约和聚类) 利用CF-树的分层数据结构动态对输入数据进行分类(O(N)), 该方法可以处理数据噪声,但对输入数据比较敏感 密度聚类法利用密度函数进行聚类. DBSCAN算法 (基于高密度连接区域的密度聚类方法),它用R*树对任意形状的数据进行聚类,可以过滤噪声,计算复杂度O(NlogN) 网格聚类法利用空间量子化方法把数据
文档评论(0)