机器学习之主成分分析(PCA)

本文详细介绍了主成分分析(PCA)的理论基础、降维目的、PCA的思想、算法实现过程,并通过最大方差理论推导PCA。PCA是一种常见的降维方法,用于高维数据可视化和减少冗余特征,同时提供了一个Python实现示例。
摘要由CSDN通过智能技术生成
降维的目的
  1. 进行数据降维处理,我们可以容易地实现高维数据可视化——将其降为三维甚至二维。
  2. 由于可能存在许多冗余特征量,所以需要减少特征量的数量。(比如同时有英寸和米的数据,这样的数据是线性相关的,可以去掉其中之一)
  3. 机器学习算法的复杂度和数据的维数有着密切关系,甚至与维数呈指数级关联。因此我们必须对数据进行降维。
降维的方法

在机器学习领域,我们对原始数据进行特征提取,有时会得到比较高维的特征向量。在这些向量所处的高维空间中,包含很多的冗余和噪声。我们希望通过降维的方式来寻找数据内部的特性,从而提高特征的表达能力,降低训练复杂度。
主要有三种方法:1)主成分分析(PCA);2)因子分析(FA);3)独立成分分析(ICA)。其中 PCA是一种具有严格数学基础并且已被广泛采用的降维方法。它属于一种线性、无监督、全局的降维方法。

PCA的理论基础和思想
  1. PCA理论中,主要是用到线性代数中的特征值和特征向量。(详情可参考本博主的特征值和特征向量的几何意义的博文
  2. PCA的目标是降低每一个特征量到投影直线的距离,也就是降低投影误差。
  3. PCA深入浅出的基本思想讲解还可参考吴恩达老师的《机器学习课程》
  4. 用到的统计中的概念:均值、方差和协方差矩阵

给定一个含有m个样本的集合:X={X1,…,Xm}
均值:
在这里插入图片描述
方差:
在这里插入图片描述
均值描述的是样本集合的平均值,方差描述的是样本集合中各个点到均值的距离的平均,也就是数据的离散程度。

如果数据的维数比较多的话,我们想知道某两个特征之间是否有关系,比如说统计学生的成绩,数学成绩和物理成绩

之间是否有关系,如果有是正相关呢还是负相关,协方差就是用来描述两个随机变量X,Y之间关系的统计量,协方差

定义如下:
在这里插入图片描述

协方差的结果为正的话,表明二者之间是正相关,为负的话表明二者之间是负相关。这里的X,Y两个一维的随机变量,

如果随机变量的个数很多呢,这时候就引入了协方差矩阵的概念:对于一个n维的数据,分别计算每两个维度之间的协方差,就构成了一个协方差矩阵:
在这里插入图片描述
可见这是一个对称矩阵,对角线上的是方差。如果数据是三维的,则协方差矩阵如下:
在这里插入图片描述

PCA算法实现过程推导
  • 给定一个训练集 x 1 x^{1} x1 x 2 x^{2} x2,…, x m x^{m} xm。其中m表示样本数量, x i x^{i} xi是表示i样本的n维特征向量(为列向量)
    x ( i ) = ( x 1 ( i ) x 2 ( i ) . . . x n ( i ) ) x^{(i)}=\begin{pmatrix} x^{(i)}_{1} \\x^{(i)}_{2}\\.\\.\\.\\x^{(i)}_{n} \end{pmatrix} x(i)=x1(i)x2(i)...xn(i)

  • 对数据进行预处理(特征缩放,均值为零)
    μ j = 1 m ∑ i = 1 m x j ( i ) μ_{j}=\frac{1}{m}\sum_{i=1}^{m}x^{(i)}_{j} μj=m1i=1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值