机器学习课程复习——主成分分析

Q:主成分分析的步骤?

1.数据预处理:对给定数据进行规范化(中心化处理),使得每一变量的平均值为0,方差为1

2.对数据进行正交变换:

原来由线性相关变量表示的数据通过正交变换变成由若干个线性无关的新变量表示的数据,新变量是可能的正交变换中变量的方差的和最大的,方差表示在新变量上信息的大小

(1)计算协方差矩阵:协方差矩阵描述了不同特征之间的相互关系

(2)求解特征值和特征向量:特征值表示对应特征向量方向上的方差大小,特征向量则定义了新的坐标轴方向

(3)选择主成分:根据特征值的大小选择前k个最大的特征值对应的特征向量作为主成分

(4)数据降维:将原始数据投影到选定的主成分构成的新坐标系中,得到降维后的数据

3.找到数据分布最分散的方向(方差最大) 作为主成分(坐标轴)

Q:主成分分析需要调的参数?

  1. n_components: 该参数决定PCA算法保留的主成分个数,即降维后的数据维度。可以直接设置为一个整数,表示希望保留的维度数;也可以设置为0到1之间的小数,表示保留的主成分方差百分比;还可以设置为'mle',此时PCA会自动选择足够多的主成分以保持指定的方差百分比。
  2. copy: 该参数决定是否在运行PCA算法之前复制输入数据。如果设为True,则会复制数据,这样原始数据不会被修改;如果设为False,则直接在原始数据上进行计算,这可能会改变原始数据的内容。
  3. whiten: 该参数决定是否对降维后的数据进行白化处理。白化处理会使所有特征均值为0方差为1。
  4. svd_solver: 该参数用于指定奇异值分解(SVD)的方法。不同的求解器适用于不同大小和结构的数据集,例如'randomized'适用于大规模数据集,而'full'则适用于较小规模的数据集。
相关推荐
千寻girling2 小时前
Python 是用来做 AI 人工智能 的 , 不适合开发 Web 网站 | 《Web框架》
人工智能·后端·算法
AI攻城狮2 小时前
OpenClaw 里 TAVILY_API_KEY 明明写在 ~/.bashrc,为什么还是失效?一次完整排查与修复
人工智能·云原生·aigc
stark张宇2 小时前
构建第一个AI聊天机器人:Flask+DeepSeek+Postgres实战
人工智能·postgresql·flask
yiyu07164 小时前
3分钟搞懂深度学习AI:自我进化的最简五步法
人工智能·深度学习
浪浪山_大橙子5 小时前
OpenClaw 十分钟快速,安装与接入完全指南 - 推荐使用trae 官方 skills 安装
前端·人工智能
火山引擎开发者社区6 小时前
OpenClaw 快速上手:把云手机变成你的 7×24 小时 AI 手机助手
人工智能
Qlly6 小时前
DDD 架构为什么适合 MCP Server 开发?
人工智能·后端·架构
Lee川6 小时前
从零构建智能对话系统:AI Agent 实战指南
人工智能
冬奇Lab6 小时前
一天一个开源项目(第43篇):Star-Office-UI - 像素风格的 AI 办公室看板,让 AI 助手的工作状态可视化
人工智能·开源·资讯
风象南7 小时前
纯文本模型竟然也能直接“画图”,而且还很好用
前端·人工智能·后端