聚类方法
基本概念
聚类和分类的区别就是分类是提供了分类结果的,我们的目标是根据结果推原因,也就是执果索因,聚类我们是没有分类结果的,模型需要通过评价方法来判断那些是一类,那些不是一类,也就是执因索果
相似度或距离
距离是判断样本间相似度的重要依据,以下是主要几种相似度的判断方式.
闵氏距离
具体见多元分析
马氏距离
$$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类内的解释.