1.相似度或距离:相似度的定义与适用范围
2.闵可夫斯基距离:表达式与数学性质
3.马哈拉诺比斯距离:表达式与数学性质,同闵可夫斯基距离的比较
4.相关系数:表达式与数学性质,局限性,相关计算
5.夹角余弦:不同类型夹角余弦的表达式与比较
6.相似度:概念含义与相关计算
7.类或簇概念含义与应用范围
8.类与类之间的距离:各类距离表示法的公式与比较
假设有 n n n个样本,每个样本由 m m m个属性的特征向量组成,样本集合可以⽤矩阵 X X X表示
X = [ x i j ] m × n = [ x 11 x 12 ⋯ x 1 n x 21 x 22 ⋯ x 2 n ⋮ ⋮ ⋮ ⋮ x m 1 x m 2 ⋯ x m n ] X=[x_{ij}]_{m\times n}=\begin{bmatrix} x_{11} & x_{12} &\cdots &x_{1n} \\ x_{21} & x_{22} & \cdots &x_{2n} \\ \vdots & \vdots &\vdots & \vdots\\ x_{m1} & x_{m2} & \cdots& x_{mn} \end{bmatrix} X=[xij]m×n=⎣⎢⎢⎢⎡x11x21⋮xm1x12x22⋮xm2⋯⋯⋮⋯x1nx2n⋮xmn⎦⎥⎥⎥⎤
聚类的核心概念是相似度(similarity)或距离(distance),有多种相似度或距离定义。
因为相似度直接影响聚类的结果,所以其选择是聚类的根本问题。
距离常用来度量样品间的亲疏程度。设样品 X ( i ) = ( x i 1 , x i 2 , ⋯ , x i m ) X_{(i)}=(x_{i1},x_{i2},\cdots,x_{im}) X(i)=(xi1,xi2,⋯,xim),其中 m m m为特征数,则 n n n个样品可视为 m m m维空间中的 n n n个点。
如果有两个样本 X ( i ) X_{(i)} X(i)和 X ( j ) X_{(j)} X(j)之间距离是 d i j d_{ij} dij,那么这个距离要满足三个条件:
1. d i j ≥ 0 d_{ij}\ge 0 dij≥0,对一切 i , j i,j i,j成立;如果 d i j = 0 d_{ij}=0 dij=0,则 X ( i ) = X ( j ) X_{(i)}=X_{(j)} X(i)=X(j)(反之亦然);
2. d i j = d j i d_{ij}=d_{ji} dij=dji,对一切 i , j i,j i,j成立;
3. d i j ≤ d i k + d k j d_{ij}\le d_{ik}+d_{kj} dij≤dik+dkj,对一切 i , j , k i,j,k i,j,k成立;
闵可夫斯基距离(Minkowski distance)越大相似度越小,距离越小相似度越大。
给定样本集合 X X X, X X X是 m m m维实数向量空间 R m \R^m Rm中点的集合,其中
x i , x j ∈ X , x i = ( x 1 i , x 2 i , ⋯ , x m i ) T , x j = ( x 1 j , x 2 j , ⋯ , x m j ) T x_i,x_j\in X,x_i=(x_{1i},x_{2i},\cdots,x_{mi})^T,x_j=(x_{1j},x_{2j},\cdots,x_{mj})^T xi,xj∈X,xi=(x1i,x2i,⋯,xmi)T,xj=(x1j,x2j,⋯,xmj)T
那么两个样本 x i , x j x_i,x_j xi,xj的闵可夫斯基距离定义为:
d i j = ( ∑ k = 1 m ∣ x k i − x k j ∣ p ) 1 p , p ≥ 1 d_{ij}=\left(\sum_{k=1}^m|x_{ki}-x_{kj}|^p\right)^\cfrac{1}{p},p\ge1 dij=(k=1∑m∣xki−xkj∣p)p1,p≥1
特殊情况:
当p=2时称为欧氏距离(Euclidean distance)
d i j = ( ∑ k = 1 m ∣ x k i − x k j ∣ 2 ) 1 2 d_{ij}=\left(\sum_{k=1}^m|x_{ki}-x_{kj}|^2\right)^\cfrac{1}{2} dij=(k=1∑m∣xki−xkj∣2)21
当p=1时称为曼哈顿距离(Manhattan distance)
d i j = ∑ k = 1 m ∣ x k i − x k j ∣ d_{ij}=\sum_{k=1}^m|x_{ki}-x_{kj}| dij=k=1∑m∣xki−xkj∣
当p=0时称为切比雪夫距离(Chebyshev distance)
d i j = max k ∣ x k i − x k j ∣ d_{ij}=\underset{k}{\max}|x_{ki}-x_{kj}| dij=kmax∣xki−xkj∣
马哈拉诺比斯距离(Mahalanobis distance),简称马氏距离,也是另一种常用的相似度,考虑各个分量(特征)之间的相关性并与各个分量的尺度无关。马哈拉诺比斯距离越大相似度越小,距离越小相似度越大。
给定一个样本集合 X X X, X = [ x i j ] m × n X=[x_{ij}]_{m\times n} X=[xij]m×n,其协方差矩阵记作 S S S。样本 x i , x j x_i,x_j xi,xj之间的马哈拉诺比斯距离定义为
d i j = [ ( x i − x j ) T S − 1 ( x i − x j ) ] 1 2 x i = ( x 1 i , x 2 i , ⋯ , x m i ) T , x j = ( x 1 j , x 2 j , ⋯ , x m j ) T d_{ij}=\left[(x_i-x_j)^TS^{-1}(x_i-x_j)\right]^\cfrac{1}{2}\\ x_i=(x_{1i},x_{2i},\cdots,x_{mi})^T,x_j=(x_{1j},x_{2j},\cdots,x_{mj})^T dij=[(xi−xj)TS−1(xi−xj)]21xi=(x1i,x2i,⋯,xmi)T,xj=(x1j,x2j,⋯,xmj)T
样本之间的相似度也可以⽤相关系数(correlation coefficient)来表示。
相关系数的绝对值越接近于1,表示样本越相似
越接近于0,表示样本越不相似。如果等于并不表示二者没有关系,而是表示二者没有线性关系,可能会有非线性关系。
样本 x i , x j x_i,x_j xi,xj之间的相关系数定义为
r i j = ∑ k = 1 m ( x k i − x ˉ i ) ( x k j − x ˉ j ) [ ∑ k = 1 m ( x k i − x ˉ i ) 2 ∑ k = 1 m ( x k j − x ˉ j ) 2 ] 1 2 r_{ij}=\cfrac{\sum_{k=1}^m(x_{ki}-\bar x_i)(x_{kj}-\bar x_j)}{\left[\sum_{k=1}^m(x_{ki}-\bar x_i)^2\sum_{k=1}^m(x_{kj}-\bar x_j)^2\right]^\frac{1}{2}} rij=[∑k=1m(xki−xˉi)2∑k=1m(xkj−xˉj)2]21∑k=1m(xki−xˉi)(xkj−xˉj)
x ˉ i = 1 m ∑ k = 1 m x k i , x ˉ j = 1 m ∑ k = 1 m x k j \bar x_i=\cfrac{1}{m}\sum_{k=1}^mx_{ki},\bar x_j=\cfrac{1}{m}\sum_{k=1}^mx_{kj} xˉi=m1k=1∑mxki,xˉj=m1k=1∑mxkj
样本之间的相似度也可以⽤夹⻆余弦(cosine)来表示。
夹⻆余弦越接近于1,表示样本越相似
越接近于0,表示样本越不相似。
样本 x i , x j x_i,x_j xi,xj之间的余弦相似度定义为
s i j = ∑ k = 1 m x k i x k j [ ∑ k = 1 m x k i 2 ∑ k = 1 m x k j 2 ] 1 2 s_{ij}=\cfrac{\sum_{k=1}^mx_{ki}x_{kj}}{[\sum_{k=1}^mx_{ki}^2\sum_{k=1}^mx_{kj}^2]^\frac{1}{2}} sij=[∑k=1mxki2∑k=1mxkj2]21∑k=1mxkixkj
⽤距离度量相似度时,距离越⼩样本越相似。
⽤相关系数时,相关系数越⼤样本越相似。
注意不同相似度度量得到的结果并不⼀定⼀致。
例如下图可以看出,如果从距离的⻆度看,A和B⽐A和C更相似
但从相关系数的⻆度看, A和C⽐A和B更相似。
通过聚类得到的类或簇,本质是样本的⼦集。
如果⼀个聚类⽅法假定⼀个样本只能属于⼀个类,或类的交集为空集,那么该⽅法称为硬聚类(hard clustering)方法。
如果⼀个样本可以属于多个类,或类的交集不为空集,那么该⽅法称为软聚类(soft clustering)⽅法。
⽤ G G G表示类或簇(cluster),⽤ x i , x j x_i, x_j xi,xj表示类中的样本,⽤ n G n_G nG表示 G G G中样本的个数,⽤ d i j d_{ij} dij表示样本 x i , x j x_i, x_j xi,xj之间的距离。
类或簇有多种定义,下⾯给出⼏个常⻅的定义:
1.设 T T T为给定的正数,若集合 G G G中任意两个样本 x i , x j x_i, x_j xi,xj有:
d i j ≤ T d_{ij}\le T dij≤T
则称 G G G为⼀个类或簇
2.设 T T T为给定的正数,若对集合 G G G的任意样本 x i x_i xi,⼀定存在G中的另⼀个样本 x j x_j xj满足:
1 n G − 1 ∑ x j ∈ G d i j ≤ T \cfrac{1}{n_G-1}\sum_{x_j\in G}d_{ij}\le T nG−11xj∈G∑dij≤T
其中 n G n_G nG表示 G G G中样本的个数,则称 G G G为⼀个类或簇
3.设 T T T为给定的正数,若对集合 G G G的任意样本 x i x_i xi,⼀定存在G中的另⼀个样本 x j x_j xj满足:
1 n G ( n G − 1 ) ∑ x i ∈ G ∑ x j ∈ G d i j ≤ T \cfrac{1}{n_G(n_G-1)}\sum_{x_i\in G}\sum_{x_j\in G}d_{ij}\le T nG(nG−1)1xi∈G∑xj∈G∑dij≤T
则称 G G G为⼀个类或簇
1.类的均值 X ˉ G \bar X_G XˉG ,⼜称为类的中⼼
1 n G ( n G − 1 ) ∑ x i ∈ G ∑ x j ∈ G d i j ≤ T \cfrac{1}{n_G(n_G-1)}\sum_{x_i\in G}\sum_{x_j\in G}d_{ij}\le T nG(nG−1)1xi∈G∑xj∈G∑dij≤T
2.类的直径(diameter) D G D_G DG,类的直径 D G D_G DG类中任意两个样本之间的最⼤距离,即:
D G = max x i , x j ∈ G d i j D_G=\underset{x_i, x_j\in G}{\max}d_{ij} DG=xi,xj∈Gmaxdij
3.2)类的样本散布矩阵 (Scatter Matrix) A G A_G AG与样本协⽅差矩阵
(Covariance Matrix) S G S_G SG
A G = ∑ i = 1 n G ( x i − X ˉ G ) ( x i − X ˉ G ) T A_G=\sum_{i=1}^{n_G}(x_i-\bar X_G)(x_i-\bar X_G)^T AG=i=1∑nG(xi−XˉG)(xi−XˉG)T
S G = 1 m − 1 A G = 1 m − 1 ∑ i = 1 n G ( x i − X ˉ G ) ( x i − X ˉ G ) T S_G=\cfrac{1}{m-1}A_G=\cfrac{1}{m-1}\sum_{i=1}^{n_G}(x_i-\bar X_G)(x_i-\bar X_G)^T SG=m−11AG=m−11i=1∑nG(xi−XˉG)(xi−XˉG)T
其中m为样本的维数(样本属性的个数)
下⾯考虑类 G p G_p Gp与类 G q G_q Gq之间的距离 D ( p , q ) D(p,q) D(p,q),也称为连接(linkage)。 类与类之间的距离也有多种定义。
设类 G p G_p Gp包含 n p n_p np个样本, G q G_q Gq包含 n q n_q nq个样本,分别⽤ x ˉ p \bar x_p xˉp 和 x ˉ q \bar x_q xˉq 表示 G p G_p Gp和 G q G_q Gq的均值,即类的中⼼ 。
那么类间距离度量可以表示为:
1.最短距离或单连接(single linkage)
定义类 G p G_p Gp的样本与 G q G_q Gq的样本之间的最短距离为两类之间的距离
D p q = min { d i j ∣ x i ∈ G p , x j ∈ G q } D_{pq}=\min\{d_{ij}|x_i \in G_p,x_j\in G_q\} Dpq=min{ dij∣xi∈Gp,xj∈Gq}
2.最⻓距离或完全连接(complete linkage)
定义类 G p G_p Gp的样本与 G q G_q Gq的样本之间的最⻓距离为两类之间的距离
D p q = max { d i j ∣ x i ∈ G p , x j ∈ G q } D_{pq}=\max\{d_{ij}|x_i \in G_p,x_j\in G_q\} Dpq=max{ dij∣xi∈Gp,xj∈Gq}
3.中⼼距离
定义类 G p G_p Gp与类 G q G_q Gq的中⼼ x ˉ p \bar x_p xˉp 和 x ˉ q \bar x_q xˉq 之间的距离为两类之间的距离
D p q = d x ˉ p x ˉ q D_{pq}=d_{\bar x_p\bar x_q} Dpq=dxˉpxˉq
4.平均距离
定义类 G p G_p Gp与类 G q G_q Gq任意两个样本之间距离的平均值为两类之间的距离
D p q = 1 n p n q ∑ x i ∈ G p ∑ x j ∈ G q d i j D_{pq}=\cfrac{1}{n_pn_q}\sum_{x_i\in G_p}\sum_{x_j\in G_q}d_{ij} Dpq=npnq1xi∈Gp∑xj∈Gq∑dij