模式识别和机器学习 | 第八章 聚类

监督学习 :分类、 回归、排序

非监督学习: 聚类、降维、概率密度估计

  • why引入非监督学习?

原始数据易获得,但标注数据昂贵;高维降噪;预处理步骤;降低存储/计算

聚类
  • 数据分组聚集:根据数据中样本之间的距离或相似度,将样本划分为若干组/类/簇
  • 划分原则:类内样本距离小、类间样本距离大
  • 聚类的类型:基于划分的聚类(每个样本只属于一类)

层次划分(树形聚类,不同层次间存在嵌套)

  • 簇的类型:

明显分离的簇 ( Well-separated clusters )
基于中心的簇 ( Center-based clusters )
基于邻近的簇 ( Contiguous-based clusters )
基于密度的簇 ( Density-based clusters ) 簇是高密度区域
基于概念的簇 ( Property or Conceptual )

  • 聚类分析三要素:

使用相似性/距离函数 -> 远近

利用评价函数 评估 聚类结果

如何表示簇,划分和优化算法,算法何时停止

  • 经典算法 : K-means 、GMM、DBSCAN、层次划分

K均值聚类(K-means)

K越大,损失越小

  • 预处理:标准化数据、消除离群点

后处理:删除小的簇(离群点)、分裂松散的簇、合并距离近的簇

  • 优点: 经典聚类算法简单、快速;

可处理大规模数据,可扩展性好;

分布接近高斯分布时**,效果好**

  • 缺点 :当簇具有不同的尺寸密度非球体 , K-means可能得不到理想的结果;
    噪声/离群点影响大 ;
    解决:使用更多的簇(K增大),几个小的表示真实的一个,基于密度
    k-means -> k-median/medoids (均值-> 样本中值)

  • 判断是否为k-means :判别界面在两质心的连线的中垂线上

高斯混合模型和最大期望算法(GMM)

K个簇,每个簇服从高斯分布,以概率随机选择一个簇k,从其分布中采样 一个样本点

总体分布θ,样本集合X的概率

  • 似然函数

对数似然函数

极大似然估计:对µ求导,令导数为0

类似地,可以得到 ,
Expectation-Maximization 算法

高斯混合模型得E步,是一个软化分版本得K-means

基于密度聚类

密度density =给定半径内点的个数

  • 核心点:指定半径内点>指定数量MinPts个的 点
  • 边界点:在核心点的领域内,该点的指定半径内的点<MinPts个点
  • 离群点:核心点和边界点之外的点
  • q和p密度可达:路径上的所有点都是核心点
  • q和p密度相连:存在点o,从其密度可达点p到q
  • 优势 : 不需要明确簇的数量;任性形状的簇 ;对离群点(outliers)较为鲁棒
  • 劣势 :参数选择比较困难;不适合密度差异较大的数据集;需计算每个样本的邻居点,操作耗时O(N2) ;即使采用k-d tree索引等技术加速计算,算法的时间复杂为O(NlogN)

层次聚类

  • 自底向上(凝聚式): 递归的合并相似度最高/距离最近的两个簇
  • 自顶向下(分裂式): 递归地分裂最不一致的簇(例如:具有最大直径的簇)
  • 用户可以在层次化的聚类中选择一个分割,得到一个最自然的聚类结果((例如:各个簇的簇间相似性高于一定阈值)

优点:不需要提前假定聚类的簇数;聚类结果可能对应着有意义的分类体系

相关推荐
molunnnn10 分钟前
day 18进行聚类,进而推断出每个簇的实际含义
机器学习·数据挖掘·聚类
Matrix_1120 分钟前
论文阅读:Matting by Generation
论文阅读·人工智能·计算摄影
Humbunklung24 分钟前
机器学习算法分类
算法·机器学习·分类
一叶知秋秋29 分钟前
python学习day39
人工智能·深度学习·学习
Ai多利34 分钟前
深度学习登上Nature子刊!特征选择创新思路
人工智能·算法·计算机视觉·多模态·特征选择
几道之旅35 分钟前
MCP(Model Context Protocol)与提示词撰写
人工智能
Spider_Man42 分钟前
“AI查用户”也能这么简单?手把手带你用Node.js+前端玩转DeepSeek!
javascript·人工智能·node.js
T.D.C1 小时前
【OpenCV】使用opencv找哈士奇的脸
人工智能·opencv·计算机视觉
大霸王龙1 小时前
软件工程的软件生命周期通常分为以下主要阶段
大数据·人工智能·旅游
yvestine2 小时前
自然语言处理——文本表示
人工智能·python·算法·自然语言处理·文本表示