数据挖掘 | 聚类

What?    数据类型     Partition 、 Hierarchica、 Density-based、Grid-based、异常值检测

什么是聚类分析

           根据数据中的特征查找数据之间的相似性,并将其分组到集群中

           类:数据对象的集合;类内相似,类间不同

           好的聚类:类内相似度高,类间相似度低(相似度以距离表示)

数据类型&计算

  • 相异性矩阵   

                        \begin{bmatrix} 0 & & & \\ d(2,1)& 0& & \\ d(3,1)& d(3,2)& 0& \\ ...& ... & ....& \\ d(n,1)& d(n,2)& ...&0 \end{bmatrix}

  • Interval-valued区间值变量

             mean absolute deviation                

                      s_f= \frac{1}{n}(\left | x_{1f}-m_f \right |+\left | x_{2f}-m_f \right |+...+\left | x_{nf}-m_f \right |) \\ m_f=\frac{1}{n}(x_{1f}+x_{2f}+...+x_{nf})

            standardized measurement (z-score)

                       z_{if}=\frac{x_{if}-m_f}{s_f}

  • Binary 二进制变量
object j
10sum
object i1aba+b
0cdc+d
suma+cb+da+b+c+d

               对称二进制变量的距离测量           d(i,j)=\frac{b+c}{a+b+c+d}

              非对称二进制变量的距离测量              d(i,j)=\frac{b+c}{a+b+c}

  • Nominal   名义型变量(eg:颜色  红 绿  蓝...)

               简单匹配    d(i,j)=\frac{p-m}{p}     p维度, m是否匹配  y:1  n:0 

               为每种状态创建一个二进制变量

  • Ordinal 序数变量(顺序很重要)

                x映射到[0,1]区间           \frac{x-min}{max-min} \ \ \ x\notin \{min,...max\}  

  • Ratio 比率缩放变量

                   对数变换          \log(x)   以10为底

  • 混合型变量(加权计算)

                   d(i,j)=\frac{\sum \delta *d(i,j)}{\sum \delta }    某一行/列的值缺失,某一属性为非对称性\ \delta =0;否则\ \delta =1

相似性:距离决定                  d(i,j)=\sqrt[p]{\left | x_{i1}-x_{j1} \right |^p +\left |x_{x2}-x_{j2} \right |^p +...+\left |x_{xn}-x_{jn} \right |^p }

质心/中心(Centroid)           \bar{t}

半径(Radius)   集群的所有点到质心的平均距离的平方根                       

直径(Diameter)     聚类中所有点对之间的平均均方距离的平方根    

分区方法    --分成k个类,K-Means

  • 基本概念:将n个对象的数据库D构建为K个集群
  • K-Means

                1、给出k个随机的初始质心;

                2、计算每个对象到k个质心的距离选最短,确定每个对象的分类      -->得出K个分类

                3、重新计算每个类的质心

                4、返回步骤2,直至对象所属类不发生改变

  • K-Means评价

         优点:相对高效O(tkn),t次迭代,k个类,n个对象

         缺点:预先需确定K;对异常值敏感;只适合处理凸型聚类

         改进:K-modes(均值换为众数)

分层方法     --分层分解 ,需终止条件

  • AGNES(Agglomerative Nesting)凝聚 

           n个 --> 一个  使用单链路方法和相异度矩阵,合并相似度最大的节点,以非下降的方式继续

  • DIANA(Divisive Analysis)分裂

           一个--> n个   与AGNES相反

  •  BIRCH

           构造CF(Clustering Feature)树:扫描数据库以构建初始CF树,使用聚类算法对CF树的叶节点进行聚类           \vec{CF}= (N,\vec{LS},\vec{SS}) , \vec{LS}:(\bar{x},\bar{y}),\vec{SS}:(\bar{x^2},\bar{y^2})

           线性缩放:O(n),适应大型数据库,一次扫描找到一个好的集群;仅适合数值型数据

  • CURE :使用代表进行聚类

            从原始样本中随机抽取S样本,对采样对象进行聚类(基本CURE);消除异常值;每个未采样的原始对象都被分配给包含最接近的簇

            对异常值不敏感,O(nlogn)

基于密度的方法   --需密度参数作为终止条件

两个参数:\varepsilon-neighborhood(半径\varepsilon的领域) 、Minpts(领域内最小的点数)

                  核心主体(core object):点p的领域内点数>minpts

                  Directly density-reachable(p到q直接密度可达): q是核心,p属于q的领域

DBSCAN:

               1、将所有对象标记为未访问;
               2、 随机选择一个未访问的对象p,并将p标记为已访问;
               3、 如果p的\varepsilon邻域至少有MinPts对象,创建一个新的集群C,并将p添加到C中,设N为p的\varepsilon邻域中的对象集;
              4、对于N中的每个点p',如果p'未访问,将p标记为已访问;重复步骤3, 直到没有对象未被访问。

基于网格的方法    --STING

STING(A Statistical Information Grid Approach)

           空间区域被划分成矩形单元,有多级,高级别的单元都被划分为多个低级单元

           每个单元格的统计信息是事先计算和存储,n、mean、s、max、min

           优:独立查询、增量更新,查询O(K)、生成集群O(n)

           缺:边界水平/垂直、处理时间取决于网格大小

异常值分析

  • 可视化

               分类数据数据弱,高维数据
               擅长二维或三维数值数据

  • 集群

                聚类的副产物可能是异常值

  • 基于计算机的方法

               基于统计的异常检测
               基于距离的异常检测
               基于偏差的异常检测

summary

           ▪ Partitioning: k-means, k-medoids, CLARANS
           ▪ Hierarchical: BIRCH, ROCK, CHAMELEON
           ▪ Density-based: DBSCAN, OPTICS, DenClue
           ▪ Grid-based: STING, WaveCluster, CLIQUE
           ▪ Model-based: EM, Fuzzy K-Means
           ▪ Frequent pattern-based: pCluster
           ▪ Constraint-based: COD, constrained-clustering

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值