[机器学习]降维之主成分分析

问题引入

在高维情形下常出现样本稀疏、距离计算困难等问题,这是所有机器学习方法共同面临的问题,称为维数灾难

为了缓解维数灾难一个重要途径就是“降维”。通过某种数学变换将原始高维属性空间转变为一个低维子空间,在该子空间中样本密度大幅提高,距离计算也变得更加容易。

主成分分析

主成分分析(Principal Component Analysis)PCA是最常用的一种降维方法。若存在一个超平面能够对所有样本进行恰当表达,它应该满足这样的性质:

  • 最近重构性:样本点到该超平面的距离足够近
  • 最大可分性:样本点在该超平面的投影尽可能能分开

1.最近重构性

假定数据样本进行了中心化,即 ∑ i x i = 0 \sum_{i}x_i=0 ixi=0,投影变换后得到的新坐标系为 { w 1 , w 2 , ⋯   , w d } \left \{ w_1,w_2,\cdots,w_d \right \} {w1,w2,,wd} w i w_i wi为标准正交基向量。

若丢弃新坐标系中的部分坐标,即将维度降低到 d ′ < d d' <d d<d,则样本点 x i x_i xi在低维坐标系中的投影是 z i = ( z i 1 ; z i 2 ; ⋯   ; z i d ′ ) z_i=(z_{i1};z_{i2};\cdots;z_{id'}) zi=(zi1;zi2;;zid) z i j = w j T x i z_{ij}=w_j^Tx_i zij=wjTxi x i x_i xi在低维坐标系下第 j j j维的坐标。若基于 z i z_i zi重构 x i x_i xi,则 x i ^ = ∑ j = 1 d ′ z i j w j \hat{x_i}=\sum_{j=1}^{d'}z_{ij}w_j xi^=j=1dzijwj

于是原样本点 x i x_i xi与基于投影重构的样本点 x i ^ \hat{x_i} xi^之间的距离为:
∑ i = 1 m ∥ ∑ j = 1 d ′ z i j w j − x i ∥ 2 2 = ∑ i = 1 m z i T z i − 2 ∑ i = 1 m x i T W T x i + c o n s t ∝ − t r ( W T ( ∑ i = 1 m x i x i T ) W ) \begin{array}{c} \sum_{i=1}^{m}\left \| \sum_{j=1}^{d'}z_{ij}w_{j}-x_i\right \|^2_2=\sum_{i=1}^{m}z_i^Tz_i -2\sum_{i=1}^{m}x_i^TW^Tx_i+const \\ \\ \propto -tr(W^T(\sum_{i=1}^{m}x_ix_i^T )W) \\ \end{array} i=1mj=1dzijwjxi22=i=1mziTzi2i=1mxiTWTxi+consttr(WT(i=1mxixiT)W)

根据最近重构性,上式应该被最小化,则:
m i n W − t r ( W T X X T W ) s . t . W T W = I \begin{array}{l} {min}_W\quad -tr(W^TXX^TW) \\ s.t.\quad W^TW=I \end{array} minWtr(WTXXTW)s.t.WTW=I

2.最大可分性

样本点 x i x_i xi在新空间的超平面上投影为 W T x i W^Tx_i WTxi,若所有样本点投影尽可能分开,应使投影后样本点的方差最大化。

投影后样本点方差为 ∑ i W T x i x i T W \sum_{i}W^Tx_ix_i^TW iWTxixiTW,则优化目标为:
m a x W t r ( W T X X T W ) s . t . W T W = I \begin{array}{l} {max}_W\quad tr(W^TXX^TW) \\ s.t.\quad W^TW=I \end{array} maxWtr(WTXXTW)s.t.WTW=I

求解

两种方法优化目标等价。

对它们使用拉格朗日乘子法得:
X X T W = λ W XX^TW=\lambda W XXTW=λW
故只需对协方差矩阵 X X T XX^T XXT特征值分解,将求得的特征值排序,取前 d ′ d' d个特征值对应的特征向量构成 W = ( w 1 , w 2 , ⋯   , w d ′ ) W=(w_1,w_2,\cdots,w_{d'}) W=(w1,w2,,wd),这就是主成分分析的解。

小结

PCA仅需保留 W W W与样本的均值向量即可通过向量减法和矩阵-向量乘法将新样本投影到低维空间中。

降维导致对应最小的 d − d ′ d-d' dd个特征值的特征向量被舍弃了,而舍弃这部分信息往往很有必要:

  • 一方面,舍弃这部分信息使样本采样密度增大,这正式降维的重要动机;
  • 另一方面,当数据收到噪声影响时,最小的特征值所对应的特征向量往往与噪声有关,将其社区能达到去噪效果。

核主成分分析

线性降维方法假设从高维空间到低维空间的函数映射是线性的,可现实常需要非线性映射才能找到合适的低维嵌入。

非线性降维的常用方法是基于核技巧对线性降维方法“核化”,核主成分分析(KPCA)便是一种。

z i z_i zi为样本点 x i x_i xi在高维特征空间中的像,我们把高维特征空间的数据投影到 W W W确定的超平面上,即PCA求解: ( ∑ i = 1 m z i z i T ) W = λ W (\sum_{i=1}^{m}z_iz_i^T)W=\lambda W (i=1mziziT)W=λW
W = 1 λ ( ∑ i = 1 m z i z i T ) W = ∑ i = 1 m z i z i T W λ = ∑ i = 1 m z i α i W=\frac{1}{\lambda}(\sum_{i=1}^{m}z_iz_i^T)W=\sum_{i=1}^{m}z_i\frac{z_i^TW}{\lambda}=\sum_{i=1}^{m}z_i\alpha_i W=λ1(i=1mziziT)W=i=1mziλziTW=i=1mziαi
其中 α i = 1 λ z i T W \alpha_i=\frac{1}{\lambda}z_i^TW αi=λ1ziTW

既然是非线性降维,我们可假定 z i = ϕ ( x i ) z_i=\phi (x_i) zi=ϕ(xi),当 ϕ \phi ϕ可以显示的表达出来时,通过它将样本映射到高维特征空间,再在特征空间实施PCA即可。
( ∑ i = 1 m ϕ ( x i ) ϕ ( x i T ) ) W = λ W W = ∑ i = 1 m ϕ ( x i ) α i \begin{array}{c} (\sum_{i=1}^{m}\phi(x_i)\phi(x_i^T))W=\lambda W \\ \\ W=\sum_{i=1}^{m}\phi(x_i)\alpha_i \end{array} (i=1mϕ(xi)ϕ(xiT))W=λWW=i=1mϕ(xi)αi

但一般情况下我们并不知道 ϕ \phi ϕ具体形式,于是引入核函数 k ( x i , x j ) = ϕ ( x i ) ϕ ( x i T ) k(x_i,x_j)=\phi(x_i)\phi(x_i^T) k(xi,xj)=ϕ(xi)ϕ(xiT),于是有:
K A = λ A KA=\lambda A KA=λA
它仍是一个特征值分解问题,取 K K K最大的 d ′ d' d个特征值对应的特征向量即可。

对新样本 x x x,它投影后的第 j j j维坐标为
z j = w j T ϕ ( x ) = ∑ i = 1 m α i j ϕ ( x i ) T ϕ ( x ) = ∑ i = 1 m α i j k ( x i , x ) z_j=w_j^T\phi (x)=\sum_{i=1}^{m}\alpha_i^j\phi(x_i)^T\phi(x)=\sum_{i=1}^{m}\alpha_i^jk(x_i,x) zj=wjTϕ(x)=i=1mαijϕ(xi)Tϕ(x)=i=1mαijk(xi,x)
显然KPCA需对所有样本求和,因此计算成本较大。

Reference

《机器学习》周志华

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值