聚类就是对大量未知标注的数据集,按照数据内部存在的数据特征将数据集划分为多个不同的类别,使类别内的数据比较相似,类别之间的数据相似度比较小。
聚类算法的重点是计算样本项之间的相似度,有时候也称为样本间的距离。
PS: 补充一个维度灾难的概念
数据维度高,数据量大,这种时候样本在空间中比较密集,这种情况不太好划分。只有当数据相对比较松散的时候,才能做到有效的聚类分析。
维度高,数据量大的时候人工看就要看半天。
用几何来理解,1维空间可以解释100%的数据。2维空间是一个正方形,能解释的数据可能只是正方形中的一个圆,其他部分解释不到。3维空间是一个正方体,能解释的数据是一个球体。在2维中不能解释的数据是正方形靠近四个角附近的区域,在3维中不能解释的是靠近正方体8个顶点附近的体积。随着维度的增大,不能解释的量也越来越大(聚集在超矩形体的顶点附近),当维度越接近无穷维的时候,分类的结果自然就差了。
一、相似度距离公式
1、闵可夫斯基距离(Minkowski)
![](https://img.haomeiwen.com/i3153092/5a7f7c0a920df6f8.png)
当p为1的时候是曼哈顿距离(Manhattan)
当p为2的时候是欧式距离(Euclidean)
当p为无穷大的时候是切比雪夫距离(Chebyshev)
![](https://img.haomeiwen.com/i3153092/5d2c40496a1397c5.png)
2、标准化欧式距离(Standardized Euclidean Distance)
左边公式是对样本所有的特征值做标准化,得到新的特征值。
![](https://img.haomeiwen.com/i3153092/8a2e3bf4410a5e13.png)
中间公式里的s标准差怎么来的?
特征x1,对应了很多样本。所有样本的1号特征的均值即标准差,记为s1;
若每组样本有n个特征,那么就对应n个标准差 s1,s2 , ... , sn;
![](https://img.haomeiwen.com/i3153092/632a707108384443.png)
3、夹角余弦相似度(Cosine):
挖掘数据内在关联的时候可能会用到。
![](https://img.haomeiwen.com/i3153092/6e2125ff0f4ee5b8.png)
![](https://img.haomeiwen.com/i3153092/9d56054b754df6db.png)
4、KL距离(相对熵)
用来度量两个分布的相似程度。P(X)和Q(X)是两个分布。求出来的是P相对于Q的相似度。
物理意义:在一个事件空间中,P(X)的事件空间,若用Q(X)这个概率分布进行编码的时候(Q来描述P),平均每一个基本事件的编码长度增加了多少比特。回顾之前信息熵的概念:《01 决策树 - 数学理论概述 - 熵》
或者也可以这样理解:已知了Q的分布,用Q近似得去估计P,使得P的不确定度减少了多少。即,用一个分布来保证另一个分布的额外不确定度。
当P(X) = Q(X)时,表示两个分布完全相等。那么相对熵=0;
当P(X)和Q(X)的相似度差异很大,那么意味着相对熵的距离就越大。
![](https://img.haomeiwen.com/i3153092/7a0522a2050b70d2.png)
Jaccard、Pearson这两个相似度的度量公式偏重于统计学。 在机器学习中用的比较少,但是可以直接计算得到结果。
5、杰卡德相似系数(Jaccard)
如果J(A,B) 越趋近于1,表示A和B集合完全重合。如果J(A,B) 趋近于0,表示A和B集合几乎没有相交。
即J(A,B) 越接近于1,越相似。距离和相似程度反比,距离越小,相似程度越大。所以用 1-J(A,B) 来表示度量函数时,值越大,相似度越大。
![](https://img.haomeiwen.com/i3153092/1c5e6c0b12f6b2da.png)
6、Pearson相关系数
回顾: 标准差、方差、协方差的公式。
E[(X-E(X))(Y-E(Y))]称为随机变量X和Y的协方差
即 COV(X,Y)=E(XY)-E(X)E(Y);
![](https://img.haomeiwen.com/i3153092/18d4d9193cfeb23c.png)
协方差、方差都是描述的是数据的波动程度。
如一组数据:A:[0.00038、0.00001、0.00031];
第1个数据的大小是第二个数据的38倍,但是从绝对数值大小上来看,两者只相差了0.00037,方差看上去不大。
现在有另一组数据:B:[100000,1000020,1000010];
是A数据的方差大还是B数据的方差大?
绝对数值上是B的方差大,但是从波动范围来看,A数据的波动更大。所以用方差或者协方差来描述数据的波动情况不是很好的选择。
所以在计算相对数据波动大小的时候,我们要将数据标准化。
即:两个数据的协方差/两个数据的标准差的乘积 = Cov(X,Y) / √D(X) √D(Y)
衡量两个特征相似度的指标,我们把指标缩放到了[-1,1]之间。
具体计算公式如下:
![](https://img.haomeiwen.com/i3153092/a4ed42eddc33fa9a.png)
一般情况下:
若:|PXY|<0.3 则:X和Y不相关;
若:0.3<|PXY|<0.7 则: X和Y弱相关
若:0.7<|PXY|<1 则:X和Y强相关;
若:PXY>0 则:正相关;
若:PXY<0 则:负相关;
网友评论