聚类方法学习


聚类方法

基本概念

聚类和分类的区别就是分类是提供了分类结果的,我们的目标是根据结果推原因,也就是执果索因,聚类我们是没有分类结果的,模型需要通过评价方法来判断那些是一类,那些不是一类,也就是执因索果

相似度或距离

距离是判断样本间相似度的重要依据,以下是主要几种相似度的判断方式.

闵氏距离

具体见多元分析

马氏距离

$$d_{ij} = [(x_i-x_j)^TS^{-1}(x_i-x_j)]^{\frac{1}{2}}$$
S是单位矩阵的时候,马氏距离就是欧氏距离,可见马氏距离是欧氏距离的推广.

相关系数

$$r_{ij} = \frac{\displaystyle \sum_{k=1}^m(x_{ki}-\bar x_i)(x_{kj}-\bar x_j)}{[\displaystyle \sum_{k=1}^m(x_{ki}-\bar x_i)^2\displaystyle \sum_{k=1}^m(x_{kj}-\bar x_j)^2]^{\frac{1}{2}}}$$
其中
$$\bar x_i = \frac{1}{m}\displaystyle \sum_{k=1}^mx_{ki},\qquad\bar x_j = \frac{1}{m}\displaystyle \sum_{k=1}^mx_{kj}$$

夹角余弦

夹角余弦越接近1,表示相似度越高,反之,相似度越低.
$$s_{ij} = \frac{\displaystyle \sum_{k=1}^m x_{ki}x_{kj}}{\displaystyle \sum_{k=1}^m x_{ki}^2\displaystyle \sum_{k=1}^m x_{kj}^2}$$

类或簇

可以理解为样本的子集,子集内部的元素之间的距离小于外部元素和内部元素之间的距离.

层次聚类

层次聚类需要三个因素:

  • 距离或者相似度度量选择
  • 合并的规则(类和类之间的合并度量)
  • 停止条件(合并的停止条件,一般都是类的总数达到了目标要求)

k均值聚类(k-means算法)

定义样本预期所属类的中心之间的距离总和为损失函数,即
$$W(C) = \displaystyle \sum_{l = 1}^k \displaystyle \sum_{C(i)=l} ||x_i - \bar x_l||^2$$

具体算法

可见scipy学习笔记中cluster类内的解释.


Author: Dovahkiin
Reprint policy: All articles in this blog are used except for special statements CC BY 4.0 reprint policy. If reproduced, please indicate source Dovahkiin !
  TOC