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

最大方差理论

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

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

最小平方误差理论

如果是二维空间中的样本点,那么我们就是求解出一条直线使得样本投影到该直线上的方差最大。从回归的角度来看其实就是求解出一个线性函数来拟合样本点集合。在高维空间中,我们需要找到一个d维超平面,使得数据点到这个超平面的距离平方和最小。我们假设该超平面由d个标准正交基 W = { w 1 , . . . , w d } W=\left\{ w_{1},...,w_{d}\right\} W={w1,...,wd},那么数据点 x k x_{k} xk投影到该超平面可以表示成 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} xk~=i=1d(wiTxk)wi。所以我们可以写出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} w1,...,wdarg mink=1nxkxk~22 s . t . w i T w j = δ i j s.t.\quad w_{i}^{T}w_{j}=\delta_{ij} s.t.wiTwj=δ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}} xkxk~22=(xkxk~)T(xkxk~)=xkTxk2xkTxk~+xk~Txk~ 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} xkTxk~=xkTi=1d(wiTxk)wi=i=1dwiTxkxkTwi 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} xk~Txk~=i=1dj=1d((wiTxk)wi)T(wjTxk)wj=i=1dwiTxkxkTwi所以 ∣ ∣ 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} xkxk~22=i=1dwiTxkxkTwi+xkTxk=tr(WTxkxkTW)+xkTxk带入到优化目标中 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) arg Wmaxk=1ntr(WTxkxkTW)=arg Wmaxtr(WTXXTW) s . t . W T W = I s.t.\quad W^{T}W=I s.t.WTW=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 arg wmaxwTXXTw s . t . w T w = 1 s.t.\quad w^{T}w=1 s.t.wTw=1

你可能感兴趣的:(面试,统计学习,机器学习,降维)