最近在阅读阿里数据分析专家卢辉的《数据挖掘与数据化运营实战》。书中结合了实际业务案例,介绍了在实战项目中数据分析和数据挖掘的许多知识点,干货满满。
因此,打算结合书中内容,对一些重要的主题加以总结,在过程中加深对各个知识点的理解。
本文包括四个部分——
- 聚类简介和应用场景
- 常见聚类算法
- 聚类效果评估
- 聚类使用注意事项
1. 聚类应用场景
聚类是非监督学习中的一类算法,通常是通过多次迭代来找到数据的最优分割,将数据划分为多个类。
聚类在数据分析中十分常用,一般有两个典型的应用场景——
1. 数据分析前期的数据探索
- 在数据分析前期,可以通过聚类和可视化了解数据分布
- 聚类可以定位孤立点、异常值,用于数据清洗、转化等数据处理过程
- 聚类产生的类别可以作为一个新的字段加入到其他模型的搭建中
2. 聚类算法建模
- 解决一些实际场景,聚类的结果可以指导落地应用,常用于样本分群
- 用户分群中,可以根据众多指标进行聚类,将用户划分为具有明显特征区别的群体
- 作品分群中同样通过聚类可以划分为低热度、中热度、KOL作品等
总的来说,聚类对目标群体进行多指标的划分,为个性化、精细化的运营提供基础。
2. 常用聚类方法
聚类算法根据不同的思路可分为原型聚类、密度聚类、层次聚类三种,本节依次简单介绍。
2.1 原型聚类
原型聚类假设聚类结构能通过一组原型刻画,通常是先初始化原型,然后对原型进行迭代更新求解。
比如Kmeans聚类、高斯混合模型都属于原型聚类。
Kmeans聚类算法
Kmeans聚类使用K个中心点,将数据划分为K个类,使得每个样本距离所属类的中心点最近。
Kmeans聚类算法本质上是寻找K个中心点,使得所有样本点到所属类的中心点的距离之和,即
算法的运行流程如下:
- 随机选择
个点作为个类的中心
- 对每个样本点,将其分配到最近的类,即
3. 对每个簇,重新计算该类的中心(使中心变为当前类的均值点),即
4. 重复第2、3步迭代过程直到收敛
高斯混合模型GMM
其核心思想是假设K个类别均服从各自的高