什么是聚类?数据间的相似性和距离的测量方式有哪些?数据标准化如何进行距离计算?层次聚类的思想和流程?K-均值聚类的思想和流程?距离的计算方式如何影响聚类结果?
聚类的要素,包括数据,差异性/相似性测量方式,聚类算法(标准化执行程序或流程)
理解相似性和差异性的度量(p40)。Jaccard和余弦相似性度量。
以下内容由AI生成:
余弦相似度 (Cosine Similarity)是一种衡量两个向量在方向上相似程度的指标,通过计算它们之间夹角的余弦值来实现。它在文本分析、推荐系统、图像识别等领域广泛应用,尤其适用于高维数据(如词向量、用户行为特征等)。
对于两个向量 A 和 B ,余弦相似度计算公式为:
余弦相似度=∥A∥⋅∥B∥A⋅B=∑i=1nAi2⋅∑i=1nBi2∑i=1nAiBi
文本相似度
推荐系统
图像识别
自然语言处理(NLP)
皮尔逊相关系数 (Pearson Correlation Coefficient)是统计学中衡量两个变量之间线性相关程度 的指标,由卡尔·皮尔逊提出。其取值范围在 [-1, 1] 之间,能够反映变量间的正相关、负相关或无相关性。
对于变量 X 和 Y,其观测值为 (x1,y1),(x2,y2),…,(xn,yn),皮尔逊相关系数 r 的计算公式为:
r=标准差(X)⋅标准差(Y)协方差(X,Y)=∑i=1n(xi−xˉ)2⋅∑i=1n(yi−yˉ)2∑i=1n(xi−xˉ)(yi−yˉ)
其中:
相关系数 r |
相关性 |
解释 |
---|---|---|
1 |
完全正相关 |
Y随X线性递增 |
0 |
无线性相关性 |
变量间无明显线性关系 |
-1 |
完全负相关 |
Y随X线性递减 |
定义 :
欧氏距离是衡量两个点在多维空间中绝对距离的指标,即两点之间的直线距离。
公式 :
对于两个点 A=(a1,a2,…,an) 和 B=(b1,b2,…,bn),欧氏距离为:
d=i=1∑n(ai−bi)2
特点 :
问题 :
假设两个特征:
计算欧氏距离时,身高差异(如50 cm)会远大于体重差异(如50 kg),导致距离主要由身高决定,而体重的影响被弱化。
解决方法 :
通过归一化 (Normalization)将不同特征的取值范围统一,消除量纲和量级的影响。
将数据缩放到固定区间(如[0, 1]):
xnorm=xmax−xminx−xmin
适用场景 :
将数据转换为均值为0、标准差为1的分布:
xstd=σx−μ
适用场景 :
归一化前 :
示例 :
假设有两个样本:
归一化前 :
欧氏距离 = (180−160)2+(70−60)2=400+100=500≈22.36
归一化后 (假设身高缩放到[0,1],体重缩放到[0,1]):
归一化后,身高和体重对距离的贡献权重相同。
欧氏距离的相关性矩阵 通常指的是通过计算样本之间的欧氏距离,生成一个对称矩阵,用于表示样本间的相似性或差异性。虽然“相关性矩阵”一般指变量间的线性相关性(如皮尔逊相关系数),但欧氏距离矩阵在功能上类似,主要用于衡量样本间的绝对距离 而非相关性。以下是详细解释:
对于 n 个样本,每个样本有 m 个特征,欧氏距离矩阵是一个 n×n 的对称矩阵,其中每个元素 Dij 表示样本 i 和样本 j 之间的欧氏距离:
Dij=k=1∑m(xik−xjk)2
特点 :
对比项 |
欧氏距离矩阵 |
相关性矩阵 |
---|---|---|
衡量内容 |
样本间的绝对距离 |
变量间的线性相关性 |
输入数据 |
样本(行)之间的关系 |
变量(列)之间的关系 |
取值范围 |
[0,+∞) |
[−1,1] |
应用场景 |
聚类、分类、异常检测 |
特征选择、关系分析 |
可通过热图(Heatmap)直观展示距离矩阵
闵可夫斯基距离 (Minkowski Distance)是欧氏距离和曼哈顿距离的泛化形式 ,通过一个参数 p 控制距离计算的敏感度。它在机器学习和数据分析中广泛用于衡量样本间的相似性或差异性。
对于两个点 A=(a1,a2,…,an) 和 B=(b1,b2,…,bn),闵可夫斯基距离公式为:
d(A,B)=(i=1∑n∣ai−bi∣p)1/p
其中:
曼哈顿距离(( p = 1 )) :
计算坐标差的绝对值之和,适用于网格状路径(如城市街区)。
欧氏距离(( p = 2 )) :
直线距离,适用于连续空间中的几何分析。
切比雪夫距离(( p \to \infty )) :
取坐标差的最大绝对值,适用于维度间重要性差异大的场景。
4.马哈拉诺比斯距离
马哈拉诺比斯距离(Mahalanobis Distance)是一种统计度量方法,用于衡量数据点与分布中心或不同分布之间的相似性。与欧氏距离不同,它考虑了数据各维度之间的相关性 和尺度差异 ,因此在多维数据分析中更为有效。
欧氏距离的局限性 :
欧氏距离直接计算两点之间的几何距离,但假设所有维度相互独立且方差相同。若数据存在相关性或不同维度的量纲差异(如身高和体重),欧氏距离可能失真。
马哈拉诺比斯距离的改进 :
通过引入协方差矩阵 ,标准化数据并消除维度间的相关性,使距离度量更符合数据的实际分布。
对于数据点 x 和分布中心 μ (或另一点 y ),马哈拉诺比斯距离定义为:
DM=(x−μ)TS−1(x−μ)
其中:
如何比较分差?在两场不同的考试中,分差相当于多少个标准差?
层次聚类
层次聚类的步骤是,计算相似度或距离矩阵,让每个点成为一个集群,合并最相似的集群,更新相似度或距离矩阵,继续合并最相似的矩阵,直到只剩下一个集群。
合并集群后如何更新相似度或距离矩阵?最小值/最大值/群组各点距离的平均值/中心点之间的距离
层次聚类(Hierarchical Clustering)和分区聚类(Partitional Clustering)是两种主要的聚类分析方法,它们在算法逻辑、应用场景和结果形式上有显著差异。以下是详细解释和对比:
步骤 |
层次聚类 |
分区聚类(以K-means为例) |
---|---|---|
初始化 |
每个样本为独立簇(聚合)或一个大簇(分裂) |
随机选择K个初始中心点 |
相似度计算 |
基于簇间距离(如单链接、全链接、平均链接) |
基于样本到中心点的距离(如欧氏距离) |
迭代方式 |
逐步合并或分裂,形成树状结构 |
迭代更新中心点和簇分配,直到收敛 |
结果输出 |
树状图(需手动选择切割点确定簇数) |
直接输出K个簇的标签 |
维度 |
层次聚类 |
分区聚类 |
---|---|---|
簇数选择 |
无需预先指定,通过树状图动态选择 |
需预先指定K值(如K-means) |
计算复杂度 |
高(O(n²)或O(n³)),适合小数据集 |
低(O(n·K·d·iter)),适合大数据集 |
对噪声/异常值敏感度 |
较敏感(尤其是单链接) |
较敏感(可通过K-medoids改进) |
结果可解释性 |
树状图直观展示层次关系 |
直接输出簇标签,缺乏层次信息 |
数据分布假设 |
无严格假设(依赖链接准则) |
通常假设簇是凸形(如K-means假设球形) |
层次聚类 :
分区聚类 :