《百面》-4.降维(PCA专场)-2

1.PCA最小平方误差理论

问题1:PCA求解的其实是最佳投影方向,既一条直线,这与数学中线性回归问题的目标不谋而合,能否从回归的角度定义PCA的目标并相应的求解问题呢?

答:我们还是从二维空间考虑,上一节求解得到一条直线使得样本点投影到该直线上方差最大,从求解直线的思路出发,很容易联想到线性回归,那么从线性回归出发,去定义PCA的目标,就是在高维空间中,找到一个d维的超平面,使得数据点到这个超平面的距离平方最小。

数据集中每个数据点到d维超平面D的距离为distance(x_{k},D)=|x_{k}-\bar{x_{k}}|^{2},其中\bar{x_{k}}表示x_{k}在超平面D上的投影向量,如果该超平面有d个标准正交基W={w1,w2,......wd}构成,所以\bar{x_{k}}=\sum_{i=1}^{d}(w_{i}^{T}x_{k})w_{i},

注释:

标准是指每个向量的长度为单位长 1 ,
正交是指每两个向量都垂直,
基是指一组向量,用它们可以表示空间中所有向量.
在 n 维空间中,标准正交基就是指这样 n 个向量:a1=(1,0,0,.,0),
a2=(0,1,0,0,.,0),a3=(0,0,1,0,.,0),.
an=(0,0,0,.,0,1) .
如果向量 p 可以表示成 p=x1*a1+x2*a2+.+xn*an ,
那么(x1,x2,x3,.,xn)就叫向量 p 在基{a1,a2,.,an}下的坐标.
坐标与线性运算的关系是:
1、和向量的坐标等于向量坐标的和;
2、差向量的坐标等于向量坐标的差;
3、数乘向量的坐标等于这个数乘以向量的坐标.

举个例子 w1={1,0,0,0}^T  x1的映射就是w^T*x1 那么为啥后面有多乘以个w,是为了把行向量变成列向量。(毛病)

所以\bar{x_{1}}=(x_{1},0.....0_{d})^{T}

那么PCA要优化的目标就变成了

\left\{\begin{matrix} arg min\sum_{k=1}^{n}|x_{k}-\bar{x_{k}}|^{2}\\s.t w_{i}^{T}w_{j}=\left\{\begin{matrix} 1,i=j\\0,i\neq j \end{matrix}\right. \end{matrix}\right.

这个条件就是说明是正交基。

由内积性质,x_{k}^{T}\bar{x}_{k}=\bar{x}_{k}^{T}x_{k}( 真的不记得这个公式了)

\tiny \bg_green |x_{k}-\bar{x}_{k}|^{2}=(x_{k}-\bar{x}_{k})^{T}(x_{k}-{\color{Red} }\bar{x}_{k})=x_{k}^{T}x_{k}-x_{k}^{T}\bar{x}_{k}-\bar{x}_{k}^{T}x_{k}+\bar{x}_{k}^{T}\bar{x}_{k} =x_{k}^{T}x_{k}-2x_{k}^{T}\bar{x}_{k}+\bar{x}_{k}^{T}\bar{x}_{k}其中第一项与w无关,是个常数。把x的映射的公式带入可得到第二项为

x_{k}^{T}\bar{x}_{k}=x_{k}^{T}\sum_{i=1}^{d}(w_{i}^{T}x_{k})w_{i}=\sum_{i=1}^{d}(w_{i}^{T}x_{k})w_{i}x_{k}^{T}=\sum_{i=1}^{d}w_{i}^{T}x_{k}x_{k}^{T}w_{i}

第三项

中间少了一步,就是当i不等于j的时候wi*wj=0    所以公式化简为i=j的时候,wi*wj=1 所以4.11 推到了4.12

我们发现原来4.12 就是矩阵W^{T}x_{k}x_{k}^{T}W的迹(对角线元素之和)

所以公式化简成arg min \sum_{k=1}^{n}|x_{k}-\bar{x}_{k}|=-\sum_{k=1}^{n}tr(W^{T}x_{k}x_{k}^{T}W)+C  c 就是第一项的常数项。那么求负数的最小值,就是求正数的最大值,所以

\left\{\begin{matrix} max tr(W^{T}XX^{T}W)\\s.t W^{T}W=1 \end{matrix}\right.

如果我们对W中d个基w1,w2.。。。wd一次求解。就变成了,比如当d=1时,

\left\{\begin{matrix} max(W^{T}XX^{T}W)\\s.t W^{T}W \end{matrix}\right. 

这就和我们使用最大方差求解最大方差法求解最佳投影方向一样了,是不是。都是用拉格朗日乘子,得到最大值就是协方差的特征向量,w就是对应的特征向量。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值