葫芦书笔记----降维

降维

降维可以提升特征表达能力,降低训练复杂度。

PCA最大方差理论

如何定义主成分?从这种定义出发,如何设计目标函数使得降维达到提取主成分的目的?针对这个目标函数,如何对PCA问题进行求解?

速记:通过低维向量表达原始数据,那么低维向量所包含的信息就是主成分。PCA的目标是最大化投影方差。

详细:对于给定的一组数据点{v1,v2,...,vn}\{v_1,v_2,...,v_n\}{v1,v2,...,vn},其中所有向量均为列向量,中心化后的表示为{x1,x2,...,xn}={v1−μ,v2−μ−μ,...,vn−μ}\{x_1,x_2,...,x_n\}=\{v_1-\mu,v_2-\mu-\mu,...,v_n-\mu\}{x1,x2,...,xn}={v1μ,v2μμ,...,vnμ},其中μ=1n∑i=1nvi\mu=\frac{1}{n}\sum_{i=1}^nv_iμ=n1i=1nvi。我们知道,向量内积在几何上表示为第一个向量投影到第二个向量上的长度,因此向量xix_ixiω\omegaω(单位方向向量)上的投影坐标可以表示为(xi,ω)=xiTω(x_i,\omega)=x_i^T\omega(xi,ω)=xiTω。所以目标是找到一个投影方向ω\omegaω,使得x1,x2,...,xnx_1,x_2,...,x_nx1,x2,...,xnω\omegaω上的投影方差尽可能大。易知,投影之后均值为0(因为μ‘=1n∑i=1nxiTω=(1n∑i=1nxiT)ω=0\mu^`=\frac{1}{n}\sum_{i=1}^nx_i^T\omega=(\frac{1}{n}\sum_{i=1}^nx_i^T)\omega=0μ=n1i=1nxiTω=(n1i=1nxiT)ω=0,这也是进行中心化的意义),因此投影后的方差可以表示为
D(x)=1n∑i=1n(xiTω)2=1n∑i=1n(xiTω)T(xiTω)=1n∑i=1nωTxixiTω=ωT(1n∑i=1nxixiT)ω D(x)=\frac{1}{n}\sum_{i=1}^n(x_i^T\omega)^2 =\frac{1}{n}\sum_{i=1}^n(x_i^T\omega)^T(x_i^T\omega) =\frac{1}{n}\sum_{i=1}^n\omega^Tx_ix_i^T\omega =\omega^T(\frac{1}{n}\sum_{i=1}^nx_ix_i^T)\omega D(x)=n1i=1n(xiTω)2=n1i=1n(xiTω)T(xiTω)=n1i=1nωTxixiTω=ωT(n1i=1nxixiT)ω
仔细一看,ωT(1n∑i=1nxixiT)ω\omega^T(\frac{1}{n}\sum_{i=1}^nx_ix_i^T)\omegaωT(n1i=1nxixiT)ω其实就是样本协方差矩阵,将其写为∑\sum。另外由于ω\omegaω是单位方向向量,即有ωTω=1\omega^T\omega=1ωTω=1。因此要求解一个最大化问题,可表示为
{max{ωT∑ω}s.t.ωTω=1 \begin{cases} max\{\omega^T\sum\omega\}\\ s.t. \omega^T\omega=1 \end{cases} {max{ωTω}s.t.ωTω=1
引入拉格朗日乘子,并对ω\omegaω求导令其为0,便可以推出∑ω=λω\sum\omega=\lambda\omegaω=λω,此时
D(x)=ωT∑ω=λωTω=λ D(x)=\omega^T\sum\omega=\lambda\omega^T\omega=\lambda D(x)=ωTω=λωTω=λ
xxx投影后的方差就是协方差矩阵的特征值。我们要找的最大方差也就是协方差矩阵最大的特征值,最佳投影方向就是最大特征所对应的特征向量。次佳投影方向位于最佳投影方向的正交空间中,是第二大特征值对于的特征向量,以此类推。至此,得到以下PCA的求解方法。

(1)对样本数据进行中心化处理。

(2)求样本协方差矩阵

(3)对协方差矩阵进行特征值分解,将特征值从大到小排列。

(4)取特征值前d大对应的特征向量ω1,ω2,...,ωd\omega_1,\omega_2,...,\omega_dω1,ω2,...,ωd,通过以下映射将n维样本映射到d维。
xi‘=[ω1Txiω2Txi⋮ωdTxi] x_i^`=\begin{bmatrix} \omega_1^Tx_i \\ \omega_2^Tx_i \\ \vdots \\ \omega_d^Tx_i \end{bmatrix} xi=ω1Txiω2TxiωdTxi
新的xi‘x_i^`xi的第d维就是xix_ixi在第d个主成分ωd\omega_dωd方向上的投影。

PCA最小平方误差理论

看书

线性判别分析

LDA,是一种有监督学习算法,经常被用来对数据进行降维。在PCA中,算法没有考虑数据的标签,只是把原数据映射到一些方差比较大的方向上而已。所以,使用有时使用PCA算法进行降维后再进行分类的效果会非常差。

对于具有类别标签的数据,应当如何设计目标函数舍得降维的过程中不损失类别信息?在这种目标下,应当如何进行求解?

速记:找到一个投影方向,舍得投影后样本尽可能按照原始类别分开。

详细:中心思想:最大化类间距离和最小化类内距离。具体看书。LDA由于模型 简单,表达能力有一定局限性,可以通过引入核函数扩展LDA方法以处理分布较为复杂的数据。

PCA与LDA

LDA和PCA作为经典的降维算法,如何从应用的角度分析其原理的异同?从数学推导的角度,两种降维算法在目标函数上有何区别与联系?

速记:对无监督的任务使用PCA,有监督则用LDA。二者求解方法相似,但原理不同,PCA选择的是投影后数据方差最大的方向。LDA选择的是投影后类内方差小,类间方差大的方向。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值