聚类是什么
聚类,就是将相似的事物聚集在一 起,而将不相似的事物划分到不同的类别的过程
在数据分析的术语之中,聚类和分类是两种技术。分类是指我们已经知道了事物的类别,需要从样品中学习分类的规则,是一种有指导学习;而聚类则是由我们来给定简单的规则,从而得到分类,是一种无指导学习。
聚类的目标
使同一类对象的相似度尽可能地大;不同类对象之间的相似度尽可能地小。
聚类的本质
聚类本质上是集合划分问题。因为没有人工定义的类别标准,聚类并没有统一的对样本进行划分的标准。因此算法要解决的核心问题是如何定义簇,唯一的要求是簇内的样本尽可能相似。通常的做法是根据簇内样本之间的距离,或是样本点在数据空间中的密度来确定。对簇的不同定义可以得到各种不同的聚类算法。
聚类算法的分类
常见的聚类算法
K-均值聚类
模糊聚类算法
DBSCAN
层次聚类
X=[11978 12.5 93.5 31908; 57500 67.6 238.0 15900];
%T=clusterdata(X,0.9) %一次聚类法
%%层次聚类法
%Step1 寻找变量之间的相似性
%用pdist函数计算相似矩阵,有多种方法可以计算距离,进行计算之前最好先将数据用zscore函数进行标准化。
X2=zscore(X); %标准化数据
Y2=pdist(X2); %计算距离(默认欧式距离)
%Step2 定义变量之间的连接
Z2=linkage(Y2);
%Step3 评价聚类信息
C2=cophenet(Z2,Y2); %//0.94698
%Step4 创建聚类,并作出谱系图
T=cluster(Z2,6);
H=dendrogram(Z2);