博客
关于我
[552]python实现聚类算法(6种算法)
阅读量:621 次
发布时间:2019-03-13

本文共 1448 字,大约阅读时间需要 4 分钟。

Mean-shift 算法

概述

Mean-shift 是一种基于均值迁移的无监督学习聚类算法,由 Fukunage 在 1975 年提出。该算法通过迭代优化聚类中心,最终确定数据密度最大的区域。Yizong Cheng 在 1983 年扩展了该算法,引入核函数和权重系数,使其在图像处理、聚类等领域得到了广泛应用。

核心思想

算法核心在于不断寻找新的圆心坐标,直到密度最大的区域确定。此外,圆心的选择和半径的确定将直接影响算法效率。

算法函数

在 Scikit-learn 中,sklearn.cluster Meanshift 提供了该算法的实现。主要参数包括:

  • bandwidth:初始化若未给出,默认使用 sklearn.cluster.estimate_bandwidth 计算。
  • seeds:可选初始化圆心,默认为空。
  • bin_seeding:布尔值,默认为 False,可加速算法。

主要属性:

  • cluster_centers_:聚类中心坐标数组。
  • labels_:分类标签数组。

Spectral Clustering (谱聚类)

概述

Spectral Clustering 是一种基于图论的聚类方法,其核心思想是通过特征向量进行聚类,能够识别任意形状的样本空间。该算法将样本看作顶点,样本间的相似度作为边权重,帮助找到最优图分割。

核心思想

将样本间的相似度转换为图的边权重,然后通过特征分解得到特征向量,最终确定聚类中心。


Hierarchical Clustering (层次聚类)

概述

Hierarchical Clustering 再次分解数据,将其分类到不同的层次,直到满足终止条件(如数据收敛或达到预定聚类数)。主要分为两类:

  • 凝聚:从底层逐渐合并点群,直到形成大层次聚类。
  • 分裂:从顶层逐步细分,最终形成单个点群。

核心步骤

  • 初始化所有样本为独立群。
  • 找到最接近的两个群,合并为一个新群。
  • 重新计算新群与其余群的距离。
  • 重复上述步骤,直到满足终止条件。

  • DBSCAN (基于密度的聚类)

    概述

    DBSCAN 是一种基于密度的空间聚类算法,定义一个核心点组为一个聚类。核心点需满足点密度超过设定阈值(通常通过 epsmin_samples 确定)。

    核心步骤

  • 遍历所有样本,寻找核心点。
  • 连通核心点,扩展到包含足够多样本。
  • 标记噪声点(未能满足密度条件的点)。
  • 主要参数:

    • eps:密度计算的最大距离。
    • min_samples:核心点需包含的最小样本数。

    Birch (基于层次的聚类)

    概述

    Birch 算法通过层次聚类,逐层减少数据量,找到聚类结构。其核心思想是构建特征树,叶子节点即聚类中心。

    核心思想

  • 构建特征树,叶子节点为聚类。
  • 通过内部节点的聚类特征确定聚类数量。
  • 主要参数:

    • threshold:确定聚类数量。
    • branches_factor:每个节点最多包含的子群数。

    GaussianMixtureModel (GMM) (混合高斯模型)

    概述

    GMM 不是传统聚类算法,而是概率模型,基于多高斯分布近似数据分布。每个高斯分布代表一个聚类。

    核心思想

    • 数据分布由多个高斯分布组成,每个高斯分布代表一个聚类。
    • 通过 EM 算法估计高斯分布参数。

    主要参数:

    • n_components:高斯模型数量。
    • covariance_type:协方差类型,默认为 full

    总结

    以上算法各具特色,适用于不同应用场景。选择哪种方法需根据具体需求考量。

    转载地址:http://toaaz.baihongyu.com/

    你可能感兴趣的文章
    NLP采用Bert进行简单文本情感分类
    查看>>
    NLP问答系统:使用 Deepset SQUAD 和 SQuAD v2 度量评估
    查看>>
    NLP项目:维基百科文章爬虫和分类【02】 - 语料库转换管道
    查看>>
    NLP:使用 SciKit Learn 的文本矢量化方法
    查看>>
    nmap 使用方法详细介绍
    查看>>
    Nmap扫描教程之Nmap基础知识
    查看>>
    nmap指纹识别要点以及又快又准之方法
    查看>>
    Nmap渗透测试指南之指纹识别与探测、伺机而动
    查看>>
    Nmap端口扫描工具Windows安装和命令大全(非常详细)零基础入门到精通,收藏这篇就够了
    查看>>
    NMAP网络扫描工具的安装与使用
    查看>>
    NMF(非负矩阵分解)
    查看>>
    nmon_x86_64_centos7工具如何使用
    查看>>
    NN&DL4.1 Deep L-layer neural network简介
    查看>>
    NN&DL4.3 Getting your matrix dimensions right
    查看>>
    NN&DL4.7 Parameters vs Hyperparameters
    查看>>
    NN&DL4.8 What does this have to do with the brain?
    查看>>
    nnU-Net 终极指南
    查看>>
    No 'Access-Control-Allow-Origin' header is present on the requested resource.
    查看>>
    NO 157 去掉禅道访问地址中的zentao
    查看>>
    no available service ‘default‘ found, please make sure registry config corre seata
    查看>>