python sklearn decomposition PCA 主成分分析

主成分分析(PCA)

1、主成分分析(Principal Component Analysis,PCA)是最常用的一种降维方法,
通常用于高维数据集的探索与可视化,还可以用作数据压缩和预处理

2、PCA可以把具有相关性的高维变量合成为线性无关的低维变量,称为主成分。
主成分能够尽可能保留原始数据的信息

3、概念
方差:用来度量一组数据的分散程度
协方差:用来度量两个变量之间的线性相关性程度,若两个变量的协议差为0,二者线性无关
协方差矩阵:矩阵的特征向量是描述数据集结构的非零向量,?? ⃗=?? ⃗
特征向量和特征值:? ⃗ 特征向量,?是特征值

4、提取:
矩阵的主成分是其协方差矩阵对应的特征向量,按照对应的特征值大小进行排序,最大的特征值就是第一主成分,其次是第二主成分

5、原理:
1、对所有样本进行中心化:xi-(x1+x2…xm)/m
2、计算样本的协方差矩阵X(X.T)
3、对协方差矩阵X(X.T)做特征值分解
4、取最大的d个特征值所对应的特征向量w1,w2…wd
输出投影矩阵W=(w1,w2,…,wd)

6、参数说明
sklearn.decomposition.PCA(n_components=None,copy=True,whithen=False,svd_solver=‘auto’,tol=0.0,
iterated_power=‘auto’,random_state=None)
n_components:指定主成分的个数,即降维后数据的维度
svd_slover:设置特征值分解的方法:‘full’,‘arpack’,‘randomized’

PCA实现高维度数据可视化 实例
目标:
已知鸢尾花数据是4维的,共三类样本,使用PCA实现对鸢尾花数据进行降维,实现在二维平面上的可视化

实例程序编写

import matplotlib.pyplot as plt
import sklearn.decomposition as dp
from sklearn.datasets.base import load_irisx,y=load_iris(return_X_y=True) #加载数据,x表示数据集中的属性数据,y表示数据标签
pca=dp.PCA(n_components=2) #加载pca算法,设置降维后主成分数目为2
reduced_x=pca.fit_transform(x) #对原始数据进行降维,保存在reduced_x中
red_x,red_y=[],[]
blue_x,blue_y=[],[]
green_x,green_y=[],[]
for i in range(len(reduced_x)): #按鸢尾花的类别将降维后的数据点保存在不同的表表中if y[i]==0:red_x.append(reduced_x[i][0])red_y.append(reduced_x[i][1])elif y[i]==1:blue_x.append(reduced_x[i][0])blue_y.append(reduced_x[i][1])else:green_x.append(reduced_x[i][0])green_y.append(reduced_x[i][1])
plt.scatter(red_x,red_y,c='r',marker='x')
plt.scatter(blue_x,blue_y,c='b',marker='D')
plt.scatter(green_x,green_y,c='g',marker='.')
plt.show()

python sklearn PCA 实例-主成分分析相关推荐

  1. PCA降维以及Kmeans聚类实例----python,sklearn,PCA,Kmeans

    PCA 算法也叫主成分分析(principal components analysis),主要是用于数据降维的.关于降维,可以这样理解,一组数据有n个feature(客户年龄,收入,每个月消费额度等等 ...

  2. PCA(主成分分析法)的Python代码实现(numpy,sklearn)

    PCA(主成分分析法)的Python代码实现(numpy,sklearn) 语言描述 算法描述 示例 1 使用numpy降维 2 直接使用sklearn中的PCA进行降维 语言描述 PCA设法将原来众 ...

  3. python的pca计算累计贡献率_Python机器学习实战:维数约简之主成分分析(PCA)详解...

    机器学习实战:这里没有艰深晦涩的数学理论,我们将用简单的案例和大量的示例代码,向大家介绍机器学习的核心概念.我们的目标是教会大家用Python构建机器学习模型,解决现实世界的难题. 本文来自<数 ...

  4. 【Python】使用sklearn PCA对人脸数据降维

    [python]sklearn PCA对人脸数据降维与识别 1. PCA 1.1 PCA原理 1.2 sklearn PCA使用方法 2. 人脸数据降维 2.1 读取图片 2.2 使用PCA进行降维 ...

  5. Sklearn——PCA主成分分析

    Sklearn--PCA主成分分析 1.特征降维 2.特征选择和特征降维的区别 3.常用降维算法 4.sklearn中PCA算法函数 1.主成分分析 (PCA) 2.不同主成分个数对应的可解释方差分析 ...

  6. 通俗解释如何理解主成分分析PCA,Python实现PCA主成分分析2维降到1维

    知道IEEE这个世界最大电子电气学术组织禁止华为资助和中国某些一流大学教授参与审稿这个消息我是愤怒的.我也是无奈的,学校考核必须发论文到这儿,不得不发.IEEE上面的论文中国人几乎占了三成(美国人搞学 ...

  7. 机器学习算法之PCA(主成分分析)人脸识别,最小重构误差和最大化散度证明,PCA主成分分析原理剖析,PCA人脸识别matlab实现,PCA人脸识别python实现

    目录 PCA介绍 PCA大致思路 PCA人脸识别(特征脸法) matlab代码实现 Python代码实现 PCA几何解释 PCA证明最小重构误差和最大散度等价 实验结果 PCA介绍 主成分分析(Pri ...

  8. Python 实现 PCA

    前言 说好的要做个有逼格的技术博客,虽然这篇依然没什么水平,但总算走出了第一步,希望以后每天都能进步一点点吧! 接触机器学习也一年多了,也学了很多算法,而PCA是数据预处理中一个很重要的算法,当时学习 ...

  9. 使用python实现pca算法

    PCA(主成分分析)是一种常用的数据降维方法.在使用python实现PCA算法时,需要使用numpy和sklearn等库. 以下是一个使用sklearn实现PCA的示例代码: from sklearn ...

最新文章

  1. Linux网络篇基础知识
  2. 树莓派dht11上云_树莓派使用 DHT11 / DHT22 温湿度传感器
  3. 基于C#开发的浏览器隐身工具-上班别乱开
  4. AUTOSAR从入门到精通100讲(四十四)-AUTOSAR诊断实现
  5. 非会员只能试看20分钟_做欧包都要把铁锅烤半小时?太费电了,用我这办法只需预热几分钟...
  6. 华为(英国)招聘CPU/GPU架构及系统软件工程师
  7. bootsect Linux,linux_bootsect选读.doc
  8. 在 Linux 的应用中测试中的延时和丢包模拟
  9. Struts(十一):OGNL表达式(二)
  10. 企业数字化转型必备利器之微服务扩展
  11. java从本地下载pdf文件_java下载PDF文件
  12. 微信自动回复和群聊消息完善
  13. 阿尔卡特交换机配置_ALCATEL-交换机配置手册(中文).doc
  14. 运筹帷幄决胜千里,Python3.10原生协程asyncio工业级真实协程异步消费任务调度实践
  15. qcloud windows rtx cpu 100%定位
  16. linux上cgconfig服务,linux系统调优-Cgroups
  17. 配置Tomcat性能优化
  18. ElasticSearch(一)8.4.3版下载安装
  19. n阶奇数魔方阵c语言编程,n阶魔方阵C语言
  20. Linux资源控制-使用cgroup控制CPU和内存

热门文章

  1. hp笔记本安全模式启动linux,惠普笔记本如何进入安全模式,教您惠普笔记本进入安全模式的方法...
  2. MFC如何调用Flash
  3. Symantec AntiVirus企业版联机客户机端卸载密码(转)
  4. 中国大数据到底有没有前途
  5. 教你如何使用tftpd32烧录内核及文件系统镜像到nand flash
  6. 美国七大外卖O2O网站平台介绍
  7. 易车第三季营收27亿 张序安:继续专注执行三个战略重点
  8. AE不能直接拖素材进来了,只能通过导入的方式,不知道是哪里出问题了?
  9. 自考的计算机本科外加考了个学位,好找工作吗?小白求教!
  10. 3天学会C++,只能帮你到这里了