数据聚类算法
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据聚类算法
数据聚类算法是一种无监督学习方法,用于将数据集中的对象(如数据点、样本等)按照某种相似性度量方法划分为不同的簇。
聚类算法的目标是使得同一个簇内的数据对象尽可能相似,不同簇之间的数据对象尽可能不同。
以下是一些常见的聚类算法:
1.K-均值聚类:K-均值可能是最知名的聚类算法。
首先选择一些要使用的类/组,并随机初始化它们各自的中心点(质心)。
每个数据点通过计算该点与每个簇中心之间的距离来进行分类,根据最小距离,将该点分类到对应中心点的簇中。
然后根据这些已分类的点,重新计算簇中所有向量的均值,来确定新的中心点。
重复以上步骤来进行一定数量的迭代,或者直到簇中心点在迭代之间变化不大。
K-Means 算法的优势在于它的速度非常快,因为我们所做的只是计算点和簇中心之间的距离。
2.自底向上法:该方法在一开始每个数据对象都是一个簇,计算数据对象之间的距离,每次将距离最近的点合并到同一个簇。
然后计算簇与簇之间的距离,将距离最近的簇合并为一个大簇。
不停地合并,直到合成了一个簇,或者达到某个终止条件为止。
代表算法是AGNES(AGglomerativeNESing)算法。
3.自顶向下法:该方法在一开始所有个体都属于一个簇,然后逐渐细分为更小的簇,直到最终每个数据对象都在不同的簇中,或者达到某个终止条件为止。
代表算法是DIANA(DivisiveANAlysis)算法。
4.密度聚类:基于密度的聚类方法的主要目标是寻找被低密度区域分离的高密度区域。
DBSCAN、OPTICS是其中的代表算法。