聚类分析常见算法

  • 聚类分析
    • 不存在完美的聚类分析
      • 一致、缩放、灵活(三要素)
    • K-means
      • 流程
        • 选择K个点作为初始质心
        • repeat
          • 将每个点指派到最近的质心,形成K个簇
          • 重新计算每个簇的质心
        • until 簇不发生变化或达到最大迭代次数
      • 应用
        • 通过控制k值控制图像压缩程度
    • DBScan(带噪声的密度聚类算法)
      • 流程
        • DBScan需要二个参数: 扫描半径 (eps) 和 最小包含点数(minPts) 。 任选一个未被访问(unvisited)的点开始,找出与其距离在eps之内(包括eps)的所有附近点。
        • 如果 附近点的数量 ≥ minPts,则当前点与其附近点形成一个簇,并且出发点被标记为已访问(visited)。 然后递归,以相同的方法处理该簇内所有未被标记为已访问(visited)的点,从而对簇进行扩展。
        • 如果 附近点的数量 < minPts,则该点暂时被标记作为噪声点。
        • 如果簇充分地被扩展,即簇内的所有点被标记为已访问,然后用同样的算法去处理未被访问的点。
    • MeanShift(均值漂移算法),基于密度分布的聚类算法
      • 求解一个向量,使得圆心一直往数据集密度最大的方向移动。说的再简单一点,就是每次迭代的时候,都是找到圆里面点的平均位置作为新的圆心位置。
      • 也可压缩图像,但与kmeans不同,不需指定聚类参数,模型会根据kernel的幅度值,自动计算并完成聚类,但慢,大数据量不适用
    • Agnes
      • AGNES(AGglomerative NESting)算法是凝聚的层次聚类方法。AGNES最初将每个对象作为一个簇,然后这些簇根据某些准则被一步一步地合并。

猜你喜欢

转载自blog.csdn.net/CrazyMooo/article/details/123307039