PCA 分解的基本推导和计算方法

PCA是数据降维的一种方法,其目标是找到数据分布方差最大的方向,并将数据向该方向投影并保持投影后恢复数据的残差最小。即找到e和a,使得x的估计值x‘=m+e*a与x残差最小。注意,这里e为一个方向向量(非矩阵),且限定e的模为1(否则a和e不唯一)。

PCA的推导,通过最优化x-x’的均方误差最小,得到a=T(e)*(x-m)。

进一步,将均方误差表示为e的表达式,并在e的模为1的约束下相对e最优化均方误差。

可以推导得到e的最优解需要满足S*e=lamabda*e,从而e转为为求矩阵的特征值和特征向量问题。而S阵为x的散度矩阵,存在S=X*X‘,X为输入特征减去均值向量组成的矩阵。

由于X存在奇异值分解,即X=U*D*T(V),则S=U*D*D*T(U)。

对于特征值和特征向量,存在S=E*D2*T(E),从而可知,存在E=U,D2=D*D。

需要注意,是对X做奇异值分解,而不是对S做。

当然,也可以通过对S求解特征值和特征向量得到投影矩阵。


参考自Duda的模式识别。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PCA和ICA是常用的降维方法,它们可以从原始数据中提取出最重要的特征。下面简要介绍一下它们的推导过程。 PCA(Principal Component Analysis)是一种线性降维方法,其主要思想是将原始数据映射到一个新的低维空间中,使得映射后的数据方差最大。假设我们有一个数据集 $X$,其中每一行代表一个样本,每一列代表一个特征。我们需要找到一个正交基 $W$,将数据 $X$ 映射到一个新的低维空间 $Y$ 中,满足方差最大的条件。PCA推导过程可以分为以下几步: 1. 将数据 $X$ 中心化,即每个特征减去该特征的均值,得到 $X_c$。 2. 计算协方差矩阵 $C=\frac{1}{n-1}X_c^TX_c$。 3. 对协方差矩阵 $C$ 进行特征值分解,得到特征值和特征向量。 4. 选择前 $k$ 个最大特征值对应的特征向量组成正交基 $W$。 5. 将数据 $X$ 映射到低维空间 $Y=X_cW$ 中。 ICA(Independent Component Analysis)是一种非线性降维方法,其主要思想是将原始数据分解成独立的非高斯分布的信号源。假设我们有一个数据集 $X$,其中每一行代表一个样本,每一列代表一个特征。我们需要找到一个变换矩阵 $A$,将数据 $X$ 映射到一个新的空间 $Y=AX$ 中,并且假设映射后的数据源是独立的。ICA 的推导过程可以分为以下几步: 1. 对数据进行中心化处理,即每个特征减去该特征的均值,得到 $X_c$。 2. 随机初始化变换矩阵 $A$。 3. 对变换矩阵 $A$ 进行迭代更新,直到满足收敛条件: - 计算变换后的数据 $Y=AX_c$。 - 计算数据源的估计值 $S=WY$,其中 $W=A^{-1}$。 - 计算估计值 $S$ 的梯度并更新变换矩阵 $A$。 4. 将数据 $X$ 映射到低维空间 $Y=AX$ 中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值