机器学习笔记——14 矩阵谱分解与奇异值分解及其背后的线性算子理论 (实战项目:利用SVD进行图像压缩)
本篇文章介绍矩阵的谱分解与奇异值分解 (Singular Values Decomposition,SVD),为了对其有一个更为本质性地认识,本文从线性算子的理论讲起,我们介绍算子的实谱定理和奇异值分解定理,然后在此基础上,借用线性算子的理论对矩阵的两个分解进行解释。
对矩阵分解的理论进行讨论后,我们将着眼于具体的操作,对于一个矩阵,如何找到其分解形式。最后我们利用讨论完的结果,利用SVD实现对一幅图像的压缩,实际上图像可以视为一个矩阵,因此可以通过找到该矩阵的分解形式,保留主要成分实现压缩。
线性算子理论与对称矩阵的谱分解
线性算子即是我们常说的线性变换,关于线性变换的定义与理论,可详见线性代数,本文只介绍与SVD有关的部分。
首先我们关注地更多是内积空间中的算子 (operator),在众多的算子,有一些算子性质优良,那么什么样的算子性质比较好?
首先为了处理的方便,我们常常会选择一组规范正交基,如此一来,我们通过一组选定的基,就可以建立相应维度的矩阵与线性算子的同构,而所谓的性质良好的算子ϕ\phiϕ,指的即是:
在内积空间中存在一组规范正交基u,使得该算子ϕ\phiϕ对应到一个对角矩阵Σ\SigmaΣ,即ϕ(uxu)=uΣxu\phi(ux_u) = u \Sigma x_uϕ(uxu)=uΣxu。
由此我们引出线性代数中一个很好的定理:
实谱定理:在实数域R中,具有上述性质的算子的充要条件为:<ϕ(v),w>=<v,ϕ(w)><\phi(v),w> = <v,\phi(w)><ϕ(v),w>=<v,ϕ(w)>,满足该条件的算子称为自伴算子。
注:本文所述定理的证明,可以参考《liner Algebra done right》
至此为止,我们就可以从算子理论的角度来解释为何实对称矩阵一定可以对角化。 若A是对称矩阵,则我们在内积空间中随意选择规范正交基vvv,则A唯一对应到一个线性算子,记之为ϕ\phiϕ。可以证明算子ϕ\phiϕ是自伴算子,由此根据算子的实谱定理,我们能够找到由该算子的特征向量构成的规范正交基,记之为vvv,使得自伴算子ϕ\phiϕ在该基uuu下,其对应矩阵是对角阵,记之为Σ\SigmaΣ。从而对于一个内积空间中的元素xxx,记其在基uuu下的坐标为xux_uxu,在基vvv下的坐标为xvx_vxv,从而有x的两个表示:
uxu=vxvu x_u = v x_vuxu=vxv即从基uuu到基vvv的转换矩阵为UUU,易知UUU是一个正交矩阵,从而有
u=vUu = v Uu=vU