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

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

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

  • 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)

层次聚类

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

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

相关推荐
新智元13 分钟前
仅 4 人 28 天!OpenAI 首曝 Sora 内幕:85% 代码竟由 AI 完成
人工智能·openai
受之以蒙24 分钟前
Rust 与 dora-rs:吃透核心概念,手把手打造跨语言的机器人实时数据流应用
人工智能·笔记·rust
前端开发工程师请求出战26 分钟前
把大模型装进口袋:HuggingFace如何让AI民主化成为现实
人工智能
亚马逊云开发者30 分钟前
Amazon Connect结合Strands框架及Bedrock Agent Core的智能客服机器人解决方案(实践篇)
人工智能
谷歌开发者34 分钟前
Web 开发指向标|AI 辅助功能在性能面板中的使用与功能
前端·人工智能
itwangyang5201 小时前
AIDD-人工智能药物设计-StructGuy:破解蛋白变异预测的数据泄漏难题
人工智能
rongcj1 小时前
智能眼镜成新经济现象,它是佩戴的AI,还是AI的容器?
人工智能
XiaoMu_0011 小时前
DeepAnalyze:首个开源自动数据科学 Agentic LLM
人工智能
tap.AI1 小时前
AI时代的云安全(一)新挑战与应对思考
人工智能
数据科学项目实践1 小时前
建模步骤 3 :数据探索(EDA) — 1、初步了解数据:常用函数
人工智能·python·机器学习·数据挖掘·数据分析·pandas·数据可视化