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

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

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

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


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

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

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

杂乱货物
找出承载量最大的箱子
按重要性装箱
  1. 找主运输箱:选取能装最多货物的箱子(主成分1)
  2. 补充空隙:选与第一箱垂直的第二箱装剩余重要货物(主成分2)
  3. 反复叠加:直到装满3个箱子(主成分3),丢弃不重要的零碎物品[^5-4]

类比说明:就像用"年收入+消费频率+健康指数"3个维度,就能代表原始30个消费行为特征的核心信息

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

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

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

  2. 寻找主方向

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

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

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

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

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

X轴
综合消费能力
Y轴
品质偏好度
Z轴
价格敏感度
  • 簇1(右上角):高消费+爱品质+不差钱 → 重点维护客户
  • 簇2(中部):中等消费+促销敏感 → 精准营销目标
  • 簇3(左下方):低频消费+低单价 → 潜在流失客户[^5-4]

生活场景:就像用身高/体重/体脂率3个指标代替50项体检数据,医生仍能判断健康状况[^5-4]

四、应用场景与注意事项

优势场景

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

使用注意

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

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


[^4-1]《零基础学机器学习》第四章第二节特征标准化
[^5-4]《零基础学机器学习》第五章第六节降维技术

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/83940.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux庖丁解牛】——进程等待!

1. 进程退出场景 进程退出一般有三种场景: 。代码运行完毕,结果正确 。代码运行完毕,结果错误【比如,我们要对某个文件进行写入,但写入的文件路径出错,代码运行完毕,可是结果出错】 。代码异…

鸿蒙OSUniApp 制作简洁高效的标签云组件#三方框架 #Uniapp

UniApp 制作简洁高效的标签云组件 在移动端应用中,标签云(Tag Cloud)是一种常见的UI组件,它以视觉化的方式展示关键词或分类,帮助用户快速浏览和选择感兴趣的内容。本文将详细讲解如何在UniApp框架中实现一个简洁高效的…

ubuntu14.04/16.06 安装vscode(实测可以用)

地址:https://code.visualstudio.com/updates/v1_38 选择deb 这个版本还支持ubuntu14.04和16.06 sudo dpkg -i code_1.38.1-1568209190_amd64.deb sudo apt-get install -f安装成功,正常使用

WebRTC技术EasyRTC音视频实时通话驱动智能摄像头迈向多场景应用

一、方案背景​ 在物联网蓬勃发展的当下,智能摄像头广泛应用于安防、家居、工业等领域。但传统智能摄像头存在视频传输延迟高、设备兼容性差、网络波动时传输不稳定等问题,难以满足用户对实时流畅交互视频的需求。EasyRTC凭借低延迟、高可靠、跨平台特性…

Java EE进阶1:导读

1.发展历程 2.学习内容 前⾯的课程中,学习的是Java基础,JavaEE主要学习Java的应用,也就是学习Java在企业中是如何应用的 Java更多场景是业务开发,更狭义点可以理解为web开发.所以咱们的学习也是围绕着如何使用Java来做web开发 2.1 什么是Web开发? web&#xff08…

APPtrace 智能参数系统:重构 App 用户增长与运营逻辑

一、免填时代:APPtrace 颠覆传统参数传递模式 传统 App 依赖「邀请码 / 手动绑定」实现用户关联,流程繁琐导致 20%-30% 的用户流失。APPtrace 通过 **「链接参数自动传递 安装后智能识别」** 技术,让用户在无感知状态下完成关系绑定、场景还…

bisheng系列(一)- 本地部署(Docker)

目录 一、导读 二、说明 1、镜像说明 2、本节内容 三、docker部署 1、克隆代码 2、运行镜像 3、可能的错误信息 四、页面测试 1、注册用户 2、登陆成功 3、添加模型 一、导读 环境:Ubuntu 24.04、Windows 11、WSL 2、Python 3.10 、bisheng 1.1.1 背景…

docker介绍与常用命令汇总

docker简介 docker是什么? Docker 是一个开源的应用容器引擎,它可以让开发者将应用与运行环境打包成一个标准的、可移植的容器(Container),在任何地方都可以快速部署和运行,无需关心底层环境是否一致。 …

Android 中拖拽从一个组件到另外一个组件的写法(跨容器拖拽)

在 Android 中,拖拽一个图片(例如 ImageView)到另一个组件(如 LinearLayout、FrameLayout 等容器)涉及以下步骤: 准备工作 源组件:你从哪里开始拖动(如 ImageView)。 目…

火绒互联网安全软件:自主引擎,精准防御

在数字时代,网络安全是每一个用户都必须重视的问题。无论是个人用户还是企业用户,都需要一款高效、可靠的反病毒软件来保护设备免受恶意软件的侵害。今天,我们要介绍的 火绒互联网安全软件,就是这样一款由资深工程师主导研发并拥有…

使用亮数据代理IP+Python爬虫批量爬取招聘信息训练面试类AI智能体(手把手教学版)

文章目录 一、为什么要用代理IP?(重要!!!)二、环境准备(三件套走起)2.1 安装必备库(pip大法好)2.2 获取亮数据代理(官网注册送试用) 三、编写爬虫代码&#x…

Android屏幕采集编码打包推送RTMP技术详解:从开发到优化与应用

在现代移动应用中,屏幕采集已成为一个广泛使用的功能,尤其是在实时直播、视频会议、远程教育、游戏录制等场景中,屏幕采集技术的需求不断增长。Android 平台为开发者提供了 MediaProjection API,这使得屏幕录制和采集变得更加简单…

互联网大厂Java求职面试:Spring AI与大模型交互的高级模式与自定义开发

互联网大厂Java求职面试:Spring AI与大模型交互的高级模式与自定义开发 在当今技术领域,随着AI和大模型技术的广泛应用,如何在复杂的系统架构中高效地集成这些技术成为了各大互联网公司关注的重点。本文将通过一场模拟的面试对话&#xff0c…

MySQL 8.0 OCP 1Z0-908 161-170题

Q161.Examine this command, which executes successfully: cluster.addInstance ( ‘:’,{recoveryMethod: ‘clone’ 1}) Which three statements are true? (Choose three.) A)The account used to perform this recovery needs the BACKUP_ ADMIN privilege. B)A target i…

蓝桥杯1447 砝码称重

问题描述 你有一架天平和 N 个砝码,这 N 个砝码重量依次是 W1,W2,⋅⋅⋅,WN​。 请你计算一共可以称出多少种不同的重量? 注意砝码可以放在天平两边。 输入格式 输入的第一行包含一个整数 N。 第二行包含 N 个整数:W1,W2,W3,⋅⋅⋅,WN​…

金融量化智能体,如何开发一个有效的策略?

原创内容第887篇,专注智能量化投资、个人成长与财富自由。 本周重构了网站,升级了最新的回测引擎,以及升级了论坛。 策略年化210%,夏普比3.47,系统源代码及策略均可下载 年化37.5%,回撤控制在16.8%&…

JavaScript 性能优化:调优策略与工具使用

引言 在当今的 Web 开发领域,性能优化已不再是锦上添花,而是产品成功的关键因素。据 Google 研究表明,页面加载时间每增加 3 秒,跳出率将提高 32%。而移动端用户如果页面加载超过 3 秒,有 53% 的用户会放弃访问。性能…

为 Jenkins添加 Windows Slave远程执行 python项目脚本

测试环境 JAVA JDK 1.7.0_13 (jdk-7u13-windows-i586.exe) Jenkins Win11 64 python项目环境 实践操作 1、新建与配置结点 【系统管理】-> 【管理结点】-> 【新建结点】, 如上,输入结点名称,勾选 【Dumb Slave】,点击【OK】 说明&am…

基于springboot3 VUE3 火车订票系统前后端分离项目适合新手学习的项目包含 智能客服 换乘算法

​ 博主介绍:专注于Java(springboot ssm 等开发框架) vue .net php phython node.js uniapp 微信小程序 等诸多技术领域和毕业项目实战、企业信息化系统建设,从业十五余年开发设计教学工作 ☆☆☆ 精彩专栏推荐订阅☆☆☆☆☆…

btc交易所关键需求区 XBIT反弹与上涨潜力分析​​

在加密货币市场的浪潮中,狗狗币(DOGE)近期的走势吸引了众多投资者的目光。根据XBIT分析,狗狗币刚刚踏入关键需求区,此前虽从高点大幅下跌了10%,但XBIT去中心化交易所平台分析师认为,短期内它有望…