机器学习面试必知:最大方差理论和最小平方误差理论下的PCA(主成分分析)的公式推导

最大方差理论

PCA(主成分分析),旨在找到数据中的主成分,并利用这些主成分表征原始数据从而达到降维的目的。在信号处理领域,我们认为信号具有较大方差,而噪声具有较小方差。因此我们不难引出PCA的目标即最大化投影方差,也就是让数据在主轴上投影的方差最大(在我们假设中方差最大的有用信号最大化减少了噪声的影响)。

对于给定的一组数据点 { v 1 , . . . , v n } \left\{v_{1},...,v_{n} \right\} ,均为列向量。中心化后可以这样表示 { x 1 , . . . , x n } = { v 1 μ , . . . , v n μ } \left\{x_{1},...,x_{n} \right\}=\left\{v_{1}-\mu,...,v_{n}-\mu \right\} ,其中 μ = 1 n i = 1 n v i \mu=\frac{1}{n}\sum_{i=1}^{n}v_{i} 接下来我要找个一个投影的方向 ω \omega 使得 { x 1 , . . . , x n } \left\{x_{1},...,x_{n} \right\} ω \omega (单位方向向量)上的投影方差最大。向量 x i x_{i} ω \omega 上的投影坐标可以表示为 ( x i , ω ) = x i T ω (x_{i},\omega)=x_{i}^{T}\omega ,所以投影之后的方差可以表示为 D ( x ) = 1 n i = 1 n ( x i T ω ) 2 = 1 n i = 1 n ( x i T ω ) T ( x i T ω ) = 1 n i = 1 n ω T x i x i T ω = ω T ( 1 n i = 1 n x i x i T ) ω 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^{T}x_{i}x_{i}^{T}\omega=\omega^{T}(\frac{1}{n}\sum_{i=1}^{n}x_{i}x_{i}^{T})\omega
1 n i = 1 n x i x i T \frac{1}{n}\sum_{i=1}^{n}x_{i}x_{i}^{T} 是样本的协方差矩阵,记做 Σ \Sigma ,由于 ω \omega 是单位方向向量,所以 ω T ω = 1 \omega^{T}\omega=1 ,因此我们可以表示成一个最大化问题 m a x { ω T Σ ω } max\left\{ \omega^{T} \Sigma \omega \right\} s . t . ω T ω = 1 s.t.\quad \omega^{T}\omega=1 用拉格朗日乘式可以得到 Σ ω = λ ω \Sigma\omega=\lambda\omega ,代入 D ( x ) D(x) 得到 D ( x ) = ω T Σ ω = λ ω T ω = λ D(x)=\omega^{T}\Sigma\omega=\lambda\omega^{T}\omega=\lambda ,所以投影后的方差就是协方差矩阵的特征值。最大方差即为协方差矩阵最大的特征值,最佳投影方向就是最大特征值所对应的特征向量。我们将特征值从大到小排列,取特征值前 d d 大对应的特征向量 ω 1 , . . . , ω d \omega_{1},...,\omega_{d} ,通过以下映射的方式将n维样本映射到d维 x i = [ ω 1 T x i . . . ω d T x i ] {x_{i}}'=\begin{bmatrix} \omega_{1}^{T}x_{i}\\ . \\ .\\ . \\ \omega_{d}^{T}x_{i} \end{bmatrix}

最小平方误差理论

如果是二维空间中的样本点,那么我们就是求解出一条直线使得样本投影到该直线上的方差最大。从回归的角度来看其实就是求解出一个线性函数来拟合样本点集合。在高维空间中,我们需要找到一个d维超平面,使得数据点到这个超平面的距离平方和最小。我们假设该超平面由d个标准正交基 W = { w 1 , . . . , w d } W=\left\{ w_{1},...,w_{d}\right\} ,那么数据点 x k x_{k} 投影到该超平面可以表示成 x k ~ = i = 1 d ( w i T x k ) w i \tilde{x_{k}}=\sum_{i=1}^{d}(w_{i}^{T}x_{k})w_{i} 。所以我们可以写出PCA优化的目标 a r g   m i n w 1 , . . . , w d k = 1 n x k x k ~ 2 2 \underset{ w_{1},...,w_{d}}{arg\ min}\sum_{k=1}^{n}||x_{k}-\tilde{x_{k}}||_{2}^{2} s . t . w i T w j = δ i j s.t.\quad w_{i}^{T}w_{j}=\delta_{ij}
我们将平方项展开 x k x k ~ 2 2 = ( x k x k ~ ) T ( x k x k ~ ) = x k T x k 2 x k T x k ~ + x k ~ T x k ~ ||x_{k}-\tilde{x_{k}}||_{2}^{2}=(x_{k}-\tilde{x_{k}})^{T}(x_{k}-\tilde{x_{k}})=x_{k}^{T}x_{k}-2x_{k}^{T}\tilde{x_{k}}+\tilde{x_{k}}^{T}\tilde{x_{k}} x k T x k ~ = x k T i = 1 d ( w i T x k ) w i = i = 1 d w i T x k x k T w i x_{k}^{T}\tilde{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}x_{k}^{T}w_{i} x k ~ T x k ~ = i = 1 d j = 1 d ( ( w i T x k ) w i ) T ( w j T x k ) w j = i = 1 d w i T x k x k T w i \tilde{x_{k}}^{T}\tilde{x_{k}}=\sum_{i=1}^{d}\sum_{j=1}^{d}((w_{i}^{T}x_{k})w_{i})^{T}(w_{j}^{T}x_{k})w_{j}=\sum_{i=1}^{d}w_{i}^{T}x_{k}x_{k}^{T}w_{i} 所以 x k x k ~ 2 2 = i = 1 d w i T x k x k T w i + x k T x k = t r ( W T x k x k T W ) + x k T x k ||x_{k}-\tilde{x_{k}}||_{2}^{2}=-\sum_{i=1}^{d}w_{i}^{T}x_{k}x_{k}^{T}w_{i}+x_{k}^{T}x_{k}=-tr(W^{T}x_{k}x_{k}^{T}W)+x_{k}^{T}x_{k} 带入到优化目标中 a r g   m a x W k = 1 n t r ( W T x k x k T W ) = a r g   m a x W t r ( W T X X T W ) arg\ \underset{W}{max}\sum_{k=1}^{n}tr(W^{T}x_{k}x_{k}^{T}W)=arg\ \underset{W}{max}tr(W^{T}XX^{T}W) s . t . W T W = I s.t.\quad W^{T}W=I 当d=1时, a r g   m a x w w T X X T w arg\ \underset{w}{max}w^{T}XX^{T}w s . t . w T w = 1 s.t.\quad w^{T}w=1

猜你喜欢

转载自blog.csdn.net/Neekity/article/details/87918977