矩阵分解与应用
奇异值分解(SVD)
奇异值分解把任意矩阵 A(无论是否方阵,甚至高瘦或矮宽的矩阵)写成 A = U*S*V^T。其中 U 和 V 是正交矩阵(即旋转或反射),S 是对角矩阵,存放从大到小排列的非负奇异值。它是整个线性代数中最一般、也可以说最重要的分解。
从几何上看它讲了一个很美的故事:任何线性映射,无论看上去多么纠缠,其实都是三个简单步骤的伪装。先旋转(V^T),再沿每个坐标轴按对应的奇异值拉伸(S),然后再旋转一次(U)。奇异值衡量该映射沿各个主方向把空间拉伸了多少。
正因为它对每个矩阵都适用,又揭示出这种干净的结构,SVD 成为许多应用的基石:它支撑着低秩近似与图像压缩、主成分分析、条件数,以及稳健求解最小二乘问题的方法。如果只深入学一种分解,那就学它。
A = U*S*V^T (rotate by V^T, stretch by the singular values in S, rotate by U)
每个线性映射都是:旋转、沿坐标轴拉伸、再旋转。
与特征分解不同,SVD 对每个矩阵都存在,包括矩形矩阵。
又称
另见