老饼讲解-机器学习 机器学习 神经网络 深度学习
入门教程
1.学前解惑
2.第一课:初探模型
3.第二课:逻辑回归与梯度下降
4.第三课:决策树
5.第四课:逻辑回归与决策树补充
6.第五课:常见的其它算法
7.第六课:综合应用

【初识】聚类问题与层次聚类

作者 : 老饼 日期 : 2022-06-26 23:25:16 更新 : 2023-12-19 17:25:28
本站原创文章,转载请说明来自《老饼讲解-机器学习》www.bbbdata.com


聚类问题是机器学习中常见的一类问题,

本文先介绍聚类问题是什么,有什么意义

并通过层次聚类算法来说明聚类算法的难点在哪里



  01. 什么是聚类问题  



本节简单介绍什么是聚类问题和聚类问题的意义



     初识聚类问题    


有一组样本数据共150组,
包含2个变量,x1和x2,如下
 
在可视化的情况下,我们很容易就知道,这150个样本可以归为5个类别
但当变量不是2个,而是很多个的时候,我们就没办法可视化了,也就没办法样本的类别了
聚类问题要解决的是,
 
如何在不可视化的情况下,对样本划分类别,使相近的样本归为一类
并给出每个样本的类别标签和每个类别的类别中心



     聚类问题的意义    


 聚类问题是非常有意义的,下面我们通过两个场景说明聚类问题的意义
    聚类问题应用于-降维分析   
 
例如,我们采集了150组发烧病人样本,
如果把发烧病人的症状用聚类方法打上类别标签,最后确定为5个类别,
那么我们分析问题就不需要对150个样本分析,而是降维成针对5个类别分析了
通过聚类,分析问题就更有针对性了

 
聚类问题应用于-按类别服务   
 
我们对已有客户聚类,聚成4类,
如果来了新客户,那我们判断他属于哪一个类别,就能针对性提供服务了
类似于音乐推荐,先把已有用户聚类,
来了新用户,就把和他同一类别的用户喜欢的音乐推荐给他





   02. 聚类算法的难点与层次聚类   



本节通过层次聚类,说明聚类算法需要解决的难点在哪里



      层次聚类算法      


聚类问题一个较理想的解决方案是“层次聚类算法”,
 层次聚类算法的算法流程如下:
 

层次聚类算法先把所有样本都当成一个类别,
每次把最近的两个类别聚合成一个类别(每次减少一个类别)
当类别的距离都比较大,或者类别个数足够小时,就停止聚类
  从层次聚类算法的过程可以感受到,层次聚类算法非常有聚类的感觉



   层次聚类算法的缺点   


层次聚类法的最大缺点是计算量非常大,
每次都要计算所有类别两两间的距离,
当样本量较大时,例如10万个样本,那样本两两间的距离就有100亿,
这样的计算量几乎不可能完成!
所以这个方案,往往并不投入实际使用。



   聚类算法需要解决的难点   


聚类问题有很多解决方法,
但计算量过大往往都是这些聚类方法的通病。
k-means则是一种计算量较小,不会因为数据量暴增而暴增的方法,
因此,k-means 脱颖而出,成为了一种经典的聚类算法









  End  





联系老饼