聚类分析的一般处理步骤:
确定维度、数据预处理、选择合适的聚类方法、对聚类效果进行分析、聚类结果分析与展示
一、确定维度
用户分类是分析在这些维度上的用户是否有显著的区别,因此聚类分析的数据维度的选择是至关重要的。
需要考虑两个方面:
-
目标
首先,维度的选择在大方向上是要与需要解决的问题相一致。即用户在这些维度上有显著的区别。
In other words,这些维度需要能够表明用户的特征,以助于产品设计或优化。
如:
用户行为特征,来针对不同用户做不同的设计;
活跃度等特征,找出高价值用户; -
维度的特征
对于单个维度,数据的分布以正态分布为佳,其他分布应该进行数据处理。
长尾分布可以取log10()
对于多个维度,维度应该不具有很强的相关性。有很强的相关性,可以作因子分析。
另外,CLIQUE算法,可以发现子空间的簇,来筛选合适的维度。
二、数据预处理
- 高维度/低维度:高维空间中的邻近度将趋向于0,导致各个点的临近度更加一致。维规约、因子分析、主成分分析。
- 数量级:数量级高的数据集,需要采用可伸缩性的算法。
- 稀疏性:
- 噪声、离群点:提前排除
- 数据属性:定量/分类,离散/连续
- 度量单位:将数据标准化,消除属性单位的影响
- 权重:对属性进行加权
三、选择合适的聚类方法
3.1基于原型的聚类 Prototype-Based Clustering
- K-means
- Mixture Models 混合模型
EM算法
优点:比k均值或模糊c均值更一般,可以使用各种类型的分布
缺点:EM算法可能很慢;不能很好处理近似协线型的数据点;在正确的模型形式方面也存在问题; - Self-Organizing Maps(SOM)自组织映射
3.2基于密度的聚类 Density-Based Clustering
-
DBSCAN
-
Subspace Clustering子空间聚类
CLIQUE(Clustering In quest)系统地发现子空间簇的基于网格的聚类算法
3.3基于图的聚类 Graph-Based Clustering
Sparsification稀疏化
断开相似度小于一定阈值的边,或仅保留连接到点的k个最近邻的边
-
Minimum Spanning Tree(MST) Clustering最小生成树聚类
产生与单链凝聚聚类相同的聚类 -
Chameleon:Hierarchical Clustering with Dynamic Modeling
稀疏化、图划分、层次凝聚 -
Jarvis-Patrick聚类算法
以SNN相似度取代两个点之间的邻近度
3.4可伸缩的聚类算法 Scalable Clustering Algorithm
-
BIRCH(Balanced Iterative Reducing and Clustering using Hierarchies)
能够处理离群点
是一种增量的聚类方法,因为它对每一个数据点的聚类的决策都是基于当前已经处理过的数据点,而不是基于全局的数据点。
主要是在数据体量很大的时候使用,而且数据类型是numerical -
CURE(Clustering Using REpresentative)
处理离群点和具有非球形和非均匀大小的簇的数据
在簇里选定一定数量的点,彼此最远,以代表簇的形状
四、对聚类效果进行分析
四、聚类结果分析与展示
通过比较每个簇的描述性统计量,来分析各个簇的特点。
网友评论