聚类是将数据点归到多个簇当中,并将相同的数据点出于同一个簇,而不相似的数据点处于不同的簇
-
聚类性能度量(看聚类结果有无参考模型)大致有两类:“内部指标”和“外部指标”
内部指标有:Jaccard系数、FM指数、Rand指数(值在[0,1]内,越大越好)
外部指标有:DB指数(越小越好)、Dunn指数(越大越好) -
距离计算需要满足:非负性、同一性、对称性、直递性(三角不等式)
-
最常用的是闵科夫斯基距离(一维是曼哈顿距离、二维是欧氏距离)
常用的聚类算法:K-mean聚类、层次聚类
-
K-mean算法的工作流程:首先随机确定K个初始点作为质心,然后将每个点分配到最近的质心,在重新计算质心,这个过程不断重复直至准则函数收敛或者质心不再变化,最后将每个簇的质心更新为该簇所有点的平均值。
优点:1)简单,易于理解和实现;2)时间复杂度低。
缺点: 1)需要自主确定簇的数目,即K值;2)对异常值和噪声敏感;3)只能处理数值型数据;4)不能处理非凸数据。 -
凝聚层次聚类的算法流程:将每个样本看作一个初始聚类簇,然后在算法运行的每一步找出距离最近的两个簇进行合并,该过程不断重复,直至聚成一个大簇。
优点:1)距离和规则的相似度容易定义;2)可不预设簇的个数。
缺点: 1)计算复杂度高;2)对异常值敏感;3)算法可能聚成链状
扩展:有监督学习和无监督学习的区别
最主要的区别是:对训练数据进行检查,看训练数据是否有标签。
有监督学习的训练数据既有特征也有标签,可以分为两大类回归分析和分类,回归针对的是连续数据,而分类针对的是离散数据。 而无监督学习的数据只有特征而无标签,包括聚类和关联分析。