奇异值分解
埃卡特-杨定理
假设你必须把一个复杂矩阵 A 换成一个秩至多为 k 的简单矩阵——更少的因子、更少的存储、更少的噪声。秩为 k 的矩阵有无穷多个可选,哪一个离 A 最近?埃卡特-杨定理给出一个惊人简洁的答案:直接截断 SVD。保留前 k 个奇异三元组,其余全部丢弃,你不可能做得更好。
严格地说,把 SVD 写成秩一片段之和,A = sum_{i=1}^{r} sigma_i u_i v_i^T。令 A_k = sum_{i=1}^{k} sigma_i u_i v_i^T 为截断到前 k 项的结果。定理断言:在所有秩至多为 k 的矩阵 B 中,A_k 使 ||A - B|| 最小,且这在谱(算子 2-)范数与弗罗贝尼乌斯范数下同时成立。(弗罗贝尼乌斯的情形有时归功于 Mirsky,他将其推广到所有酉不变范数。)
残余误差也能直接从奇异值读出:在谱范数下 ||A - A_k|| = sigma_{k+1},即你丢弃的第一个奇异值;在弗罗贝尼乌斯范数下 ||A - A_k||_F = sqrt(sigma_{k+1}^2 + ... + sigma_r^2),即你丢掉的一切的能量。因此若奇异值衰减得快,一个很小的 k 就能捕获 A 的几乎全部。
直观上,奇异三元组按重要性排序:第一个捕获最多的方差/能量,第二个捕获剩余中最多的,依此类推。截断保留最响亮的信号、丢弃微弱的尾巴——这正是压缩与去噪所求。这是那种少有的定理之一:最优答案恰好也是最显然的答案。
min over rank(B) <= k of ||A - B|| is attained at A_k = sum_{i=1}^k sigma_i u_i v_i^T, error = sigma_{k+1}
最佳的秩 k 逼近就是截断的 SVD;误差等于第一个被丢弃的奇异值。
只要 sigma_k > sigma_{k+1},最优解就是唯一的。若这两个奇异值相等,你就是在平局处下刀,最佳的秩 k 逼近不再唯一。
又称
另见