首页 > 人工智能(Artificial Intelligence) > 深度学习(Deep Learning)

干货!浅谈聚类分析在工作中的应用

00 序言

提到「聚类」,大家是否会想到「物以类聚、人以群分」呢,而这也正是聚类的本质含义。在工作中,聚类分析还是比较常见的,你是否遇到过以下这些问题?

用户划分:当产品做到一定量级,希望将用户划分为具有明显特征属性的细分群体,针对特定群体实施策略。产品组合:随着公司产品的丰富,希望将产品按照价值和变现能力划分为不同的组合,并针对不同组合制定营销策略。反作弊判断:用户在产品上的操作属于正常行为,而有些人为了谋取利益,采用机器等方式刷取数据,针对这种作弊行为,我们要如何发掘呢?

当遇到类似上述问题时,聚类分析便可施展拳脚。下面,小火龙会从聚类的实战应用为出发点,为大家揭开面纱。


01 聚类是什么

聚类是按照某种特定的规则(例如:距离远近),将数据集划分成不同的簇,使得相同簇中的个体相似性尽可能大,不同簇之间相似性尽可能小。在数据中的表现是,具有相似特征值的个体聚在一起的可能性大,反之可能性小。

Tips:计算距离的方式有很多种,列举几种常用的欧氏距离曼哈顿距离余弦距离

「聚类」是没有先验知识的「无监督算法」,与其对应的「分类」则是「有监督算法」。有些同学可能会有一些晕,举个例子就很好理解:

分类问题男性一定有喉结,因此只要有喉结的人,就是男性。其中,喉结就是先验知识,通过这个特征,就可以将人群分类为男性和女性。聚类问题对于我们的祖先,并没有男性和女性的区分,但通过特征,可以发现一部分人有喉结、另一部分没有,因此将有喉结的群体命名为男性。

下面介绍一个聚类在工作中的案例,帮助大家增强认知。


02 聚类的实战应用

在「策略推广」方向上,聚类可将目标群体进行分群,并对潜在人群进行扩充。因此应用方向包括但不限于:市场精准推广、潜在目标群体扩充等。下面,举一个案例:

某车企,在春节前,针对可能的目标群体「一线城市蓝领」下发微信广告推送,帮助提升车企的引流。但在通过用户行为聚类之后,发掘「二线城市白领」同样具备潜在购车的能力。因此,在推广过程中,扩充了目标群体的投放范围,提升引流效果。(具体应用步骤如下图)


03 常用聚类方式及优缺点

在介绍了聚类作用后,是否有小伙伴想要了解一下,聚类有哪些方式,如何实现,以及每种方式的优缺点,下面小火龙为大家做一个总结。


聚类模型的种类有很多,大致可以按照如下三个方向进行划分:

1. 模型的处理能力:处理不同分布形状的能力;处理异常点的能力;处理大数据量级的能力等。

2. 模型是否需要预设参数:是否需要给出类别数量等。

3. 模型对数据输入的要求:数据输入的顺序对模型是否有影响;模型对于特征的类型是否有要求等。


根据以上分类,聚类模型大体可以划分为以下几类:


介于篇幅原因,小火龙挑取了三种常用的模型进行阐述(图中红色部分)。


1、基于层次的方法 - 层次聚类

1. 模型原理

层次聚类包含两种方式,「凝聚型层次聚类」和「分裂型层次聚类」。凝聚型层次聚类是层次聚类中较常用的方式,其核心原理是,初始假设每个个体都是一类,每一次迭代会合并最相近的点,当所有点都合并成一类或者满足停止条件时,则终止模型迭代,是一种自下而上的方式。与之相对应的分裂型层次聚类,则是以相反自下而上的方式进行迭代,最终输出结果。


2. 模型流程

以「凝聚型层次聚类」为例:

步骤1:每个点作为一类,计算两点之间的距离;

步骤2:将距离最近的点合并到一起,形成新的类,并计算类的质心;

步骤3:重复第1、2步骤,直至满足条件。


3. 模型优缺点

[优点]

模型解释能力较强无需设定K(可作为K-means聚类探索K的先验算法)对于K-means不擅长的非球形点处理的较好

[缺点]

时间复杂度较高,运行慢无法解决非凸对象分布


2、基于划分的方法 - K-means聚类

1. 模型原理

其思想有一些类似于「凝聚型层次聚类」,但在开始模型之前,需要预先输入最终聚类簇的个数K,然后初始挑选几个点作为质心,再接着将相近的点进行合并,并形成新的质心,迭代的原则是「类内点距足够近,类间点距足够远」,直至最终符合簇的数量。

至于K的选择,可以通过「肘部法则」、「轮廓系数」等方式进行评估,这里不多介绍,会在后面的文章中写一写。


2. 模型流程

步骤1:随机选择K个对象,作为K个簇的初始质心(由于K是随机的,因此K-means聚类每次的结果会出现差异);

步骤2:与质心相近的对象,合并成一类,并迭代出新的质心;

步骤3:重复第1、2步骤,直至满足K个簇的条件。


3. 模型优缺点

[优点]

时间复杂度及空间复杂度较低,运行快

[缺点]

对于初始质心的原则较敏感对噪声较敏感,会被带偏容易出现局部最优解的情况无法解决非凸对象分布


3、基于密度的方法 - DBSCAN聚类

1. 模型原理

以上两种方式均无法处理不规则形状的聚类,而DBSCAN基于密度的方法可以很好的解决,并且对于噪音数据比较友好。其核心原理讲通俗点,就是通过每个点画圈的方式,与周边的点发生联系,如果满足一定规则则将其纳入本类当中,直至满足迭代要求。

其中规则主要为两个参数,一个是圈圈的最大半径(eps),另一个是圈内最少应容纳几个点(MinPts)。以下是DBSCAN聚类所形成的效果图。


2. 模型流程

步骤1:从任意点p开始;

步骤2:寻找并合并p直径范围以内的对象;

步骤3:如果p为核心点,则形成一个聚类;如果p为边界点,即:不符合最少容纳点的要求,则重新寻找下一个对象点;

步骤4:重复第2、3步骤,直至覆盖所有对象。


3. 模型优缺点

[优点]

满足任意形状的聚类对于噪声不敏感

[缺点]

聚类结果与初始设定值有直接关系由于值是固定的,因此对于稀疏不同的对象分布不太友好

以上就是本期的内容分享

如果你也对数据分析感兴趣,那就来关注小编吧

关闭
感谢您的支持,我会继续努力!
扫码打赏,建议金额1-10元


提醒:打赏金额将直接进入对方账号,无法退款,请您谨慎操作。