4.1 聚类分析介绍
聚类分析(Cluster Analysis)是要把数据的记录(样本)根据相似度,把相似的记录聚合在一起,称为“类”或“簇”(cluster)。在营销管理的市场划分,就是聚类分析。聚类分析没有目标变量,所以是非监督式学习。
聚类分析概念图如图4-1所示。
图4-1 聚类分析概念图
聚类分析有:层次聚类(hierarchical)和非层次聚类(non-hierarchical)。
①层次聚类
假设有N个记录,计算 1类,2类,…N类的划分。
(1)聚合法(agglomerative):从N类→N-1类→…→ 1类的合并。
R语言包“cluster”的函数agnes(AGglomerative NESting)是聚合法层次聚类。
本章主要介绍聚合法层次聚类R语言基础包“stats”的函数hclust。
(2)划分法(divisive):从1类→2类→…→N类的划分。
R语言包 “cluster”的函数diana(DIvisive ANAlysis clustering)是划分法层次聚类。
层次聚类,给出一个树形图(dendrogram),最上层是树根,是所有记录样本合并成一类,最下层是树叶,所有记录样本各成一类,聚合法是由下往上,从树叶变成树根,最后将所有记录并成一类。聚合法是用样本的“距离”来合并树枝。
第10章的决策树也是树形图,算是划分法,由上往下,用变量的“信息”来划分树枝,从树根变成树叶。决策树是监督式学习,用来判别样本是属于哪一类。
②非层次聚类
选定一个k值,计算k类的聚类。
(1)k-均值法(k-mean):只适用于数值变量,不适用于分类变量。
(2)基于质心聚类法(PAM):适用于数值变量和分类变量。
(3)期望最大值聚类法(EM)。
(4)基于密度的聚类法(DBSCAN)。
(5)模糊C均值法(Fuzzy C-means)。