文档章节

PCA降维推导

Pulsar-V
 Pulsar-V
发布于 2017/07/28 22:14
字数 875
阅读 38
收藏 0

Principal Component Analysis (PCA) 主成分分析,是多变量分析中最老的技术之一,PCA来源于通信中的K-L变换。1901年由Pearson第一次提出主成分分析的主要方法,直到1963年Karhunan Loeve对该问题的归纳经历了多次的修改。
它的目标是通过某种线性投影,将高维的数据映射到低维的空间中表示,并期望在所投影的维度上数据的方差最大,以此使用较少的数据维度,同时保留住较多 的原数据点的特性。通俗的理解,如果把所有的点都映射到一起,那么几乎所有的信息 (如点和点之间的距离关系) 都丢失了,而如果映射后方差尽可能的大,那么数据点则会分散开来,以此来保留更多的信息。可以证明,PCA是丢失原始数据信息最少的一种线性降维方式
。(实际上就是最接近原始数据,但是PCA并不试图去探索数据内在结构)

在数学领域我们使用SVD去解决主成分分析 (PCA) 的问题
PCA的问题其实是一个基的变换,使得变换后的数据有着最大的方差。方差的大小描述的是一个变量的信息量,我们在讲一个东西的稳定性的时候,往往说要减小方差,如果一个模型的方差很大,那就说明模型不稳定了。但是对于我们用于机器学习的数据 (主要是训练数据),方差大才有意义,不然输入的数据都是同一个点,那方差就为0了,这样输入的多个数据就等同于一个数据了
首先来明确几个基础问题

向量基变换

向量

看看下面的这两个向量内积的例子

Matlab 在坐标系中我们设有两个相交但不相等的的向量A与向量B可以知道下面的式子

向量A的模等于其坐标的平方和开根号

A到向量B的垂直线(投影)长度

A与B的内积等于A到B的投影长度乘以B的模

一个二维向量可以对应二维笛卡尔直角坐标系中从原点出发的一个有向线段。
但是,在二维空间当中,只有坐标(X,Y)本身是不能够精确表示一个具有方向的向量的。可以知道向量(x,y)是一个线性组合,即二维空间的基,在线性代数中,基(也称为基底)是描述、刻画向量空间的基本工具。向量空间的基是它的一个特殊的子集。
下面是二维空间的基的一般表示

在PCA降维中,我们需要进行空间坐标的变换也就是基变换,下面来看一个例子

矩阵基变换

理论推导

(1)问题描述
对于d维空间中的n个样本,,考虑如何在低维空间中最好地代表它们。

其中m是数据实例的个数, xi是数据实例i的向量表达, x拔是所有数据实例的平均向量。定义W为包含所有映射向量为列向量的矩阵,经过线性代数变换,可以得到如下优化目标函数:

© 著作权归作者所有

共有 人打赏支持
下一篇: 降维技术
Pulsar-V

Pulsar-V

粉丝 52
博文 104
码字总数 79980
作品 1
成都
后端工程师
私信 提问
机器学习实战之主成分分析(PCA)

如果人类适应了三维,去掉一个维度,进入了二维世界,那么人类就会因为缺少了原来所适应的一个维度,而无法生存。 ——《三体》 在许多科幻电影中,有许多降维的例子。在《十万个冷笑话2》(...

罗罗攀
06/21
0
0
用线性判别分析 LDA 降维

本文结构: 什么是 LDA 和 PCA 区别 LDA 降维的计算过程 LDA 降维的例子 1. 什么是 LDA 先说判别分析,Discriminant Analysis 就是根据研究对象的各种特征值,判别其类型归属问题的一种多变量...

aliceyangxi1987
2017/07/12
0
0
【火炉炼AI】机器学习053-数据降维绝招-PCA和核PCA

【火炉炼AI】机器学习053-数据降维绝招-PCA和核PCA (本文所使用的Python库和版本号: Python 3.6, Numpy 1.14, scikit-learn 0.19, matplotlib 2.2 ) 主成分分析(Principal Component Analy...

炼丹老顽童
10/31
0
0
人工智障学习笔记——机器学习(16)降维小结

机器学习领域中所谓的降维就是指采用某种映射方法,将原高维空间中的数据点映射到低维度的空间中。降维的本质是学习一个映射函数 f : x->y,其中x是原始数据点的表达,目前最多使用向量表达形...

sm9sun
2017/12/19
0
0
机器学习之主成分分析PCA及代码示例

一、主成分分析(PCA) 主成分分析(Principal Component Analysis)是一种常用的降维算法,可通过线性组合的方法将多个特征综合为少数特征,且综合后的特征相互独立,又可以表示原始特征的大...

cxmscb
2017/03/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

重磅!亚洲诚信实力斩获:“2018 DigiCert/Symantec 年度最佳创新合作伙伴”大奖

2018年11月13日-16日,全球顶级数字证书厂商,DigiCert/Symantec亚太区圆桌会议(Asia Partner Roundtable 2018)在日本大阪隆重召开。 亚洲诚信作为DigiCert/Symantec亚太区白金战略合作伙伴和...

亚洲诚信
22分钟前
2
0
始于阿里,回归社区:阿里8个项目进入CNCF云原生全景图

摘要: 一群技术理想主义者,与太平洋另一边的技术高手们正面PK,在这场躲不开的战役中,一起认真一把。 破土而出的生命力,源自理想主义者心底对技术的信念。 云原生技术正席卷全球,云原生...

阿里云官方博客
29分钟前
3
0
修改this指向(bind、call 和 apply)

一、bind bind 的其中一个用法就是:绑定函数,使其无论怎么样调用都用相同的 this 示例: var obj = { getThis: function() { console.log(this); }};obj.getThis()...

文文1
今天
1
0
WSL安装JDK8

下载地址 JDK_URL https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html UNLIMITED_STRENGTH_URL https://www.oracle.com/technetwork/java/javase/down......

terwergreen
今天
4
0
sparkStreaming基本概念

概述 Spark Streaming 是 Spark Core API 的扩展, 它支持弹性的, 高吞吐的, 容错的实时数据流的处理. 数据可以通过多种数据源获取, 例如 Kafka, Flume, Kinesis 以及 TCP sockets, 也可以通过...

freeli
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部