无监督学习
无监督学习(Unsupervised Learning)旨在从无标签数据中挖掘内在结构、模式与关系。它无需人工标注,适用于探索性分析、数据预处理和异常识别。其核心任务包括聚类、降维、关联规则挖掘以及异常检测。无监督学习常作为数据探索起点,或与监督学习结合使用(如先聚类再分类),在实际项目中发挥重要预处理和洞察作用。
聚类
聚类分析(Clustering)的核心目标:将相似对象归为一类,使得簇内差异极小、簇间差异极大。
K-Means
K-Means(K-均值聚类)最经典的划分式聚类算法,基于质心迭代优化。
- 初始化:随机选择
个质心(Centroids)。推荐使用 K-Means++ 初始化以改善收敛。 - 分配(Assignment):计算每个样本到各质心的距离(通常欧氏距离),将其分配给最近的簇。
- 更新(Update):计算每个簇内样本的均值,作为新质心。
- 迭代:重复步骤 2-3,直至质心不再变化、SSE 变化小于阈值或达到最大迭代次数。
算法简单、收敛快、可扩展到大规模数据(Mini-Batch K-Means);但是,需预设
损失函数,最小化簇内误差平方和(SSE,Sum of Squared Errors):
其中
K 值选择方法
- 肘部法(Elbow Method):绘制 SSE 随
变化曲线,寻找下降速率显著变缓的“拐点”。 - 轮廓系数(Silhouette Coefficient):范围 [-1, 1],值越高表示簇内凝聚度高、簇间分离度好。
- 间隙统计(Gap Statistic):比较实际数据与随机数据的聚类效果。
其他常见聚类算法
- DBSCAN(Density-Based Spatial Clustering of Applications with Noise)
基于密度聚类,能发现任意形状簇,自动标记噪声点(异常值)。无需预设,但对密度参数(ε 和 MinPts)敏感。 - 层次聚类(Hierarchical Clustering)
构建树状结构(Dendrogram)。分为凝聚式(Agglomerative,自底向上)和分裂式(Divisive,自顶向下)。适合小数据集,可视化清晰。 - 高斯混合模型(GMM)
假设数据由多个高斯分布生成,使用 EM 算法估计参数。支持软聚类(概率归属),适合椭球形簇。
降维
降维(Dimensionality Reduction)的核心目标是将高维数据压缩到低维空间,保留主要信息,缓解“维度灾难”(高维稀疏、计算复杂),便于可视化、去噪和加速后续模型训练。
PCA
主成分分析(PCA)经典线性降维方法。
数学原理:通过正交变换找到数据方差最大的方向(主成分),实现最大信息保留。
- 数据中心化:每个特征减去均值。
- 计算协方差矩阵:
(X 为中心化矩阵)。 - 特征分解:求协方差矩阵的特征值和特征向量,按特征值降序排序。
- 选择前
个特征向量组成投影矩阵,将原始数据投影到新空间。
特性与注意事项
- 无监督、线性、可逆(重构误差最小)。
- 解释性强:主成分对应原始特征的线性组合。
- 缺点:对非线性结构无效;对尺度敏感(需先标准化)。
t-SNE
非线性降维(t-Distributed Stochastic Neighbor Embedding),专为可视化设计。
核心思想在高维空间计算样本间相似度(高斯分布),低维空间用 t 分布匹配相似度,保留局部结构。极擅长高维数据 2D/3D 可视化(如 MNIST 手写数字、基因表达);但是,计算复杂度高(O(n²));全局结构保留差;不同运行结果略有差异;不适合作为特征输入后续模型(距离无实际意义)。
其他降维方法
- UMAP:保留局部和全局结构,比 t-SNE 更快,效果常优于 t-SNE。
- 自编码器(Autoencoder):深度学习方法,非线性降维,可处理图像等复杂数据。
关联规则
关联规则挖掘(Association Rules)挖掘数据项之间的频繁共现关系。
Apriori
- 先找频繁项集,再生成规则。
- 核心指标:
- 支持度(Support):项集出现频率。
- 置信度(Confidence):A → B 的条件概率。
- 提升度(Lift):>1 表示正相关,=1 无关,<1 负相关。
应用场景:购物篮分析、推荐系统、网页点击流分析。
异常检测
异常检测(Anomaly Detection)识别显著偏离正常模式的数据点。
常见算法
- 孤立森林(Isolation Forest):随机切分特征空间,异常点路径短(易被隔离)。高效、可解释。
- One-Class SVM:学习正常数据的边界。
- LOF(Local Outlier Factor):基于局部密度偏差。
应用场景:欺诈检测、网络入侵、设备故障监测、医疗异常诊断。
应用场景
| 任务 | 典型算法 | 典型场景 |
|---|---|---|
| 客户分群 | K-Means、GMM | 基于消费行为划分高价值/潜在/流失用户 |
| 市场细分 | 层次聚类、DBSCAN | 识别不同地域或偏好的用户群体 |
| 数据预处理 | PCA、UMAP | 去除冗余特征、加速监督模型训练 |
| 高维数据可视化 | t-SNE、UMAP | MNIST 手写数字、基因表达、词向量可视化 |
| 购物推荐 | Apriori、FP-Growth | “啤酒与尿布”经典购物篮分析 |
| 异常/欺诈检测 | Isolation Forest、LOF | 信用卡交易异常、工业设备故障监测 |