参考文章:
用于数据挖掘的聚类算法有哪些,各有何优势?
聚类算法
无监督学习算法,将大量位置标注的数据集,按照数据的内在相似性,将数据集划分为多个类别,使类别内的数据相似度比较小,而类别之间的数据相似比较大。
聚类算法的分类与代表算法为:
算法分类 | 算法含义 | 常用算法 |
---|---|---|
层次化聚类算法 | 透过一种层次架构方式,反复将数据进行分裂或聚合。 | BIRCH算法,CURE算法,CHAMELEON算法,Sequence data rough clustering算法,Between groups average算法,Furthest neighbor算法,Neares neighbor算法等。 |
划分式聚类算法 | 预先指定聚类数目或聚类中心,反复迭代逐步降低目标函数误差值直至收敛,得到最终结果。 | K-means,K-modes-Huang,K-means-CP,MDS_CLUSTER, Feature weighted fuzzy clustering,CLARANS等 |
基于模型的聚类算法 | 为每簇假定了一个模型,寻找数据对给定模型的最佳拟合,同一”类“的数据属于同一种概率分布,即假设数据是根据潜在的概率分布生成的。主要有基于统计学模型的方法和基于神经网络模型的方法,尤其以基于概率模型的方法居多。一个基于模型的算法可能通过构建反应数据点空间分布的密度函数来定位聚类。基于模型的聚类试图优化给定的数据和某些数据模型之间的适应性。 | SOM神经网络算法 |
基于密度聚类算法 | 只要邻近区域的密度(对象或数据点的数目)超过某个阈值,就继续聚类 | SGC,GCHL,DBSCAN算法、OPTICS算法、DENCLUE算法。 |
距离/相似度的计算方法总结
闵可夫斯基空间距离
在熟悉闵式距离之前需要先了解下欧氏距离与曼哈顿距离
-
欧式距离
- 衡量的是多维空间中各个点之间的绝对距离。其公式为:
- 衡量的是多维空间中各个点之间的绝对距离。其公式为: