精华内容
下载资源
问答
  • 【数据挖掘】聚类算法 简介 ( 基于划分的聚类方法 | 基于层次的聚类方法 | 基于密度的聚类方法 | 基于方格...
    千次阅读
    2020-05-02 22:42:14



    I . 聚类主要算法



    聚类主要算法 :


    ① 基于划分的聚类方法 : K-Means 方法 ;

    ② 基于层次的聚类方法 : Birch ;

    ③ 基于密度的聚类方法 : DBSCAN ( Density-Based Spatial Clustering of Applications with Noise ) ;

    ④ 基于方格的方法 ;

    ⑤ 基于模型的方法 : GMM 高斯混合模型 ;



    II . 基于划分的聚类方法



    基于划分的方法 简介 : 基于划分的方法 , 又叫基于距离的方法 , 基于相似度的方法 ;


    ① 概念 : 给定 n n n 个数据样本 , 使用划分方法 , 将数据构建成 k k k 个划分 ( k ≤ n ) (k \leq n) (kn) , 每个划分代表一个聚类 ;

    ② 分组 : 将数据集 分成 k k k 组 , 每个分组至少要有一个样本 ;

    ③ 分组与样本 对应关系 : 每个分组有 1 1 1 个或多个样本对象 ( 1 1 1 对多 ) , 每个对象同时只能在 1 1 1 个分组中 ( 1 1 1 1 1 1 ) ;

    ④ 硬聚类 与 软聚类 : 每个数据对象只能属于一个组 , 这种分组称为硬聚类 ; 软聚类每个对象可以属于不同的组 ;



    III . 基于层次的聚类方法



    1 . 基于层次的聚类方法 概念 : 将数 据集样本对象 排列成 树结构 , 称为 聚类树 , 在指定的层次 ( 步骤 ) 上切割数据集样本 , 切割后时刻的 聚类分组 就是 聚类算法的 聚类结果 ;


    2 . 基于层次的聚类方法 : 一棵树可以从叶子节点到根节点 , 也可以从根节点到叶子节点 , 基于这两种顺序 , 衍生出两种方法分支 , 分别是 : 聚合层次聚类 , 划分层次聚类 ;


    3 . 聚合层次聚类 ( 叶子节点到根节点 ) : 开始时 , 每个样本对象自己就是一个聚类 , 称为 原子聚类 , 然后根据这些样本之间的 相似性 , 将这些样本对象 ( 原子聚类 ) 进行 合并 ;

    常用的聚类算法 : 大多数的基于层次聚类的方法 , 都是 聚合层次聚类 类型的 ; 这些方法从叶子节点到根节点 , 逐步合并的原理相同 ; 区别只是聚类间的相似性计算方式不同 ;


    4 . 划分层次聚类 ( 根节点到叶子节点 ) : 开始时 , 整个数据集的样本在一个总的聚类中 , 然后根据样本之间的相似性 , 不停的切割 , 直到完成要求的聚类操作 ;


    5 . 算法性能 : 基于层次的聚类方法的时间复杂度为 O ( N 2 ) O(N^2) O(N2) , 如果处理的样本数量较大 , 性能存在瓶颈 ;



    IV . 聚合层次聚类 图示



    1 . 聚合层次聚类 图示 :

    在这里插入图片描述

    ① 初始状态 : 最左侧 五个 数据对象 , 每个都是一个聚类 ;

    ② 第一步 : 分析相似度 , 发现 a , b a , b a,b 相似度很高 , 将 { a , b } \{a ,b\} {a,b} 分到一个聚类中 ;

    ③ 第二步 : 分析相似度 , 发现 d , e d, e d,e 相似度很高 , 将 { d , e } \{d, e\} {d,e} 分到一个聚类中 ;

    ④ 第三步 : 分析相似度 , 发现 c c c d , e d,e d,e 相似度很高 , 将 c c c 数据放入 { d , e } \{d, e\} {d,e} 聚类中 , 组成 { c , d , e } \{c,d, e\} {c,d,e} 聚类 ;

    ⑤ 第四步 : 分析相似度 , 此时要求的相似度很低就可以将不同的样本进行聚类 , 将前几步生成的两个聚类 , 合并成一个聚类 { a , b , c , d , e } \{a, b, c, d, e\} {a,b,c,d,e} ;


    2 . 切割点说明 : 实际进行聚类分析时 , 不会将所有的步骤走完 , 这里提供四个切割点 , 聚类算法进行聚类时 , 可以在任何一个切割点停止 , 使用当前的聚类分组当做聚类结果 ;


    ① 切割点 1 1 1 : 在切割点 1 1 1 停止 , 会得到 5 5 5 个聚类分组 , { a } \{a\} {a} , { b } \{b\} {b}, { c } \{c\} {c}, { d } \{d\} {d} , { e } \{e\} {e} ;

    ② 切割点 2 2 2 : 在切割点 2 2 2 停止 , 会得到 4 4 4 个聚类分组 , { a , b } \{a, b\} {a,b} , { c } \{c\} {c}, { d } \{d\} {d} , { e } \{e\} {e} ;

    ③ 切割点 3 3 3 : 在切割点 3 3 3 停止 , 会得到 3 3 3 个聚类分组 , { a , b } \{a, b\} {a,b} , { c } \{c\} {c}, { d , e } \{d, e\} {d,e} ;

    ④ 切割点 4 4 4 : 在切割点 4 4 4 停止 , 会得到 2 2 2 个聚类分组 ; { a , b } \{a, b\} {a,b} , { c , d , e } \{c, d, e\} {c,d,e} ;

    ⑤ 走完整个流程 : 会得到 1 1 1 个聚类分组 , { a , b , c , d , e } \{a, b ,c, d, e\} {a,b,c,d,e} ;



    V . 划分层次聚类 图示



    1 . 划分层次聚类 图示 :

    在这里插入图片描述


    ① 初始状态 : 最左侧 五个 数据对象 , 属于一个聚类 ;

    ② 第一步 : 分析相似度 , 切割聚类 , 将 { c , d , e } \{c,d, e\} {c,d,e} { a , b } \{a ,b\} {a,b} 划分成两个聚类 ;

    ③ 第二步 : 分析相似度 , 将 { c , d , e } \{c,d, e\} {c,d,e} 中的 { c } \{c\} {c} { d , e } \{d, e\} {d,e} 划分成两个聚类 ;

    ④ 第三步 : 分析相似度 , 将 { d , e } \{d, e\} {d,e} 拆分成 { d } \{d\} {d} { e } \{e\} {e} 两个聚类 ;

    ⑤ 第四步 : 分析相似度 , 将 { a , b } \{a ,b\} {a,b} 拆分成 { a } \{a\} {a} { b } \{b\} {b} 两个聚类 , 至此所有的数据对象都划分成了单独的聚类 ;


    2 . 切割点说明 : 实际进行聚类分析时 , 不会将所有的步骤走完 , 这里提供四个切割点 , 聚类算法进行聚类时 , 可以在任何一个切割点停止 , 使用当前的聚类分组当做聚类结果 ;


    ① 切割点 1 1 1 : 在切割点 1 1 1 停止 , 会得到 1 1 1 个聚类分组 , { a , b , c , d , e } \{a, b ,c, d, e\} {a,b,c,d,e} ;

    ② 切割点 2 2 2 : 在切割点 2 2 2 停止 , 会得到 2 2 2 个聚类分组 ; { a , b } \{a, b\} {a,b} , { c , d , e } \{c, d, e\} {c,d,e} ;

    ③ 切割点 3 3 3 : 在切割点 3 3 3 停止 , 会得到 3 3 3 个聚类分组 , { a , b } \{a, b\} {a,b} , { c } \{c\} {c}, { d , e } \{d, e\} {d,e}$ ;

    ④ 切割点 4 4 4 : 在切割点 4 4 4 停止 , 会得到 4 4 4 个聚类分组 , { a , b } \{a, b\} {a,b} , { c } \{c\} {c}, { d } \{d\} {d} , { e } \{e\} {e} ;

    ⑤ 走完整个流程 : 会得到 5 5 5 个聚类分组 , { a } \{a\} {a} , { b } \{b\} {b}, { c } \{c\} {c}, { d } \{d\} {d} , { e } \{e\} {e} ;



    VI . 基于层次的聚类方法 切割点选取



    1 . 算法终止条件 ( 切割点 ) : 用户可以指定聚类操作的算法终止条件 , 即上面图示中的切割点 , 如 :


    ① 聚类的最低个数 : 聚合层次聚类中 , n n n 个样本 , 开始有 n n n 个聚类 , 逐步合并 , 聚类个数逐渐减少 , 当聚类个数达到最低值 m i n min min , 停止聚类算法 ;

    ② 聚类最高个数 : 划分层次聚类中 , n n n 个样本 , 开始有 1 1 1 个聚类 , 逐步划分 , 聚类个数逐渐增加 , 当聚类个数达到最大值 m a x max max , 停止聚类算法 ;

    ③ 聚类样本的最低半径 : 聚类的数据样本范围不能无限扩大 , 指定一个阈值 , 只有将该阈值内的样本放入一组 ; 半径指的是所有对象距离其平均点的距离 ;


    2 . 切割点回退问题 : 切割点一旦确定 , 便无法回退 ; 这里以聚合层次聚类为例 :


    ① 处于切割点 4 4 4 : 如已经执行到了步骤三 , 此时处于切割点 4 4 4 , 聚类分组为 { a , b } \{a, b\} {a,b} , { c , d , e } \{c, d, e\} {c,d,e} ;

    ② 试图回退到 切割点 3 3 3 : 想要会回退到切割点 3 3 3 的状态 , 视图将聚类分组恢复成 { a , b } \{a, b\} {a,b} , { c } \{c\} {c}, { d , e } \{d, e\} {d,e} ;

    ③ 无法回退 : 该操作是无法实现的 , 聚类分组一旦 合并 或 分裂 , 此时就无法回退 ;



    VII . 基于密度的方法



    1 . 基于距离聚类的缺陷 : 很多的聚类方法 , 都是 基于样本对象之间的距离 ( 相似度 ) 进行的 , 这种方法对于任意形状的分组 , 就无法识别了 , 如下图左侧的聚类模式 ; 这种情况下可以使用基于密度的方法进行聚类操作 ;

    基于距离的方法 , 是基于欧几里得距离函数得来 , 其基本的形状都是球状 , 或凸形状 , 如下图右侧的形状 ; 无法计算出凹形状 , 如下图左侧的形状 ;

    在这里插入图片描述

    2 . 基于密度的聚类方法 : 相邻的区域内 样本对象 的密度超过某个阈值 , 聚类算法就继续执行 , 如果周围区域密度都很小 , 那么停止聚类方法 ;


    ① 密度 : 某 单位大小 区域内的样本对象个数 ;

    ② 聚类分组要求 : 在聚类分组中 , 每个分组的数据样本密度都 必须达到密度要求的最低阈值 ;


    3 . 基于密度的聚类方法 算法优点 :


    ① 排除干扰 : 过滤噪音数据 , 即密度很小 , 样本分布稀疏的数据 ;

    ② 增加聚类模式复杂度 : 聚类算法可以识别任意形状的分布模式 , 如上图左侧的聚类分组模式 ;



    VIII . 基于方格的方法



    1 . 基于方格的方法 : 将数据空间划分成 一个个方格 , 在这些方格数据结构上 , 将每个方格中的数据样本 , 当做一个数据处理 , 进行聚类操作 ;


    2 . 基于方格的方法优点 : 处理速度很快 , 将每个方格都作为一个数据 , 如果分成 少数的几个方格进行聚类操作 , 聚类瞬间完成 ; 其速度与数据集样本个数无关 , 与划分的数据方格个数有关 ;


    3 . 局限性 : 该方法的错误率很高 ;



    IX . 基于模型的方法



    基于模型的方法


    ① 基于统计的方法 : GMM 高斯混合模型 ;

    ② 神经网络方法 ;

    更多相关内容
  • 鉴于传统方法不能直接有效地对多元时间序列数据进行聚类分析,提出一种基于分量属性近邻传播的多元时间序列数据聚类方法.通过动态时间弯曲方法度量多元时间序列数据之间的总体距离,利用近邻传播聚类算法分别对数据...
  • Witten和Tibshirani(2010)的稀疏聚类方法的Python实现。 演示结果 每个样本都具有1000个功能,其中1%具有参考价值。 层次聚类 稀疏层次聚类 职能 稀疏层次聚类 稀疏KMeans聚类 稀疏层次聚类的转弯参数选择 稀疏...
  • 传统的主成分聚类分析对异常值特别敏感,基于MCD估计的主成分聚类方法虽然对异常值具有防御作用,但是在高维数据下MCD估计的偏差过大,其稳健性显著降低,而且当维数大于观测值个数时MCD估计失效。为此本文提出了基于...
  • 基于K-means聚类方法的三维点云模型分割.pdf
  • 针对移动互联网流量识别问题,基于多项性能评估指标,分析K-均值和谱聚类算法在不同特征集合或不同识别目标流量数据集上的聚类性能,并提出基于多特征集合的集成聚类方法。比较分析实验表明,相同聚类方法在不同特征...
  • 一种基于近邻表示的聚类方法.pdf
  • 基于密度的一种聚类方法(DBSCAN)源码 ,里面包含一个简单易懂的例子,讲述了DBSCAN,将简单的数据集进行DBSCAN聚类,最终将聚类的结果绘制成为图形化。
  • 大型数据库中聚类方法的分析.pdf
  • 基于OPTICS算法的恶意软件聚类方法研究.pdf
  • 大数据中一种基于语义特征阈值的层次聚类方法.pdf
  • 基于K-Means的搜索结果聚类方法.pdf
  • 一种出租车载客轨迹空间聚类方法.pdf
  • 针对教育资源元素材种类多、独立性强等特点,研究了概念聚类方法解决领域知识的分类和归并问题,并实现了概念的动态聚类算法和归并算法,分析了该算法的效率和聚类准确性.
  • 基于边界距离的多向量文本聚类方法.pdf
  • 基于模拟退火粒子群算法的FCM聚类方法.pdf
  • 基于随机投影的场景文本图像聚类方法研究.pdf
  • 一种改进的符号化时间序列聚类方法.pdf
  • 一种基于萤火虫算法的模糊聚类方法.pdf
  • 基于模糊哈希特征表示的恶意软件聚类方法.pdf
  • 基于改进CRITIC法的加权聚类方法.pdf
  • 城市功能分区的空间聚类方法研究及其应用——以济南市为例.pdf
  • 基于稀疏子空间的视频人脸聚类方法
  • 基于能够自动确定聚类数目的目的,采用DBI度量,提出一种层次初始的聚类个数自适应的聚类方法(简称DHIKM)。通过UCI数据集和仿真数据上的实验,证明DHIKM可以在采样数据中快速找到合适的聚类个数,实验结果表明该...
  • %该代码实现了彩色图像分割的聚类方法的比较 % 测试方法包括: 基于%斜率差异分布的聚类% 大津聚类% 期望最大化聚类% 模糊 Cmeans 聚类% Kmeans 聚类 %%%分割的目的是将物体与背景区分开来%%%双标签分割 % by 郑州...
  • 针对标签传播方法在标签传播过程中具有较强不确定性,以及算法对网络结构较为敏感等问题,提出一种基于中心度的标签传播时间序列聚类方法;通过构建时间序列网络空间结构,将每条时间序列看作一个节点,根据每个节点的...
  • 实验报告——Kmeans聚类方法.docx
  • 四种聚类方法之比较

    2020-10-25 17:22:46
    介绍了较为常见的k-means、层次聚类、SOM、FCM等四种聚类算法,阐述了各自的原理和使用步骤,利用国际通用测试数据集IRIS对这些算法进行了验证和比较。结果显示对该测试类型数据,FCM和k-means都具有较高的准确度,...
  • 针对这些问题,提出一种基于位置信息熵的局部敏感哈希聚类方法。通过对生物序列使用 K 词计算其标准熵,将标准熵作为局部敏感哈希函数簇的特征向量,计算特征矩阵并应用于生物序列聚类。实验结果表明,该算法能够...
  • 针对标题文本聚类中的聚类结果不稳定问题,提出一种基于聚类融合的标题文本聚类方法。该方法对标题文本的特征词进行筛选,将标题文本转化为特征词集合;提出基于统计和语义的相似度计算方法,计算特征词集合间的相似度;...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 126,513
精华内容 50,605
关键字:

聚类方法

友情链接: upload_image.zip