机器学习聚类知识总结

  1. 聚类任务的标准定义:

    这里写图片描述

  2. 聚类结果的性能度量:同一簇相似度高,不同簇相似度低。
    A.内部指标:
    这里写图片描述
    B.外部指标:
    这里写图片描述

  3. 距离计算:
    距离度量的定义
    闵科夫斯基距离
    这里写图片描述
    欧式距离 (p=2)
    曼哈顿距离 (p=1)
    对于无序属性采用VDM距离
    VDM距离的定义
    综合起来处理:
    这里写图片描述

  4. 基于原型的聚类:k均值算法

    这里写图片描述
    这里写图片描述

  5. 基于密度的聚类: DBSCAN算法

    这里写图片描述
    这里写图片描述

  6. 基于层次的聚类:AGENT算法
    这里写图片描述
    这里写图片描述

### 什么是聚类算法 聚类是一种无监督学习方法,其目标是将数据集中具有相似特征的样本划分为不同的组或簇[^1]。与分类不同的是,在聚类过程中,类别标签通常是未知的,因此无法利用先验知识来指导模型的学习过程。 --- ### 常见的聚类算法及其特点 #### K-均值聚类 K-均值聚类是最经典的聚类算法之一,它通过迭代优化的方式最小化簇内误差平方和(SSE)。该算法的核心思想是随机初始化若干个质心,并不断调整它们的位置直到收敛。以下是其实现的关键步骤: ```python from sklearn.cluster import KMeans import numpy as np data = np.random.rand(100, 2) # 随机生成二维数据 kmeans = KMeans(n_clusters=3).fit(data) labels = kmeans.labels_ # 获取每个点所属的簇编号 centroids = kmeans.cluster_centers_ # 获取最终的质心位置 ``` 尽管简单高效,但 K-均值对初始条件敏感且容易陷入局部最优解。 --- #### 层次聚类 层次聚类可以进一步细分为自底向上(凝聚型)和自顶向下(分裂型)两种方式。其中,凝聚型层次聚类更为常见,它的基本思路是从单个点出发逐步合并最接近的两个簇直至形成单一的大簇为止。 ```python from scipy.cluster.hierarchy import linkage, dendrogram, fcluster import matplotlib.pyplot as plt Z = linkage(data, 'ward') # 使用 Ward 方法计算距离矩阵 plt.figure(figsize=(8, 4)) dendrogram(Z) # 绘制树状图 clusters = fcluster(Z, t=3, criterion='maxclust') ``` 相比其他方法,层次聚类提供了更加直观的结果展示形式——树形结构图(Dendrogram),但它的时间复杂度较高,不适合处理大规模数据集。 --- #### 凝聚聚类 作为一种特殊的层次聚类变体,凝聚聚类允许指定连通性约束以减少不必要的比较次数。这使得它可以很好地应用于图像分割等领域。 ```python from sklearn.cluster import AgglomerativeClustering agg_clustering = AgglomerativeClustering(n_clusters=3).fit(data) labels_agg = agg_clustering.labels_ ``` 此算法特别适合于那些存在自然邻接关系的数据分布情况下的应用场景。 --- #### 谱聚类聚类基于图论的思想构建拉普拉斯矩阵并通过特征分解得到低维表示后再执行传统意义上的划分操作。这种方法尤其擅长应对非凸形状的数据集合。 ```python from sklearn.cluster import SpectralClustering spectral_model = SpectralClustering(n_clusters=3).fit(data) labels_spectral = spectral_model.labels_ ``` 然而需要注意的是,由于涉及到密集矩阵运算的缘故,当面对超高维度或者超大数量级输入时可能会面临性能瓶颈问题。 --- ### 总结对比表 | **特性/算法** | **K-均值** | **层次聚类** | **凝聚聚类** | **谱聚类** | |---------------|----------------------------------|-----------------------------|----------------------------|---------------------------| | 时间复杂度 | 较低 | 较高 | 中等 | 较高 | | 数据规模适应性 | 大规模 | 小到中等 | 中等到较大 | 中等到较小 | | 结果解释能力 | 易于理解 | 可视化效果好 | 自然边界清晰 | 对复杂形态表现优异 | 上述表格总结了几种主流聚类技术的主要差异之处。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值