文档章节

PCA降维推导

Pulsar-V
 Pulsar-V
发布于 2017/07/28 22:14
字数 875
阅读 47
收藏 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

粉丝 66
博文 155
码字总数 136578
作品 1
成都
架构师
私信 提问
加载中

评论(0)

机器学习——降维(主成分分析PCA、线性判别分析LDA、奇异值分解SVD、局部线性嵌入LLE)

###机器学习——降维(主成分分析PCA、线性判别分析LDA、奇异值分解SVD、局部线性嵌入LLE) 以下资料并非本人原创,因为觉得石头写的好,所以才转发备忘 (主成分分析(PCA)原理总结)[https...

osc_chydd7b8
2019/04/13
27
0
你还知道哪些降维方法? - 知乎

当然PCA是众所周知的降维方法,SVD也是一种,除此之外,还有如LDA、LLE以及LE。 (1) PCA PCA也就是主成份分析,Principal Component Analysis(PCA)是现如今最流行的无监督线性降维方法之一了...

机器学习面试题总结
2019/11/02
0
0
05-03 主成分分析(PCA)

[TOC]更新、更全的《机器学习》的更新网站,更有python、go、数据结构与算法、爬虫、人工智能教学等着你:<a target="_blank" href="https://www.cnblogs.com/nickchen121/p/11686958.html"......

osc_ibhs3ho3
2019/10/16
2
0
机器学习实战之主成分分析(PCA)

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

罗罗攀
2018/06/21
0
0
《百面机器学习》拾贝----第四章:降维

宇宙,是时间和空间的总和。时间是一维的,空间。。。maybe 9 or 10维? 降维,即用一个低维度的向量表示原始高维度的特征。常见的降维方法有主成分分析、线性判别分析、等距映射、局部线性嵌...

Ariel_一只猫的旅行
03/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

如何使用保存实例状态保存Android Activity状态? - How to save an Android Activity state using save instance state?

问题: I've been working on the Android SDK platform, and it is a little unclear how to save an application's state. 我一直在研究Android SDK平台,但还不清楚如何保存应用程序的状态......

技术盛宴
3分钟前
11
0
垃圾收集器

1.Parallel scavenge+old:年轻代采用复制算法,老年代采用标记-整理算法,是多线程的并行收集器。 它注重的是可控制的吞吐量,适合于后台运算而不需要与用户有太多的交互的时候。 吞吐量:是...

曦鱼violet
4分钟前
6
0
AppEmit是应用程序(尤其是浏览器)与本地程序间互相通信的易扩展的轻量级中间件

# 1 概述 AppEmit是应用程序(尤其是浏览器)与本地程序间互相通信的易扩展的轻量级中间件。主要采用了HTML5国际标准的Web Socket进行通话,默认为异步, JSON格式传递参数。主要实现功能: ...

PjVipPlayer
11分钟前
8
0
Liferay DXP报价

红翼网
14分钟前
17
0
软件测试人员如何提升自己?送给职场中迷茫的你【共勉】

很多人在进入软件测试行业几年之后,可能都会进入一个瓶颈期,不知道如何去提升自己,但自己能意识到这个问题就是好事。 我在前面的几年也曾遇到这个问题,走出舒适区确实很难,但如果可以走...

爱码小哥
45分钟前
23
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部