PCA(Principal Component Analysis)主成分分析法是机器学习中非常重要的方法,主要作用有降维和可视化。PCA的过程除了背后深刻的数学意义外,也有深刻的思路和方法。

1. 准备数据集

本文利用sklearn中的datasets的Iris数据做示范,说明sklearn中的PCA方法。导入数据并对数据做一个概览:

import 

将数据做一个分离,分离成训练数据集和测试数据集:

from 

2. 利用PCA对数据集进行降维

将按照降维前,降维后的模型训练时间和score来了解PCA的作用

首先不对数据集做处理,直接fit,同时对降维之前的fit过程计时,查看score:

%%

通过sklearn中的PCA对数据集进行降维,查看降维后的运行时间和score:

from 

从以上数据来看,时间的运行时间有明显降低,但是准确率不是我们可以接受的:

#通过sklearn.PCA.explaine_variance_ration_来查看刚刚的2个纬度的方差爱解释度:

其中sklearn已经有一个封装好的通过方差解释度来确定数据特征数量的超参数。以下按95%的解释度来计算特征数量:

#其中sklearn中已经有封装一个函数

由此可以看到纬度有67减低到28之后,score的降低比较小,但是训练时间降低非常多。

pca 

3. PCA在可视化中的应用

虽然降低纬度后会损失信息量,降到二维进行可视化,是一个很好的方法:

##将数据集的的前2个特征绘制散点图:

从上图可以看到,对多维度的数据,可以通过降纬后进行可是,让人对很多的数据有一个直观的了解。

pca主成分分析结果解释_SKLEARN中的PCA(Principal Component Analysis)主成分分析法相关推荐

  1. Principal Component Analysis 主成分分析 【学习笔记】

    Principal Component Analysis 主成分分析笔记 文章目录 Principal Component Analysis 主成分分析笔记 PCA是什么? 数据的线性变换 拉伸操作: ...

  2. 【碎片知识(9)】PCA (Principal Component Analysis) [主成分分析]

    离开很久啦,从Ph.D.套磁开始到全部settle down花费了太久的时间,在上周也终于把研究方向定下来了,终于手头的事告一段落了.未来是跨度三到四年的research生涯,无数师兄师姐告诫我,读博 ...

  3. PCA(Principal Component Analysis 主成分分析)原理及MATLAB实现

    关于PCA的原理参见: PCA原理 PCA:一种通过特征的线性组合来实现降维的方法,目的就是在尽可能好的代表原始数据的前提下,通过线性变换将样本数据投影到地位空间中. 如图示意,二维样本分别投影到e1 ...

  4. pca各个向量之间的相关度_【T】排序--1--PCA主成分分析principal component analysis

    1. 问题 真实的训练数据总是存在各种各样的问题: 1. 比如拿到一个汽车的样本,里面既有以"千米/每小时"度量的最大速度特征,也有"英里/小时"的最大速度特征 ...

  5. 机器学习与高维信息检索 - Note 4 - 主成分分析及其现代解释(Principal Component Analysis, PCA)及相关实例

    主成分分析及其现代解释 4. 主成分分析及其现代解释 Principal Component Analysis and Its Modern Interpretations 4.1 几何学解释 The ...

  6. pca降维python实例_主成分分析(Principal component analysis, PCA)例子–Python | 文艺数学君...

    摘要这一篇是关于PCA的实战, 我们会举一个例子, 看一下PCA具体在实战中是如何来进行的. 同时我们会比较同一个数据下, 使用PCA(主成分分析)和FA(因子分析)得到结果的不同. 简介 这一篇文章 ...

  7. 【机器学习sklearn】主成分分析PCA(Principal Component Analysis)

    主成分分析方法PCA 前言 一.PCA是什么? 二.代码实践 使用MNIST数据集实现sklearn库里的主成分分析方法 不同主成分个数对应的可解释方差分析(Explained Variance) 总 ...

  8. SAS:主成分分析(Principal Component Analysis,PCA)

    from:http://blog.csdn.net/archielau/article/details/7989735 进行主成分分析主要步骤如下: 1. 指标数据标准化( SPSS软件 自动执行), ...

  9. SAS进行主成分分析(Principal Component Analysis,PCA)

    进行主成分分析主要步骤如下: 1. 指标数据标准化( SPSS软件自动执行),目的是消除不同量纲的影响: 2. 指标之间的相关性判定: 3. 确定主成分个数m: 4. 主成分Fi表达式: 5. 主成分 ...

最新文章

  1. 设计模式之模板方法模式(Template Method)摘录
  2. Android之利用JSBridge库实现Html,JavaScript与Android的所有交互
  3. 【Python基础】在pandas中使用数据透视表
  4. linux 命令分类,常用linux 命令分类整理(篇一)
  5. 收银系统服务器有什么好处,生鲜超市收银系统软件怎么选?收银系统能带来什么好处?...
  6. java 线程管理框架_实现 Java 多线程并发控制框架
  7. mysql的局限_Mysql数据分区局限性大总结
  8. 从最大似然再看线性回归
  9. c语言判断一个已知的二叉树是否是二叉排序树_从ServiceComb学习写好go代码---二叉排序树...
  10. 2021年4月自考04741计算机网络原理试卷
  11. vld在MFC 中内存泄漏检测
  12. 《钻哥学管理之现代管理学》(Yanlz+Unity+SteamVR+云技术+5G+AI=VR云游戏=技术+业务+管理+现代管理学+决策+组织+人事+领导+激励+协调+控制+系统分析+立钻哥哥+==)
  13. 相机标定示例(OpenCV /C++ /matlab工具箱TOOLBOX_calib)
  14. miui删除内置不卡米教程_MIUI11卸载系统自带软件,无需ROOT也可以
  15. springcloud整合openfeign启动报错,Error creating bean with name ‘feignTargeter‘
  16. matlab for循环与subs应用 求解
  17. Android 实现扫描二维码功能
  18. 饥荒独立服务器在线模式收不到,Windows 服务器搭建Don’t Starve Together饥荒独立服务器教程...
  19. inline-block是什么意思
  20. Oracle对话框列间距太近,如何调整MathType矩阵行列间距

热门文章

  1. 解决Android studio 非法字符的问题
  2. Yii2 解决2006 MySQL server has gone away问题
  3. Mac休眠后解决卡死转圈问题
  4. 关于解决GPS定位设备:GPS静态漂移的方法
  5. 安装VMware,出现Microsoft Runtime DLL 安装程序未能完成安装,解决方法
  6. 如何编写与非贪婪匹配的正则表达式? [重复]
  7. 推送提交到另一个分支
  8. 如何从JavaScript对象中删除项目[重复]
  9. 测试嵌套JavaScript对象键的存在
  10. 如何找到数字数组的总和