文件名称:聚类实例-probability and statistics for computer science 无水印原版pdf
文件大小:1.28MB
文件格式:PDF
更新时间:2024-07-03 00:21:59
hadoop spark java hive hbase
1.1 聚类实例 1.1.1 算法说明 聚类(Cluster analysis)有时也被翻译为簇类,其核心任务是:将一组目标 object 划分为 若干个簇,每个簇之间的 object 尽可能相似,簇与簇之间的 object 尽可能相异。聚类算法是机 器学习(或者说是数据挖掘更合适)中重要的一部分,除了最为简单的 K-Means 聚类算法外, 比较常见的还有层次法(CURE、CHAMELEON 等)、网格算法(STING、WaveCluster 等),等 等。 较权威的聚类问题定义:所谓聚类问题,就是给定一个元素集合 D,其中每个元素具有 n 个 可观察属性,使用某种算法将 D 划分成 k 个子集,要求每个子集内部的元素之间相异度尽可能低, 而不同子集的元素相异度尽可能高。其中每个子集叫做一个簇。 K-means 聚类属于无监督学习,以往的回归、朴素贝叶斯、SVM 等都是有类别标签 y 的, 也就是说样例中已经给出了样例的分类。而聚类的样本中却没有给定 y,只有特征 x,比如假设宇 宙中的星星可以表示成三维空间中的点集 。聚类的目的是找到每个样本 x 潜在的类别 y,并 将同类别 y 的样本 x 放在一起。比如上面的星星,聚类后结果是一个个星团,星团里面的点相互 距离比较近,星团间的星星距离就比较远了。 与分类不同,分类是示例式学习,要求分类前明确各个类别,并断言每个元素映射到一个类 别。而聚类是观察式学习,在聚类前可以不知道类别甚至不给定类别数量,是无监督学习的一种。 目前聚类广泛应用于统计学、生物学、数据库技术和市场营销等领域,相应的算法也非常多。 1.1.2 实例介绍 在该实例中将介绍 K-Means 算法,K-Means 属于基于平方误差的迭代重分配聚类算法,其 核心思想十分简单: 随机选择 K 个中心点; 计算所有点到这 K 个中心点的距离,选择距离最近的中心点为其所在的簇; 简单地采用算术平均数(mean)来重新计算 K 个簇的中心;