zoukankan      html  css  js  c++  java
  • 西瓜书机器学习算法脉络梳理之聚类

    什么是聚类任务

    “无监督学习”中研究最多,应用最广的学习任务,除此之外,还有密度估计(density estimation)和异常检测(anomaly detection)。在无监督学习中,训练样本的标记信息是未知的,目标是通过对无标记训练样本的学习揭示数据的内在性质及规律,为进一步的数据分析提供基础。

    聚类(clustering)将数据集中的样本划分为若干个通常不相交的子集,每个子集称为一个“簇”(cluster),每个簇可能对应一个潜在的概念(类别)。这些概念对聚类算法而言,事先是未知的,聚类过程仅能自动形成簇结构,簇所对应的概念语义需由使用者把握和命名。

    聚类能做什么,如何用?

             聚类既能作为一个单独过程,找寻数据内在的分布结构;也可作为分类等其他学习任务的前驱过程:根据聚类结果,将每个簇定义为一个类,然后再基于这些类训练分类模型。

    如何判别聚类的好坏?

    即采用什么样的性能度量指标?

    比较好的距离结果满足同一簇的样本近可能彼此相似,不同簇样本尽可能不同。即聚类结果的“簇内相似度”(intra-cluster similarity)高且“簇间相似度”(inter-cluster similarity)低。

            聚类性能度量也称聚类“有效性指标”(validity index)。大致有两类:一类将聚类结果与某个“参考模型”(reference model)进行比较,称为“外部指标”(external index);另一类是直接考察聚类结果而不利用任何参考模型,称为“内部指标”(internal index)。

    常用的外部指标

        Jaccard 系数(Jaccard Coefficient,简称JC)

        FM指数(Fowlkes and Mallows Index,简称 FMI)

        Rand指数(Rand Index,简称 RI)

    常用的内部指标

        DB指数(Davies-Bouldin Index,简称DBI)

        Dunn指数(Dunn Index,简称DI)

    在使用内部指标度量聚类结果时,需要使用样本间的距离度量。

    常用距离度量:

        闵可夫斯基距离(Minkowski distance):针对连续属性(continuous attribute)和有序属性(ordinal attribute)

        VDM 距离(Value Difference Metric):针对无序属性(non-ordinal)

        注:属性分为连续属性和离散属性,离散属性又分为有序属性和无序属性。

    聚类算法的分类

    聚类算法大体可分为三类:原型聚类、密度距离和层次聚类。其基本思想具体如下:

    原型聚类

    亦称“基于原型的聚类”(prototype-based clustering),此类算法假设聚类结构能通过一组原型刻画,在现实聚类任务中极为常用。通常情况下,算法先对原型进行初始化,然后对原型进行迭代更新求解。采用不同的原型表示、不同的求解方法,将产生不同的算法。常见的原型聚类算法有K均值算法、学习向量量化(Learning Vector Quantization, LVQ)和高斯混合聚类(Mixture of Gaussian)。

     

    密度聚类

    亦称“基于密度的聚类”(density-based clustering),此类算法假设聚类结构能通过样本分布的紧密程度确定。通常情形下,密度聚类算法从样本密度的角度来考察样本之间的可连续性,并基于可连续样本不断扩展聚类簇,以获得最终的聚类结果。常见的密度聚类算法有DBSCAN(Density-Based Spatial Clustering of Application with Noise)

     

    层次聚类

    层次聚类(hierarchical clustering)试图在不同层次对数据集进行划分,从而形成树形的聚类结构。数据集的划分可采用“自底向上”的聚合策略,也可采用“自顶向下”的分拆策略。

    AGNES(Agglomerative NESting)是一种采用自底向上聚合策略的层次聚类算法。它将数据集中的每个样本看作是一个初始聚类簇,然后在算法运行的每一步中找出距离最近的两个聚类簇进行合并,该过程不断重复,直至达到预设的聚类簇个数。

    参考资料

    [1] 周志华. 机器学习. 北京:清华大学出版社. 2016.197~217

  • 相关阅读:
    TP
    vim manual 个人笔记
    关于动画属性
    过渡
    关于 css3 的filter属性
    html 中行内元素和块级元素区别
    JS以不同的格式保存文件内容
    64位Kali无法顺利执行pwn1问题的解决方案
    鱼龙混杂 · 数据结构学习笔记(01)
    Terminal(终端) 在 OS X下如何快速调用
  • 原文地址:https://www.cnblogs.com/klchang/p/11482157.html
Copyright © 2011-2022 走看看