1、前言

聚类事针对给定的样本,依据他们的特征和相似度或距离,将其归并到若干个类或簇的数据分析问题。聚类属于无监督学习

2、聚类的基本概念

2.1相似度或距离

聚类的核心概念是相似度或距离。
闵可夫斯基距离
距离越大,相似度越小,距离越小,相似度越大。
dij=(k=1mxkixkjp)1/pd_{ij}=(\sum_{k=1}^m{|x_{ki}-x_{kj}|^p})^{1/p}
当p=2时,称作欧氏距离
dij=(k=1mxkixkj2)1/2d_{ij}=(\sum_{k=1}^m{|x_{ki}-x_{kj}|^2})^{1/2}
当p=1时,称作曼哈顿距离
dij=(k=1mxkixkj)d_{ij}=(\sum_{k=1}^m{|x_{ki}-x_{kj}|})
马哈拉诺比斯距离
简称马氏距离,考虑各个分量之间的相关性并与各个分量的尺度无关。距离越大,相似度越小,距离越小,相似度越大。
dij=[(xixj)TS1(xixj)]1/2d_{ij}=[(x_i-x_j)^TS^{-1}(x_i-x_j)]^{1/2}
当S为单位矩阵时,马氏距离就是欧氏距离
相关系数
相关系数的绝对值越接近于1,表示样本越相似;越接近于0,表示样本越不相似。
rij=k=1m(xkixi)(xkjxj)[k=1m(xkixi)2k=1m(xkjxj)2]1/2r_{ij}=\frac{\sum_{k=1}^m{(x_{ki}-x_i)(x_{kj}-x_j)}}{[\sum_{k=1}^m(x_{ki}-x_i)^2\sum_{k=1}^m(x_{kj}-x_j)^2]^{1/2}}
其中
xi=1mk=1mxki,xj=1mk=1mxkjx_i=\frac{1}{m}\sum_{k=1}^m{x_{ki}},x_j=\frac{1}{m}\sum_{k=1}^m{x_{kj}}
夹角余弦
夹角余弦越接近于1,表示样本越相近;越接近0,表示样本越不相似。
sij=k=1mxkixkj[k=1mxki2k=1mxkj2]1/2s_{ij}=\frac{\sum_{k=1}^m{x_{ki}x_{kj}}}{[\sum_{k=1}^m{x_{ki}^2\sum_{k=1}^m{x_{kj}^2}}]^{1/2}}
不同相似度度量得到的结果并不一定一致。

2.2类或簇

通过聚类得到的类或簇,本质是样本的子集。如果一个聚类方法假定一个样本只能属于一个类,或类的交集为空集,那么该方法称为硬聚类方法。否则称为软聚类。
设T为给定的正数,若集合G中任意两个样本xi,xj有dij<=Td_{ij}<=T则称G为一个类或簇。
类的常用特征有下面三种
类的均值xG,又称为类的中心
xG=1nGi=1nGxix_G=\frac{1}{n_G}\sum_{i=1}^{n_G}{x_i}
分母是类的样本个数。
类的直径DG
类的直径是类中任意两个样本之间的最大距离
DG=maxdijD_G=maxd_{ij}
③类的样本散布矩阵AG,样本协方差矩阵SG
AG=i=1nG(xixG)(xixG)TA_G=\sum_{i=1}^{n_G}{(x_i-x_G)(x_i-x_G)^T}
SG=1m1AGS_G=\frac{1}{m-1}A_G
其中m是样本的维数。

2.3类与类之间的距离

①最短距离或者单连接
定义为两类样本之间的最短距离
②最长距离或完全连接
定义为两类样本间最长的距离
③中心距离
定义为两类中心点之间的距离
④平均距离
定义为两类任意两个样本之间的距离的平均值

3、层次聚类

层次聚类有聚合或自下而上聚类、分裂或自上而下聚类两种方法。
层次聚类属于硬聚类。
预先确定三要素:
(1)距离或相似度
(2)合并规则
(3)停止条件
算法:
输入:n个样本组成的样本集合及样本之间的距离
输出:对样本集合的一个层次化聚类
(1)计算n个样本两两之间的欧氏距离记作矩阵D
(2)构造n个类,每个类包含一个样本
(3)合并类间距离最小的两个类,其中最短距离为类间距离,构建一个新类。
(4)计算新类与当前类之间的距离。若类为1,终止计算,否则回到3
时间复杂度为O(n^3m),m是样本维数,n是样本个数。
统计学习方法-聚类方法-读书笔记

4、K均值聚类

K均值聚类是基于样本集合划分的聚类算法。属于硬聚类。
模型:K均值聚类的模型是一个从样本到类的函数。
策略:通过损失函数最小化划分。
采用欧氏距离平方作为样本之间的距离,定义样本与所属类中心之间的距离总和为损失函数
W(C)=l=1kC(i)=lxixl2W(C)=\sum_{l=1}^k\sum_{C(i)=l}{||x_i-x_l||^2}
算法
输入:n个样本集合X
输出:样本集合聚类C
(1)初始化。随机选择k个样本点作为初始聚类中心。
(2)对样本进行聚类,计算每个样本到类中心距离,指派到与其距离最近的中心类中
(3)计算新的类中心
(4)若收敛或者符合条件,停止。否则返回(2)
算法特性
收敛性:不能保证收敛到全局最优,出市中心的选择会直接影响聚类结果。

相关文章: