PCA-主成分分析经常用于我们数据学习处理数据时对数据进行降维处理,因为我们的数据集中经常存在一些“无关紧要”的信息。

举一个简单的例子,如果你选择一个心仪的新车,你的选择可能会根据你是否喜欢大排量车,喜欢某种颜色,或者喜欢某个品牌等等有关,如果有人的喜好不同,那么他做出的决定就可能大有不同对不对?我们可以说这些信息对我们的选择有着很大的影响,它的信息量很大。

但是如果其中有一个信息是你喜不喜欢洗脚,你觉得选择车的种类与是否喜欢洗脚有没有很大的关系呢?是不是没有,也可以说这个信息对我们的选择没有很大的影响

根据上述的解释,我们可能会想到我们在数据降维就是去除这些“无关紧要”的信息。

那么我们怎样让计算机找到这些“无关紧要”的信息呢?

这就是下面要说的PCA的主要思想。

假设我们数据分布如上图所示,我们可以发现我们的数据与X轴有着很大的关系,与Y轴关系不大,我们如果把数据由图中的二维降低到只有X轴的一维好像也没有损失什么信息对不对

我们对上面这个图中点的分布进行更加专业的解释就是,这些点在X轴上数据分布的方差大,在Y轴上数据分布的方差小。

所以我们可以找到我们PCA的主要思想就是让数据在尽可能高方差的“方向”上进行降维,我们结合下图进行理解:

上图来自,笔者极度推荐对PCA数学证明有着很大兴趣的同学去看看这篇文章,定会受益匪浅

主成分分析(PCA)原理总结 - 刘建平Pinard - 博客园​www.cnblogs.com

我们结合上面这图,显然,我们可以选择在U1,U2或者X Y轴上进行数据降维,但是我们发现在这四种方式中,U1的降维后的方差最大,所以我们选择U1进行我们数据降维的方向

那么,我们如何让计算机在我们的数据集中找到最合适的方向并进行降维呢?

首先我们直到数据在计算机中一般以矩阵的形式存在,假设我们拥有一个M*N的数据集,代表着我们有着M个特征,N组数据,我们降维的过程就是找到一个方向进行投影,降低M的数值,所以我们需要找到我们投影方向的特征矩阵,然后进行左乘,进行行变换。

那么我们怎样找到投影的方向,或者说特征矩阵呢?

首先我们明确一点: 引用《线性代数的几何意义》的描述:“矩阵乘法对应了一个变换,是把任意一个向量变成另一个方向或长度都大多不同的新向量。在这个变换的过程中,原向量主要发生旋转、伸缩的变化。如果矩阵对某一个向量或某些向量只发生伸缩变换,不对这些向量产生旋转的效果,那么这些向量就称为这个矩阵的特征向量,伸缩的比例就是特征值。”

我们只要找到对于我们数据中协方差矩阵,特征值最大的几个特征向量组合起来就是我们转换矩阵,也可以说是投影方向

协方差矩阵传送门:

Xinyu Chen:如何直观地理解「协方差矩阵」?​zhuanlan.zhihu.com

特征值与特征向量传送门:

https://blog.csdn.net/dongtinghong/article/details/14216139​blog.csdn.net

那么下面我们说说PCA的过程把:

1) 对所有的样本进行中心化
2) 计算样本的协方差矩阵
3) 对矩阵进行特征值分解
4)取出最大的n个特征值对应的特征向量, 将所有的特征向量标准化后,组成特征向量矩阵W。
5)对样本集中的每一个样本转化为新的样本
6) 得到输出样本集

如果大家对其背后的数学推导过程很感兴趣的话,可以去我上面给出的链接中找到答案。

既然都说到PCA了,我们就简单的提一提LDA吧

上面我们对PCA的处理过程中是只在乎数据本身,不在乎数据背后的结果如何的对不对,用机器学习中的术语来说,这是一种无监督的降维方式,那么既然有无监督的,肯定有有监督的对不对,这就是我们LDA了,其次,由于我们是有监督的降维方式,所以LDA对于分类问题有着更加优异的表现。

下面我们聊一聊LDA的基本思想吧。

我们还是用图来解释:

上面的x和o分别代表两个类别对不对,那么我们在哪个坐标轴上投影降维更好呢?

应该是X轴对不对,因为它将两个类分离出来了对不对。

更加专业一点,两个类之间的方差比较大对不对。

我们再看看上面的两个图,是不是右边的图分类更好一点?

为什么,因为它不仅类间方差大,并且类内的方差小。

所以,这就是我们的LDA的降维标准,投影方向使得类间方差大,并且类内的方差小。

那么LDA的过程是什么样的呢?

1) 计算类内散度矩阵
2) 计算类间散度矩阵
3)计算 类内散度矩阵的转置* 类间散度矩阵 的最大的d个特征值和对应的d个特征向量得到投影矩阵
4) 对样本集中的每一个样本特征转化为新的样本
5) 得到输出样本集

具体的数学原理证明和实现过程建议大家观看:

线性判别分析LDA原理总结 - 刘建平Pinard - 博客园​www.cnblogs.com

希望大家有所收获,如果大家有收获的话,给笔者点个赞就是对笔者最大的鼓励,比心心。

lda 吗 样本中心化 需要_PCA 与 LDA 分析相关推荐

  1. lda 吗 样本中心化 需要_PCA和LDA

    一.PCA 在讲PCA之前,首先有人要问了,为什么我们要使用PCA,PCA到底是干什么的?这里先做一个小小的解释,举个例子:在人脸识别工作中一张人脸图像是60*60=3600维,要处理这样的数据,计算 ...

  2. lda 吗 样本中心化 需要_机器学习 —— 基础整理(四):特征提取之线性方法——主成分分析PCA、独立成分分析ICA、线性判别分析LDA...

    本文简单整理了以下内容: (一)维数灾难 (二)特征提取--线性方法 1. 主成分分析PCA 2. 独立成分分析ICA 3. 线性判别分析LDA (一)维数灾难(Curse of dimensiona ...

  3. 【机器学习】【线性代数】均值,无偏估计,总体/样本方差,样本标准差,矩阵中心化/标准化、协方差,正/不/负相关等,协方差矩阵

    本篇是概念讲解,协方差以及协方差矩阵的Python实现代码详见:[机器学习][线性代数]协方差+协方差矩阵的多种求解方法的Python实现(公式法 + 样本集中心化方法 + np.cov()法等) 0 ...

  4. 直播 | ICML 2021论文解读:满足隐私保护要求的去中心化无监督域迁移范式

    「AI Drive」是由 PaperWeekly 和 biendata 共同发起的学术直播间,旨在帮助更多的青年学者宣传其最新科研成果.我们一直认为,单向地输出知识并不是一个最好的方式,而有效地反馈和 ...

  5. BUSD停BUSD停止发行,从HAY的发行机制看去中心化稳定币的重要性

    BUSD停止发行,从HAY的发行机制看去中心化稳定币的重要性 近期,关于加密市场监管的话题引起广泛关注,先是Kraken因为在美国提供加密货币的质押服务而被罚3000万美元,交易所质押成为大家讨论的焦 ...

  6. 机器学习:样本去中心化目的

    作者:Spark 链接:https://www.zhihu.com/question/37069477/answer/132387124 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商 ...

  7. 用区块链改变人工智能:去中心化带来数据新范式

    近年,从围棋到人类水平的语音识别,人工智能(AI)研究者终于在他们几十年一直努力探索的领域取得了突破.取得突破进展的关键一点是研究者们可以收集巨量的数据并「学习」这些数据,从而将错误率降低到可接受范围 ...

  8. 数据的中心化和标准化

    简介: 意义:数据中心化和标准化在回归分析中是取消由于量纲不同.自身变异或者数值相差较大所引起的误差. 原理:数据标准化:是指数值减去均值,再除以标准差: 数据中心化:是指变量减去它的均值. 目的:通 ...

  9. 基于区块链的去中心化抗量子密钥管理系统

    摘要: 区块链技术在2008年被提出被称为比特币(我觉得应该是翻译为比特币应用了区块链技术),区块链技术是一种分布式的数据库.公钥基础设施PKI(Public Key Infrastructure)系 ...

最新文章

  1. 29 基于PCL的点云平面分割拟合算法技术路线(针对有噪声的点云数据)
  2. Selenium WebDriver- 使用Frame中的HTML源码内容操作Frame
  3. mybatis-plus主键配置、全局配置
  4. SharePoint 2010 使用代码创建视图查询条件
  5. Python 爬下的必胜客数据背后,藏着什么样的信息?
  6. L2-005 集合相似度(STL+暴力)
  7. GitHub使用教程详解(上)——官网操作指南[翻译]
  8. 2022最新手机设备标识码(IMEI、MEID、UDID、UUID、ANDROID_ID、GAID、IDFA等)教程
  9. [境内法规]中国人民银行关于分支行反洗钱工作的指导意见—银发[2005]56号
  10. 单例模式中饿汉模式和懒汉模式的线程安全问题
  11. fid和is_fid解释
  12. GitLab实现CICD自动化部署
  13. 关于选课系统的的界面设计、类图设计、数据库设计。
  14. python100天从新手到大师下载_GitHub - longers/Python-100-Days: Python - 100天从新手到大师...
  15. CS,四,组网及因特网
  16. Qt中使用TCP和MC协议与三菱Q系列PLC通信
  17. 为什么建议向你的同事屏蔽朋友圈?
  18. MOS管的导通过程及损耗分析
  19. 大战华为4年,香奈儿再次败诉!网友:你瞎还是我瞎?
  20. C# 修改图片文件分辨率大小

热门文章

  1. linux usb组合设备,USB组合设备(5)
  2. 自己搭建个对象存储服务难不难?
  3. 这是我见过最简单粗暴的辞职书了
  4. 为什么 Java 中 1000==1000 为 false ?
  5. 说说我为什么看好Spring Cloud Alibaba
  6. 消息中间件—RabbitMQ(集群原理与搭建篇)
  7. 【redis】布隆过滤器详解
  8. tenserflow.js 环境搭建
  9. mnn op name is empty or dup
  10. PyramidBox笔记