位置: IT常识 - 正文

PCA降维原理 操作步骤与优缺点(pca降维的原理)

编辑:rootadmin
PCA降维原理 操作步骤与优缺点

推荐整理分享PCA降维原理 操作步骤与优缺点(pca降维的原理),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:pca降维的原理,pca降维的原理及步骤,pca降维例题详解,pca降维后怎么输出重要特征,pca降维图,pca降维图,pca降维的原理,pca降维算法的作用,内容如对您有帮助,希望把文章链接给更多的朋友!

  PCA全称是Principal Component Analysis,即主成分分析。它主要是以“提取出特征的主要成分”这一方式来实现降维的。

   介绍PCA的大体思想,先抛开一些原理公式,如上图所示,原来是三维的数据,通过分析找出两个主成分PC1和PC2,那么直接在这两个主成分的方向上就可以形成一个平面,这样就可以把我们三位的样本点投射到这一个平面上(如右图)。那么此时的PC1和PC2都不单单是我们的其中某一维特征,而是各个特征通过某种线性变化的组合结果。这就是PCA降维宏观上的效果。

  那PCA降维是如何实现的呢?在讲其具体实现原理前,先要清楚方差和协方差的概念:方差大概就是一些点在一个维度的偏差,越分散的话方差越大。而协方差是衡量一个维度是否会对另一个维度有所影响,从而查看这两个维度之间是否有关系。

  PCA通过线性变换将元数据映射到新的坐标系中,使映射后的第一个坐标上的方差最大,第一个坐标也就是第一个主成分PC1,以此类推。在sklearn的PCA包中,有一个explained_variance_ratio_,它代表降维后的各主成分的方差值占总方差值的比例,这个比例越大,则越是重要的主成分。

  那么,怎么样才能实现“找到那样一个坐标,使得数据在这个坐标上的映射方差最大”呢?按照下面的计算过程就可以实现这个效果。

PCA计算过程:

  PCA总体计算步骤大概有:

  首先对于数据集,有m个样本,设每个样本有n个维度。表示如下:

   在上图中,其实只要看中间那幅图就行。左图和右图则是我分别用来突出样本的和特征的关系,比如第一列,就是第一个样本的所有值;而第一行,就是第一个特征的所有值。

  对于每一个维度我们就可以得到均值,如下图所示:

   每一个维度减去这个均值,得到一个矩阵(相当于将坐标进行了平移)。

  到这里,我们的数据“去中心化”就完成了,这样去中心化的目的就是:让每个特征下的均值都为0,后续计算特征之间协方差的时候就可以简化计算。注意,PCA的降维就是围绕每个特征(即每个坐标轴)进行展开,而不是围绕样本。因为就想开头图上描述的一样,样本点数量是不变化的,但是特征的维度会有改变,导致样本点的形状分布上发生变化。

  最终,我们得到的去中心化结果如下:

   现在,我们需要对处理后的数据在特征维度(也就是各个坐标轴之间)进行协方差矩阵的运算。

  在图中我们一共有n个特征,若特征两两组合,我们会得到一个n^2的协方差矩阵。如下图所示:(其中每个f就是原数据中一行一行的特征)

   而协方差的定义为:

  因为我们的去中心化操作,所有特征的均值(对应公式中的x和y的均值)已经变成0了,所以此时协方差可以表示成:

  因此,协方差矩阵可以写成:

  其中,m是样本点的个数,在上面已经提到过了。

PCA降维原理 操作步骤与优缺点(pca降维的原理)

(补充一点:其实可以发现,要得到这样的协方差矩阵,只需要原数据乘以自身的转置就能得到,如下图所示:

 )

  接下来,就是对协方差矩阵求特征值和特征向量,并根据特征值从大到小排序,每个特征值对应着一个特征向量。对于求特征值和特征向量的方法,其实就是用特征值分解,或者是svd矩阵分解,在这篇文章里有提到过,原理都类似。

  有了特征值和特征向量,我们讲一下它们对应的意义和接下来的操作步骤:

先说结论:(我们知道得到的特征值和特征向量是一一对应的)

对协方差矩阵求出来的特征向量,就是新坐标轴方向、数据的旋转方向或者说是新的主成分方向。

对协方差矩阵求出来的特征值,就是数据在对应新坐标轴上投影的方差大小,或者说是其对应特征向量上包含的信息量。而某一特征值除以全部特征值和的商就为:其对应特征向量的(方差)贡献率。

  我们希望数据在新坐标轴上投影的方差尽可能大,因此往往选取前k个最大特征值所对应的特征向量。将得到的特征值从大到小排序,对应的特征向量就是第一个主成分、第二个主成分……以此类推。将这些特征向量组成矩阵P,那么我们降维后的数据就是:

(这个降维方式也可以从矩阵乘法的顺序稍微的理解一下:特征向量的每一行(每一个特征向量)逐一去乘以原数据中的每条数据,逐一地去旋转和映射……)  

至此,PCA降维的操作步骤就做完了。

  但为什么根据协方差矩阵得出的特征值以及特征向量,就可以拿来对原数据进行降维呢?这里面就涉及数学比如拉格朗日之类的以及线性代数上面的推导和证明。比如从另一个角度来看,每一个新的坐标轴是由原来的坐标维度线性相加的结果。

  仔细探究了一下,发现要画的图和说的意思实在太多了,就不钻了。总之,得出的特征向量构成的矩阵是一个完美的用于原数据“旋转”或者原坐标轴“线性相加”的矩阵,使得操作之后的数据在新坐标轴上有着最大的方差,以及最重要的——较少的坐标轴数。

关于n_components

关于主成分个数的确定,在scikit-learn中调用pca = PCA(n_components=n)时,有两种定义方式: 

  1.一种是把n设置成整数,比如n=3,表示要保留三个主成分,即新坐标轴有三个维度。

  2.一种是把n设置成小数,假设所有特征向量加起来的贡献率是1,假定要0.95的主成分贡献率,就令n=0.95,那么就会按特征值从大到小一直加到累计贡献率大于等于0.95的特征向量个数,最终就会降到那个维。

  第一种是偏向于指定维度的数量,第二种则偏向于指定主成分的保留程度。

PCA降维的优缺点

优点:

1.通过PCA降维之后的各个主成分之间是正交的,可以消除原始数据之间相互影响的因素。

2.PCA降维的计算过程并不复杂,因为主要就是对一个协方差矩阵做特征值分解,因此实现起来较简单容易。

3.在保留大部分主要信息的前提下,起到了降维效果。

缺点:

1.主成分特征维度的含义具有模糊性,解释性差。(我们最多可以理解成主成分只是由原来的坐标维度线性相加的结果,但加出来之后它到底是啥就不好说了)

2.PCA降维的标准是选取令原数据在新坐标轴上方差最大的主成分。但方差小的特征就不一定不重要,这样的唯一标准有可能会损失一些重要信息。

3.PCA毕竟是只保留特定百分比的主成分,属于“有损压缩”,难免会损失一些信息。

本文链接地址:https://www.jiuchutong.com/zhishi/299623.html 转载请保留说明!

上一篇:如何部署一个自己的AI绘图(怎样部署)

下一篇:人体姿态识别(人体姿态识别国内外研究现状)

  • 教大家强制删除id账号(教大家强制删除华为id账号)

    教大家强制删除id账号(教大家强制删除华为id账号)

  • 抖音主人能删除别人的评论吗(抖音主人能删除别人的表情评论吗)

    抖音主人能删除别人的评论吗(抖音主人能删除别人的表情评论吗)

  • 荣耀60有没有红外线功能(荣耀60有没有红外线遥控器)

    荣耀60有没有红外线功能(荣耀60有没有红外线遥控器)

  • QQ随心贴可以关闭吗(qq随心贴关闭)

    QQ随心贴可以关闭吗(qq随心贴关闭)

  • 手机屏幕残影修复(手机屏幕残影修复办法)

    手机屏幕残影修复(手机屏幕残影修复办法)

  • 抖音的在线时间准吗(抖音的在线时间怎么设置)

    抖音的在线时间准吗(抖音的在线时间怎么设置)

  • 抖音怎么清理无效视频(抖音怎么清理无效关注)

    抖音怎么清理无效视频(抖音怎么清理无效关注)

  • 微信群删了怎么恢复(微信群删了怎么恢复找回来)

    微信群删了怎么恢复(微信群删了怎么恢复找回来)

  • 启动热键是哪个(从u盘启动重装系统)

    启动热键是哪个(从u盘启动重装系统)

  • 微信头像是空白表示什么意思(对方微信头像是空白)

    微信头像是空白表示什么意思(对方微信头像是空白)

  • 电脑开机没信号(电脑开机没信号输入)

    电脑开机没信号(电脑开机没信号输入)

  • 苹果xr手机面容识别一直转圈(苹果xr手机面容id不可用是怎么回事)

    苹果xr手机面容识别一直转圈(苹果xr手机面容id不可用是怎么回事)

  • 电源适配器坏了的现象(如何判断电源适配器坏了)

    电源适配器坏了的现象(如何判断电源适配器坏了)

  • 手机为什么安装失败(手机为什么安装不了qq)

    手机为什么安装失败(手机为什么安装不了qq)

  • 苹果个人开发者账号有什么用(苹果个人开发者账号多少钱)

    苹果个人开发者账号有什么用(苹果个人开发者账号多少钱)

  • ipv6的地址总数为多少(ipv6的地址总数是ipv4的几倍)

    ipv6的地址总数为多少(ipv6的地址总数是ipv4的几倍)

  • 手机上如何看电视直播(手机上如何看电视频道)

    手机上如何看电视直播(手机上如何看电视频道)

  • vsco怎么注销注册账号(vsco如何注销账号)

    vsco怎么注销注册账号(vsco如何注销账号)

  • 苹果旁白怎么快速关闭(苹果旁白怎么搞)

    苹果旁白怎么快速关闭(苹果旁白怎么搞)

  • 苹果听觉当前线路不可用是什么意思(苹果听觉当前线路不可用如何解决)

    苹果听觉当前线路不可用是什么意思(苹果听觉当前线路不可用如何解决)

  • 拼多多1元抢购怎么抢(拼多多1元抢购榴莲真的吗)

    拼多多1元抢购怎么抢(拼多多1元抢购榴莲真的吗)

  • vivox27微信怎么没有美颜功能了(vivox27微信怎么投屏到电视)

    vivox27微信怎么没有美颜功能了(vivox27微信怎么投屏到电视)

  • 农业病虫害数据集与算法——调研整理(2020年农业病虫害)

    农业病虫害数据集与算法——调研整理(2020年农业病虫害)

  • css相邻兄弟选择器是什么(选择相邻兄弟需要使用下列哪个符号)

    css相邻兄弟选择器是什么(选择相邻兄弟需要使用下列哪个符号)

  • 网络课程购买
  • 未取得房屋产权证租赁
  • 企业所得税汇算清缴时间
  • 废铁回收行业前景怎么样
  • 注册公司认缴出资方式怎么选
  • 承兑汇票怎么做假
  • 小微企业增值税优惠政策最新2023
  • 注销实收资本账务处理
  • 非现金资产债务怎么算
  • 司法拍卖定义
  • 增值税税额由哪方承担
  • 土地使用税延期还延续吗
  • 长期投资包括哪些会计科目
  • 赞助费属于赠与关系吗
  • 员工报销油费计入个税吗
  • 单位日常发的钱都有哪些
  • 营改增后填用作废的发票可以用来报销吗?
  • 专票作废后怎样退税
  • 更换金税盘后数据能恢复么
  • 吊装费用税率
  • 个人所得税申报方式选哪个比较好
  • 货物运输企业纳税多少
  • 销项税额抵减是怎么回事
  • 关于金融行业的经典句子
  • 固定资产清理的借贷方向表示什么
  • 工费经费用计提吗
  • 营改增后融资租赁税率
  • 应收账款年末余额过大
  • 2019年城建税减免政策
  • 房产增值税包含个税吗
  • 企业发工资扣缴个人承担部分如何做账?
  • 小规模怎么查询
  • 升级华为鸿蒙系统怎么样
  • 进项税转出包括哪些
  • 财务里计提是什么意思
  • 在win7中,如何创建一个TXT文件
  • 新成立股份有限公司股本构成
  • cpqinet.exe是什么进程 安全吗 cpqinet进程安全性评估
  • 关于javascript
  • 如何申请菜鸟驿站快递代理点
  • 直接材料费用包括
  • 个人所得税的征收模式为()A分类征收B综合征收C
  • 一文读懂谢娜张杰购房跳单事件始末
  • 企业所得税季度申报表营业收入怎么填写
  • vue+java+mysql
  • 微信账单可以打清单吗
  • vue的actions
  • 前端vue面试题
  • 图幅翻译
  • 什么是男人无力的行为
  • 科目汇总表借方发生额为零怎么填
  • 营业外支出增加的原因
  • python怎么访问属性
  • 织梦cms为什么不维护了
  • 发放工资的转账支票收款人
  • 增值税少企业所得税高吗
  • 房地产公司项目开发流程
  • 购销合同印花税按70%
  • 进项税额转出缴税放在什么科目里
  • 年报从业人数和什么有关
  • 车辆购置税能抵扣企业所得税吗
  • 生物性资产是什么科目
  • 总产值的计算方法是什么
  • 本年利润的计算顺序为
  • rsync如何同步隐藏文件和排除文件?rsync同步隐藏文件和排除文件的方法
  • 如何将iPhone照片导入电脑
  • CentOS系统中与时间的相关命令详解
  • spybuddy.exe - spybuddy是什么进程
  • win7系统代理在哪里设置
  • win10如何安装office
  • es6新增的数据结构
  • jquery validation
  • unity3d动态加载资源
  • js点击
  • JavaScript浏览器插件制作
  • Unity3D游戏开发培训课程大纲
  • 一个治疗Unity的Prefab强迫症患者的小招(Prefab变成红色的问题)
  • domcer下载
  • 车辆购置税查询不到
  • 哈尔滨国税局待遇怎么样
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设