机器学习第十七讲:PCA → 把100维数据压缩成3D视图仍保持主要特征

资料取自《零基础学机器学习》
查看总目录:学习大纲

关于DeepSeek本地部署指南可以看下我之前写的文章:DeepSeek R1本地与线上满血版部署:超详细手把手指南


主成分分析(PCA)是一种数据降维魔法师,能够在保留关键信息的前提下,把复杂数据"折叠"成更简单形式。就像用3句话总结一本小说核心情节1。下面通过超市顾客数据案例讲解:

一、核心思想(如同快递装箱)

假设要运输100件形状各异的货物(即100维特征),但只能用3个标箱打包:

flowchart LR
    杂乱货物 --> 找出承载量最大的箱子 --> 按重要性装箱
  1. 找主运输箱:选取能装最多货物的箱子(主成分1)
  2. 补充空隙:选与第一箱垂直的第二箱装剩余重要货物(主成分2)
  3. 反复叠加:直到装满3个箱子(主成分3),丢弃不重要的零碎物品1
类比说明:就像用"年收入+消费频率+健康指数"3个维度,就能代表原始30个消费行为特征的核心信息

二、实战步骤(用超市数据演示)

案例背景:超市有200个顾客的100维消费数据,包括:

  • 生鲜购买频率
  • 电子产品消费额
  • 促销敏感度
  • ...(共100项指标)1
graph TD
    A[原始100维数据] --> B[标准化处理]
    B --> C[计算协方差矩阵]
    C --> D[找出方差最大的方向]
    D --> E[提取前3个主成分]
  1. 特征标准化:消除量纲差异,让"购买次数"和"消费金额"可比(如同统一用公分和公斤替代市尺和市斤)2
  2. 寻找主方向

    • 第一主成分:解释最大方差的方向(如综合消费能力轴)
    • 第二主成分:解释剩余方差且与第一正交(如消费偏好方向)
    • 第三主成分:继续捕捉剩余重要信息(如促销敏感度)1
  3. 数据投影
    原始100维数据投影到3个主轴上,得到:

    # 转换后的数据示例
    顾客A: [2.5, -0.8, 1.2]
    顾客B: [-1.3, 0.7, 0.3]

    数字代表在三个主方向上的强度值

三、神奇效果(三维可视化)

压缩后的3D散点图能清晰展示客户分群:

graph LR
    X轴-->综合消费能力
    Y轴-->品质偏好度
    Z轴-->价格敏感度
  • 簇1(右上角):高消费+爱品质+不差钱 → 重点维护客户
  • 簇2(中部):中等消费+促销敏感 → 精准营销目标
  • 簇3(左下方):低频消费+低单价 → 潜在流失客户1
生活场景:就像用身高/体重/体脂率3个指标代替50项体检数据,医生仍能判断健康状况1

四、应用场景与注意事项

优势场景

  • 高维数据可视化(如基因数据)
  • 去除冗余特征(如相片去噪)
  • 加速模型训练(减少计算量)1

使用注意

  • 主成分无实际含义(类似加密坐标)
  • 会丢失部分细节信息
  • 需要先标准化处理2

目录:总目录
上篇文章:机器学习第十六讲:K-means → 自动把超市顾客分成不同消费群体
下篇文章:机器学习第十八讲:混淆矩阵 → 诊断模型在医疗检查中的误诊情况


2《零基础学机器学习》第四章第二节特征标准化
1《零基础学机器学习》第五章第六节降维技术


  1. 5-4
  2. 4-1

kovli
13 声望8 粉丝