0 TL; DR
求在最小化意义下的最优解,先对合并矩阵做奇异值分解
其中是阶方阵,是阶方阵,则
[~,~,V] = svd([X Y]);
A_tls = -V(1:n,n+1:end)/V(n+1:end,n+1:end);
1 问题描述
给定一组数据,描述这组数据的线性模型可以写成,的行数要大于的秩,或者说方程数要大于未知数个数,最小二乘只考虑最小化输出的误差
上面的式子一般会写成大家熟悉的形式,解就是大家喜闻乐见的
现在考虑也有相当的误差,问题变成
其中是的Frobenius范数
约束条件可以改写成
2 奇异值分解
的奇异值分解为
是正交矩阵,,,对于秩为的矩阵,最多只有个不为零的对角元素,因此可以写成
在这里引入Eckart-Young定理,是
的最优解,即是的最优rank-k近似
3 以SVD求解TLS问题
对做奇异值分解
其中是阶方阵,是阶方阵,是矩阵,是矩阵,留意到只有行,这是因为最多只有个不为零的奇异值,行后面的可以省略。现在定义是的rank-k近似
对比可得
即得
Reference
[1] https://people.duke.edu/~hpgavin/SystemID/CourseNotes/TotalLeastSquares.pdf