机器学习——聚类算法详解

news/2024/12/14 21:05:50/

1.聚类问题

1)聚类问题与核心概念

聚类算法做的事情,就是对无标签的数据,基于数据分布进行分群分组,使得相似的数据尽量落在同一个簇内。

聚类算法详解; 聚类问题; 核心概念;

 

我们先对比区分一下聚类和分类

  • 聚类是一种无监督学习,而分类是一种有监督的学习。
  • 聚类只需要人工指定相似度的标准和类别数就可以,而分类需要从训练集学习分类的方法

聚类算法详解; 聚类问题; 分类 V.S. 聚类; 

2)主流聚类算法

我们先对聚类算法做个了解,主流的聚类算法可以分成两类:划分聚类(Partitioning Clustering)和层次聚类(Hierarchical Clustering)。他们的主要区别如图中所示:

划分聚类算法会给出一系列扁平结构的簇(分开的几个类),它们之间没有任何显式的结构来表明彼此的关联性

  • 常见算法有 K-Means / K-Medoids、Gaussian Mixture Model (高斯混合模型)、Spectral Clustering(谱聚类)、Centroid-based Clustering等。

层次聚类会输出一个具有层次结构的簇集合,因此能够比划分聚类输出的无结构簇集合提供更丰富的信息层次聚类可以认为是是嵌套的划分聚类

  • 常见算法有 Single-linkage、Complete-linkage、Connectivity-based Clustering等。

这两类算法在聚类过程中用到的具体算法不一样。聚类算法详解; 主流聚类算法; 划分聚类 V.S. 层次聚类;

 

1.K-Means聚类算法

K-Means算法是聚类算法中一个非常基础的算法,同时应用又非常广泛。

1)K-Means算法核心概念

我们提到了聚类算法要把 n个数据点按照分布分成k类。我们希望通过聚类算法得到 k个中心点,以及每个数据点属于哪个中心点的划分。

  • 中心点可以通过迭代算法来找到,满足条件:所有的数据点到聚类中心的距离之和是最小的。
  • 中心点确定后,每个数据点属于离它最近的中心点。

聚类算法详解; K-Means聚类算法; 算法核心概念;

2)K-Means算法步骤

K-Means 采用 EM算法 迭代确定中心点。流程分两步:

  • ① 更新中心点:初始化的时候以随机取点作为起始点;迭代过程中,取同一类的所有数据点的重心(或质心)作为新中心点。
  • ② 分配数据点:把所有的数据点分配到离它最近的中心点。

重复上面的两个步骤,一直到中心点不再改变为止。过程如图所示:

聚类算法详解; K-Means聚类算法; 算法步骤;

聚类算法详解; K-Means聚类算法; 算法步骤; 

2.层次聚类算法

相比于 K-Means 这类划分聚类,我们有另外一类层次化聚类算法。

1)层次聚类 vs 划分聚类

划分聚类得到的是划分清晰的几个类,而层次聚类最后得到的是一个树状层次化结构。

聚类算法详解; 层次聚类算法; 划分聚类 V.S. 层次聚类; 3. Birch算法

Birch(Balanced Iterative Reducing and Clustering using Hierarchies)是层次聚类的典型代表,天生就是为处理超大规模数据集而设计的,它利用一个树结构来快速聚类,这个树结构类似于平衡B+树,一般将它称之为聚类特征树(Clustering Feature Tree,简称CF Tree)。这颗树的每一个节点是由若干个聚类特征(Clustering Feature,简称CF)组成。

    聚类特征(CF):每一个CF都是一个三元组,可以用(N,LS,SS)表示。

N代表了这个CF中拥有的样本点的数量

LS代表了这个CF中拥有的样本点各特征维度的和向量

SS代表了这个CF中拥有的样本点各特征维度的平方和

    比如:CF中含有N=5个点,以两维样本点值为:

(3,4)、(2,6)、(4,5)、(4,7)、(3,8)

    然后计算:

        LS=(3+2+4+4+3,4+6+5+7+8)=(16,30)

        SS =(32+22+42+42+32,42+62+52+72+82)=(54,190)

CF有一个很好的性质——满足线性关系,即:

CF1+CF2=(N1+N2,LS1+LS2,SS1+SS2)

优点聚类速度快,可以识别噪音点,还可以对数据集进行初步分类的预处理;

缺点有:对高维特征数据、非凸数据集效果不好;由于CF个数的限制会导致与真实类别分布不同.

Mini Batch K-means一般用于类别数适中或者较少的时候,而BIRCH适用于类别数比较大的情况,除此之外,BIRC还可以做一些异常点检测

4.DB-SCAN算法

1)DB-SCAN算法

接下来我们学习另外一个聚类算法:DB-SCAN 算法。

DB-SCAN 是一个基于密度的聚类。如下图中这样不规则形态的点,如果用 K-Means,效果不会很好。而通过 DB-SCAN 就可以很好地把在同一密度区域的点聚在一类中。

聚类算法详解; DB-SCAN V.S. K-Means; 

聚类算法详解; DB-SCAN算法; 关键概念图解;

5. OPTICS聚类算法

基础


OPTICS聚类算法是基于密度的聚类算法,全称是Ordering points to identify the clustering structure,目标是将空间中的数据按照密度分布进行聚类,其思想和DBSCAN非常类似。

但是和DBSCAN不同的是,OPTICS算法可以获得不同密度的聚类,直接说就是经过OPTICS算法的处理,理论上可以获得任意密度的聚类。因为OPTICS算法输出的是样本的一个有序队列,从这个队列里面可以获得任意密度的聚类。

OPTICS算法的基础有两点,

  • 参数(半径,最少点数):

一个是输入的参数,包括:半径ε,和最少点数MinPtsMinPts。

  • 定义(核心点,核心距离,可达距离,直接密度可达):

在这里插入图片描述 

 

 在这里插入图片描述

 

 

 

 

 

 

 

 

 


http://www.ppmy.cn/news/227976.html

相关文章

Linux——进程优先级环境变量

目录 1、进程优先级 1.1 基本概念 1.2 查看系统进程 1.3 PRI and NI 1.4 PRI vs NI 1.5 查看进程优先级的命令 1.6 其他概念 2、环境变量 2.1 基本概念 2.2 常见环境变量 2.3 查看环境变量方法 2.4 测试PATH 2.5 测试HOME 2.6 和环境变量相关的命令 2.7 环境变量…

【AIGC】12、DINO | 针对 DETR-like 检测器的提升

文章目录 一、背景二、方法2.1 Contrastive DeNoising Training2.3 Mixed Query Selection2.4 Look Forward Twice 三、效果 论文:DINO: DETR with Improved DeNoising Anchor Boxes for End-to-End Object Detection 代码:https://github.com/IDEACVR/…

WCDMA femto 微基站射频校准

femto 简介 Femtocell(毫微微蜂窝式基站)又称桌面基站,是一种家庭基站技术,主要用来解决楼宇家庭室内覆盖的问题基于IP宽带技术,通过用户已有的ADSL、LAN、xPON等宽带电路连接,远端由专用HNB GW实现从IP网到移动核心网的连通&…

5G微基站与智慧灯杆的关系

灯杆是一个城市的静态基础设施,如同人体的毛细血管一样分布在城市的各个角落,具有方便取电的优势,为大众提供照明、通信、安防等功能。但是,由于发展眼光的局限性与社会形态变化多端的影响,现如今,杆体林立…

为什么智慧路灯杆适合挂载5G微基站

智慧路灯杆是物联网新型基础设施的代表之一,支持融合物联网、5G、AI等先进技术应用,形成多功能合一的综合感知与交互系统。其中5G通信技术作为打造智慧城市的最关键的环节,如何与智慧路灯相结合,结合后又能发挥什么样的优势作用&a…

O-RAN专题系列-31:5G基站如何升级到O-RAN基站 - O-RU - 管理面MPlane的升级

作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客 本文网址:https://blog.csdn.net/HiWangWenBing/article/details/120323472 目录 第1章 协议栈 1.1 eCPRI协议栈 1.2 5G基站 eCPRI接口的协…

超密集组网(UDN)

文章目录 背景与简介 原理密集组网技术密集组网规划微小区 19-01-16关键技术(1)[多连接技术](https://www.zhihu.com/question/54919933)(2)无线回传技术 超密集组网规划部署(实现方案) 优缺点超密集组网的…

华为CEO任正非最新讲话:WiFi和LTE竞争以及加大微基站研究

华为CEO任正非最新讲话,包括网络的最新发展趋势、WiFi和LTE技术未来可能的竞争、加大对微基站投入研究、对Nokia和微软的合并以及GOOGLE收购MOTO等通信行业重要事件的看法以及华为核心竞争优势。 9月5日,华为CEO任正非在接受华为内部无线业务汇报时指出&…