(八)从优化的角度解释PCA

作者: Pan_Ziheng | 来源:发表于2020-08-05 17:00 被阅读0次

Let A be a given n\times p matrix and \phi be \phi(\vec{v},\vec{z})=\frac{1}{2}tr((A-Z\cdot\ V^{T})(A-Z\cdot\ V^{T})^{T})=||A-Z\cdot\ V^{T}||^{2}_{F} where V\in R^{p\times q} satisfies V^{T}V=I_{q} and Z \in R^{n\times q};The Minimum of \phi is obtained when V is an p \times q matrix of orthogonal eigenvalues associated to the q largest eigenvalues of A^{T}A and Z=AV.

 我们试图从优化的角度切入PCA:
 优化问题有3要素:
   1.目标函数:\phi
   2.决策变量:V,Z;
   3.约束条件:V^{T}V=I_{q};
opt. min\space tr((A-Z\cdot V^{T})(A-Z\cdot V^{T})^{T}) \\s.t.\space \space \space \space V^{T}V=I_{q};
 这就涉及一些问题,我们的目的是什么,这点很明显可以从目标函数中看出。先看个特殊情况,如果Z已知,我们将Z投影到正交向量构成的空间中,我们的目的是让数据矩阵A与正交变换后的Z对齐。
细致看下这个特殊情况:
tr((A-Z\cdot V^{T})(A-Z\cdot V^{T})^{T})\\ =tr(A^{T}A)+tr(Z\cdot V^{T}\cdot (Z\cdot V^{T})^{T})-2\cdot tr(AZV^{T})\\ =tr(A^{T}A)+tr(Z\cdot V^{T}\cdot V \cdot Z^{T} )-2\cdot tr(AZV^{T})\\ =tr(A^{T}A)+tr(Z\cdot Z^{T} )-2\cdot tr(AVZ^{T})
 因为在上述结果的最后,前两项是已知常数;所以我们实际上是要最大化tr(AVZ^{T})=tr(Z^{T}AV) 我们可以对Z^{T}A做奇异值分解。即:
Z^{T}A=Q\Lambda R^{T}
 令R^{T}VQ=B;R,V,Q都是正交矩阵,所以B也是正交矩阵。所以:
tr(AZ^{T}V)=tr(Q\Lambda R^{T}V)=tr(\Lambda R^{T}VQ)=tr(\Lambda B)=\sum_{i=1}^{n}B_{ii}\lambda{i}\leq \sum_{i=1}^{n}\lambda_{i}
 最后一个不等式成立的原因是B是个正交矩阵,因为所有正交矩阵都是经过单位化的,所以对角线元素都小于1。等号成立的条件是B是单位矩阵且p=q。即:
V=RQ^{T}时,我们的目标函数最小,相当于Z转一个角度能与原来矩阵对齐。而旋转变换的正交矩阵取决于Z^{T}A奇异值分解出的两个正交的特征向量矩阵。
这说明我们只要知道了降维后的Z,那么我们总能找到一个变换V,使得Z在变换后尽可能的还原A的信息。
 那么问题来了,Z就是我们所要求的东西,我们不可能提前知道,那么我们怎么求满足条件,且尽可能还原A的信息的ZV呢?现在我们得直面这个优化问题了。
 我们可以靠拉格朗日乘子法将原来的有约束的优化问题转为无约束的优化问题,最后求导后找出满足条件的其中一组解就可以了。
所以
Min\space L=\frac{1}{2}tr((A-Z\cdot\ V^{T})(A-Z\cdot\ V^{T})^{T})-\frac{1}{2}tr(C(V^{T}V-I_{q}))
对各个决策变量求导:
dL_{Z}=\frac{1}{2}tr(-(dZ)\cdot\ V^{T}(A-Z\cdot\ V^{T})^{T}-(A-Z\cdot\ V^{T})((dZ)\cdot\ V^{T})^{T})\\=-tr((A-Z\cdot\ V^{T})VdZ^{T}) \\\frac{dL}{dZ}=(A-Z\cdot\ V^{T})V=AV-Z\cdot\ V^{T}V------(1)\\ dL_{V}=-\frac{1}{2}tr(ZdV^{T}(A-ZV^{T})^{T}+(A-ZV^{T})dV\cdot Z^{T})-tr(C(dV^{T})V+CV^{T}(dV))\\ =-tr((VZ^{T}Z-A^{T}Z-VC)dV^{T})\\ \frac{dL}{dV}=VZ^{T}Z-A^{T}Z-VC------(2)\\ \frac{dL}{dC}=V^{T}V-I_{q}------(3)
 令(1),(2),(3)导数等于0:
\frac{dL}{dZ}=(A-Z\cdot\ V^{T})V=AV-Z\cdot\ V^{T}V=0\\ \frac{dL}{dV}=VZ^{T}Z-A^{T}Z-VC=0\\ \frac{dL}{dC}=V^{T}V-I_{q}=0\\ 所以有:\\ Z=AV\\ C=0\\
然而我们的目的是找出其中一个解就行,也就是找到其中一个V,所以我们将Z=AV;C=0带入(2)中:
VV^{T}A^{T}AV=A^{T}AV
V^{T}A^{T}AV=\Lambda;\Lambda是特征值对角矩阵,那么:A^{T}A=V^{T}\Lambda VV可以通过对A^{T}A特征分解后取前q个最大的特征值得到。这是其中一个解,也是我们想要的结果,即直接可以通过数据矩阵A的信息得出我们的正交变换V;使得数据在保证信息尽可能完整的情况下降维。
(矩阵求导方面可以参考这里)

相关文章

  • (八)从优化的角度解释PCA

    Let A be a given matrix and be where satisfies and ...

  • numpy实现鸢尾花数据集PCA降维

    PCA降维过程 在前面的一篇博客中我已经从数学角度解释了PCA降维的原理,我们从中也可以得到PCA降维的过程1)将...

  • PCA原理及实现-R

    PCA分析与解释 PCA是一种无参数的数据降维方法,常用的机器学习算法一种,这篇文章主要从PCA应用于解释两个方面...

  • 直观解释PCA

    是干什么的? 首先有一组数据蓝色点,PCA所谓的降维操作就是找到一个新的坐标系(旋转的两条直线式垂直的,我们可以用...

  • 由PCA的角度解释特征向量的权重

    PCA的数学推导 以测量植物株高为例,X矩阵为不同的sample对应两个生物学重复的株高数据: 如果以rep_1和...

  • 过来人老说“我这是为你好!”到底是真的么?

    这个问题既可以从有些人的角度来来解释,也可以从过来人的角度来解释。 如果从有些人的角度来解释,就是“你又不是我”。...

  • PCA 和火山图

    1.PCA 加载R包 计算PCA ggplot2绘图 整理数据 1.去掉行名 解释度 比如PC1解释度为8.224...

  • 从科学的角度解释佛法

    《洞见》——从科学到哲学,打开人类的认知真相。这本书的英文名直译《为什么佛学是真的》,作者罗伯特·赖特(Rober...

  • 简明PCA 的图解释

    一般来说,PCA分析2个图够了,以iris数据为例,在经过PCA分析后,我们可以得到第一章碎石图,表示PC1,2,...

  • 移动端SDK的优化之路2

    极限优化 所谓极限优化,是指从多个角度、维度对sdk进行优化,重点是考虑网络优化以及电量消耗优化。能够做到代码精简...

网友评论

    本文标题:(八)从优化的角度解释PCA

    本文链接:https://www.haomeiwen.com/subject/vhydrktx.html