聚类算法 && 论文公式编辑学习
常用的聚类分析算法
算法名称 | 算法描述 |
---|---|
K-Means | K-均值聚类也叫快速聚类法,在最小化误差函数的基础上将数据划分为预定的类数k。该算法原理简单并便于处理大量数据 |
K-中心点 | K-均值算法对孤立点的敏感性,K-中心点算法不采用簇中对象的平均值作为簇中心,而选用簇中离平均值最近的对象作为簇中心 |
系统聚类 | 系统聚类也叫多层次聚类,分类的单位由高到低呈树形结构,且所处的位置越低,其所包含的对象越少,这些对象间的共同特征越多。该聚类方法只适合在数量小的时候使用,数据量大的时候速会非常慢。 |
K-Means聚类算法
K-Means算法是典型的基于距离的非层次聚类算法,在最小化误差函数的基础上将数据划分为预定的类数K,采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大。
1、算法说明
K-Means聚类算法过程如下:
1)从n个样本数据中随机选取k个对象作为初始的聚类中心。
2)分别计算每个样本到各个聚类中心的距离,将对象分配到距离最近的聚类中。
3)所有对象分配完成后,重新计算k个聚类的中心
4)与前一次计算得到的k个计算中心比较,如果聚类中心发生变化,转至步骤二,否则继续步骤五。
5)当质心不发生变化时,停止并输出聚类结果。
2、数据类型与相似性的度量
(1)连续属性
对于连续属性,要先对各属性值进行零-均值规范,在进行距离的计算。K-Means聚类算法中,一般需要度量样本之间的距离,样本与簇之间的距离以及簇于簇之间的距离。
度量样本之间的相似性最常用的是欧几里得距离,曼哈顿距离和闵可夫斯基距离;度量样本与簇之间的距离可以用样本到簇中心的距离 d ( e i , x ) d(e_i,x) d(ei,x)度量簇与簇之间的距离可以用簇中心的距离 d ( e i , e j ) d(e_i,e_j) d(ei,ej)
设有p个属性来表示n个样本的数据矩阵
( x 11 . . . x 1 p . . . . . . x n 1 . . . x n p ) \begin{pmatrix} {x_{11}}& ... &{x_{1p}}\\ {... }& & {...}\\ {x_{n1}}& ... & {x_{np}} \end{pmatrix} ⎝
⎛x11...xn1......x1p...xnp⎠
⎞
则其欧几里得距离公式为
d ( i , j ) = ( x i 1 − x j 1 ) 2 + ( x i 2 − x j 2 ) 2 + . . . + ( x i p − x j p ) 2 d(i,j) = \sqrt{(x_{i1} - x_{j1})^2 + (x_{i2} - x_{j2})^2 + ... + (x_{ip} - x_{jp})^2} d(i,j)=(x