线性代数——PCA主成分分析计算步骤

本文介绍了PCA主成分分析的计算过程,包括数据预处理、协方差矩阵计算、特征值和特征向量求解,以及如何选择和应用特征向量进行数据转换。
摘要由CSDN通过智能技术生成

本文不会深究原理,如果有时间我会把原理补上,这篇文章主要是讲主成分分析的计算步骤。

在开始详细介绍PCA算法前,我们先来复习一下线性代数中几个重要的概念

线性代数概念复习

向量的内积

假设 a ⃗ = [ a 1 a 2 . . . a n ] \vec{a}=\begin{bmatrix} a_1 \\ a_2 \\ ...\\a_n \end{bmatrix} a =a1a2...an, b ⃗ = [ a 1 a 2 . . . a n ] \vec{b}=\begin{bmatrix} a_1 \\ a_2 \\ ...\\a_n \end{bmatrix} b =a1a2...an
那么
a ⃗ ⋅ b ⃗ = a 1 b 1 + a 2 b 2 + . . . + a n b n \vec{a}\cdot\vec{b}=a_1b_1+a_2b_2+...+a_nb_n a b =a1b1+a2b2+...+anbn
在这里插入图片描述
a ⃗ \vec{a} a 的模记为: ∣ a ⃗ ∣ = a ⃗ ⋅ a ⃗ |\vec{a}|=\sqrt{\vec{a}\cdot \vec{a}} a =a a
a ⃗ ⋅ b ⃗ = ∣ a ⃗ ∣ ∣ b ⃗ ∣ c o s θ \vec{a}\cdot\vec{b}=|\vec{a}||\vec{b}|cos\theta a b =a b cosθ
假设 b ⃗ \vec{b} b 的模为1,即单位向量,那么 a ⃗ ⋅ b ⃗ = ∣ a ⃗ ∣ c o s θ \vec{a}\cdot\vec{b}=|\vec{a}|cos\theta a b =a cosθ,实际上,内积就是 a ⃗ \vec{a} a b ⃗ \vec{b} b 方向上的投影的长度。

如果 a ⃗ ⋅ b ⃗ = 0 \vec{a}\cdot\vec{b}=0 a b =0,表示 a ⃗ \vec{a} a b ⃗ \vec{b} b 正交,也就是线性无关。

在线性代数中,基(也称为基底)是描述、刻画向量空间的基本工具。向量空间的基是它的一个特殊的子集,基的元素称为基向量。向量空间中任意一个元素,都可以唯一地表示成基向量的线性组合。如果基中元素个数有限,就称向量空间为有限维向量空间,将元素的个数称作向量空间的维数。

向量空间V的一组向量若满足
1)线性无关
2)V中任一向量可由此向量线性表出,则称该组向量V中的一个基(亦称基底)。
一个向量空间的基有很多,但每个基所含向量个数却是个定数。

例如

在这里插入图片描述
上图的一组基是 ( 1 , 0 ) (1, 0) (1,0) ( 0 , 1 ) (0, 1) (0,1),向量 a ⃗ = ( 3 , 2 ) = 3 ( 1 , 0 ) + 2 ( 0 , 1 ) \vec{a}=(3, 2) = 3(1, 0)+2(0, 1) a =(3,2)=3(1,0)+2(0,1)

假设又有一组新的基 ( 0.5 , 0.5 ) (0.5, 0.5) (0.5,0.5) ( − 0.5 , 0.5 ) (-0.5, 0.5) (0.5,0.5),那么原来的向量 a ⃗ \vec{a} a 应该怎么表示?
在这里插入图片描述
a ⃗ \vec{a} a 在新的基 ( 0.5 , 0.5 ) (0.5, 0.5) (0.5,0.5)上的投影为 ( 0.5 , 0.5 ) ⋅ ( 3 , 2 ) T = 2.5 (0.5, 0.5) \cdot (3, 2)^T=2.5 (0.5,0.5)(3,2)T=2.5,在 ( 0.5 , − 0.5 ) (0.5, -0.5) (0.5,0.5)上的投影为 ( − 0.5 , 0.5 ) ⋅ ( 3 , 2 ) T = − 0.5 (-0.5, 0.5) \cdot (3, 2)^T=-0.5 (0.5,0.5)(3,2)T=0.5,所以 a ⃗ \vec{a} a 在新的基上为 ( 2.5 , − 0.5 ) (2.5, -0.5) (2.5,0.5)
也可以用矩阵计算:
[ 0.5 0.5 − 0.5 0.5 ] [ 3 2 ] = [ 2.5 − 0.5 ] \begin{bmatrix} 0.5 & 0.5 \\ -0.5 & 0.5 \end{bmatrix}\begin{bmatrix} 3\\ 2 \end{bmatrix}=\begin{bmatrix} 2.5\\ -0.5 \end{bmatrix} [0.50.50.50.5][32]=[2.50.5]
假设 [ p 1 p 2 . . . p r ] \begin{bmatrix} p_1\\ p_2\\...\\p_r \end{bmatrix} p1p2...pr是n组新的基, [ a 1 a 2 . . . a m ] \begin{bmatrix} a_1& a_2&...&a_m \end{bmatrix} [a1a2...am]是m个样本,那么m个样本在n组基表达为:
[ p 1 p 2 . . . p r ] [ a 1 a 2 . . . a m ] = [ p 1 a 1 p 1 a 2 . . . p 1 a m p 2 a 1 p 2 a

  • 35
    点赞
  • 96
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
PCA主成分分析)是一种常用的降维技术,它通过将原始数据投影到新的特征空间来实现数据的降维和去除冗余信息。下面是PCA主成分分析法的步骤: 1. 数据标准化:首先,需要对原始数据进行标准化处理,确保数据的均值为0,方差为1。这一步骤可以保证不同尺度的数据能够被平等对待。 2. 计算协方差矩阵:接下来,需要计算数据的协方差矩阵。协方差矩阵反映了数据中不同特征之间的相关性。 3. 计算特征值和特征向量:通过对协方差矩阵进行特征值分解,可以得到该矩阵的特征值和特征向量。特征向量代表了数据在新特征空间中的方向,而特征值代表了数据在这些方向上的重要程度。 4. 选择主成分:根据特征值的大小,可以选择最重要的特征向量作为新的特征空间的基。通常情况下,选择特征值较大的前k个特征向量作为主成分。 5. 构建投影矩阵:将选定的k个特征向量按列组成投影矩阵,用这个矩阵将原始数据投影到新的k维特征空间中。 6. 数据转换:最后,利用构建的投影矩阵,对原始数据进行线性变换,即将原始数据映射到新的k维特征空间中。这样就实现了数据的降维和去除冗余信息。 通过以上步骤PCA主成分分析法可以帮助我们在保留数据主要特征的基础上,将高维的原始数据转化为低维的新特征空间,从而方便我们进行进一步的数据分析和处理。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值